diff options
11 files changed, 388 insertions, 23 deletions
diff --git a/src-qt5/core-utils/lumina-config/globals.h b/src-qt5/core-utils/lumina-config/globals.h index b7468970..c96aaaa3 100644 --- a/src-qt5/core-utils/lumina-config/globals.h +++ b/src-qt5/core-utils/lumina-config/globals.h @@ -21,6 +21,7 @@ #include <QColorDialog> #include <QMessageBox> #include <QShortcut> +#include <QImageReader> //Now the Lumina Library classes #include <LuminaXDG.h> diff --git a/src-qt5/core-utils/lumina-config/main.cpp b/src-qt5/core-utils/lumina-config/main.cpp index a63e0fbe..8056a083 100644 --- a/src-qt5/core-utils/lumina-config/main.cpp +++ b/src-qt5/core-utils/lumina-config/main.cpp @@ -19,8 +19,7 @@ int main(int argc, char ** argv) LuminaThemeEngine theme(&a); - MainUI w; - //mainWindow w; + mainWindow w; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); QObject::connect(&theme, SIGNAL(updateIcons()), &w, SLOT(setupIcons()) ); w.show(); diff --git a/src-qt5/core-utils/lumina-config/pages/getPage.h b/src-qt5/core-utils/lumina-config/pages/getPage.h index 90358edf..b38e614f 100644 --- a/src-qt5/core-utils/lumina-config/pages/getPage.h +++ b/src-qt5/core-utils/lumina-config/pages/getPage.h @@ -23,7 +23,7 @@ static PAGEINFO PageInfo(QString ID, QString i_name, QString i_title, QString i_ //List all the known pages // **** Add new page entries here **** static QList<PAGEINFO> KnownPages(){ - // Valid Groups: ["appearance", "interface", "session", "apps"] + // Valid Groups: ["appearance", "interface", "session", "user"] QList<PAGEINFO> list; //Reminder: <ID>, <name>, <title>, <icon>, <comment>, <category>, <server subsytem list>, <search tags> list << PageInfo("wallpaper", QObject::tr("Change Wallpaper"), QObject::tr("Wallpaper Settings"), "preferences-desktop-wallpaper",QObject::tr("Change background image(s)"), "appearance", QStringList(), QStringList() << "background" << "wallpaper" << "color" << "image"); @@ -35,6 +35,8 @@ static QList<PAGEINFO> KnownPages(){ list << PageInfo("interface-desktop", QObject::tr("Desktop Icons and Plugins"), QObject::tr("Desktop Plugins"), "preferences-desktop-icons",QObject::tr("Change what icons or tools are embedded on the desktop"), "interface", QStringList(), QStringList() << "desktop" << "plugins" << "embed" << "icons" << "utilities"); list << PageInfo("interface-panel", QObject::tr("Floating Panels and Plugins"), QObject::tr("Panels and Plugins"), "configure-toolbars",QObject::tr("Change any floating panels and what they show"), "interface", QStringList(), QStringList() << "desktop" << "toolbar" << "panel" << "floating" << "plugins"); list << PageInfo("interface-menu", QObject::tr("Context Menu and Plugins"), QObject::tr("Menu Plugins"), "preferences-plugin",QObject::tr("Change what options are shown on the desktop context menu"), "interface", QStringList(), QStringList() << "desktop" << "menu" << "plugins" << "shortcuts"); + list << PageInfo("session-locale", QObject::tr("Localization Options"), QObject::tr("Locale Settings"), "preferences-desktop-locale",QObject::tr("Change the default locale settings for this user"), "user", QStringList(), QStringList() << "user"<<"locale"<<"language"<<"translations"); + list << PageInfo("session-options", QObject::tr("General Options"), QObject::tr("User Settings"), "configure",QObject::tr("Change basic user settings such as time/date formats"), "user", QStringList(), QStringList() << "user"<<"settings"<<"time"<<"date"<<"icon"<<"reset"<<"numlock"<<"clock"); return list; } @@ -49,6 +51,8 @@ static QList<PAGEINFO> KnownPages(){ #include "page_interface_desktop.h" #include "page_interface_panels.h" #include "page_interface_menu.h" +#include "page_session_locale.h" +#include "page_session_options.h" static PageWidget* GetNewPage(QString id, QWidget *parent){ //Find the page that matches this "id" @@ -61,6 +65,8 @@ static PageWidget* GetNewPage(QString id, QWidget *parent){ else if(id=="interface-desktop"){ return new page_interface_desktop(parent); } else if(id=="interface-panel"){ return new page_interface_panels(parent); } else if(id=="interface-menu"){ return new page_interface_menu(parent); } + else if(id=="session-locale"){ return new page_session_locale(parent); } + else if(id=="session-options"){ return new page_session_options(parent); } //Return the main control_panel page as the fallback/default return new page_main(parent); } diff --git a/src-qt5/core-utils/lumina-config/pages/page_main.cpp b/src-qt5/core-utils/lumina-config/pages/page_main.cpp index f8168e0b..ec03f8a5 100644 --- a/src-qt5/core-utils/lumina-config/pages/page_main.cpp +++ b/src-qt5/core-utils/lumina-config/pages/page_main.cpp @@ -35,9 +35,9 @@ void page_main::UpdateItems(QString search){ QTreeWidgetItem *session = new QTreeWidgetItem(); session->setIcon(0, LXDG::findIcon("preferences-system-session-services","")); session->setText(0, tr("Desktop Session Options")); - QTreeWidgetItem *apps = new QTreeWidgetItem(); - apps->setIcon(0, LXDG::findIcon("preferences-desktop-filetype-association","")); - apps->setText(0, tr("Application Settings")); + QTreeWidgetItem *user = new QTreeWidgetItem(); + user->setIcon(0, LXDG::findIcon("preferences-desktop-user","")); + user->setText(0, tr("User Settings")); //Now go through and add in the known pages for each category QStringList SL = search.split(" "); //search list for(int i=0; i<INFO.length(); i++){ @@ -51,7 +51,7 @@ void page_main::UpdateItems(QString search){ } if(!ok){ continue; } //no duplicates between search terms and available info } - qDebug() << "Item Found:" << INFO[i].id << INFO[i].title; + //qDebug() << "Item Found:" << INFO[i].id << INFO[i].title; QTreeWidgetItem *it = new QTreeWidgetItem(); it->setIcon(0, LXDG::findIcon(INFO[i].icon,"") ); it->setText(0, INFO[i].name); @@ -61,14 +61,14 @@ void page_main::UpdateItems(QString search){ if(INFO[i].category=="interface"){ interface->addChild(it); } else if(INFO[i].category=="appearance"){ appearance->addChild(it); } else if(INFO[i].category=="session"){ session->addChild(it); } - else if(INFO[i].category=="apps"){ apps->addChild(it); } + else if(INFO[i].category=="user"){ user->addChild(it); } else{ ui->treeWidget->addTopLevelItem(it); } } //Now add the categories to the tree widget if they are non-empty if(interface->childCount()>0){ ui->treeWidget->addTopLevelItem(interface); interface->setExpanded(true); } if(appearance->childCount()>0){ ui->treeWidget->addTopLevelItem(appearance); appearance->setExpanded(true); } if(session->childCount()>0){ ui->treeWidget->addTopLevelItem(session); session->setExpanded(true); } - if(apps->childCount()>0){ ui->treeWidget->addTopLevelItem(apps); apps->setExpanded(true); } + if(user->childCount()>0){ ui->treeWidget->addTopLevelItem(user); user->setExpanded(true); } } //================ diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_locale.cpp b/src-qt5/core-utils/lumina-config/pages/page_session_locale.cpp new file mode 100644 index 00000000..ad5aa7f7 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_session_locale.cpp @@ -0,0 +1,113 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "page_session_locale.h" +#include "ui_page_session_locale.h" +#include "getPage.h" + +//========== +// PUBLIC +//========== +page_session_locale::page_session_locale(QWidget *parent) : PageWidget(parent), ui(new Ui::page_session_locale()){ + ui->setupUi(this); + setupLocales(); + connect(ui->combo_locale_lang, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_collate, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_ctype, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_message, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_monetary, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_numeric, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + connect(ui->combo_locale_time, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + updateIcons(); +} + +page_session_locale::~page_session_locale(){ + +} + +//================ +// PUBLIC SLOTS +//================ +void page_session_locale::SaveSettings(){ + QSettings sessionsettings("lumina-desktop","sessionsettings"); + sessionsettings.setValue("InitLocale/LANG", ui->combo_locale_lang->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_MESSAGES", ui->combo_locale_message->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_TIME", ui->combo_locale_time->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_NUMERIC", ui->combo_locale_numeric->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_MONETARY", ui->combo_locale_monetary->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_COLLATE", ui->combo_locale_collate->currentData().toString() ); + sessionsettings.setValue("InitLocale/LC_CTYPE", ui->combo_locale_ctype->currentData().toString() ); + emit HasPendingChanges(false); +} + +void page_session_locale::LoadSettings(int){ + emit HasPendingChanges(false); + emit ChangePageTitle( tr("Desktop Settings") ); + QSettings sessionsettings("lumina-desktop","sessionsettings"); + + QString val = sessionsettings.value("InitLocale/LANG", "").toString(); + int index = ui->combo_locale_lang->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_lang->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/LC_MESSAGES", "").toString(); + index = ui->combo_locale_message->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_message->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/LC_TIME", "").toString(); + index = ui->combo_locale_time->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_time->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/NUMERIC", "").toString(); + index = ui->combo_locale_numeric->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_numeric->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/MONETARY", "").toString(); + index = ui->combo_locale_monetary->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_monetary->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/COLLATE", "").toString(); + index = ui->combo_locale_collate->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_collate->setCurrentIndex(index); + val = sessionsettings.value("InitLocale/CTYPE", "").toString(); + index = ui->combo_locale_ctype->findData(val); + if(index<0){ index = 0; } //system default + ui->combo_locale_ctype->setCurrentIndex(index); +} + +void page_session_locale::updateIcons(){ + +} + +//================= +// PRIVATE +//================= +void page_session_locale::setupLocales(){ +//Available localizations + QStringList langs = LUtils::knownLocales(); + langs.sort(); + QString def = tr("System Default"); + ui->combo_locale_lang->addItem(def,""); + ui->combo_locale_collate->addItem(def,""); + ui->combo_locale_ctype->addItem(def,""); + ui->combo_locale_message->addItem(def,""); + ui->combo_locale_monetary->addItem(def,""); + ui->combo_locale_numeric->addItem(def,""); + ui->combo_locale_time->addItem(def,""); + for(int i=0; i<langs.length(); i++){ + QString lan = QLocale(langs[i]).nativeLanguageName(); + ui->combo_locale_lang->addItem(lan,langs[i]); + ui->combo_locale_collate->addItem(lan,langs[i]); + ui->combo_locale_ctype->addItem(lan,langs[i]); + ui->combo_locale_message->addItem(lan,langs[i]); + ui->combo_locale_monetary->addItem(lan,langs[i]); + ui->combo_locale_numeric->addItem(lan,langs[i]); + ui->combo_locale_time->addItem(lan,langs[i]); + } +} +//================= +// PRIVATE SLOTS +//================= diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_locale.h b/src-qt5/core-utils/lumina-config/pages/page_session_locale.h new file mode 100644 index 00000000..57b06081 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_session_locale.h @@ -0,0 +1,35 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_CONFIG_PAGE_SESSION_LOCALE_H +#define _LUMINA_CONFIG_PAGE_SESSION_LOCALE_H +#include "../globals.h" +#include "PageWidget.h" + +namespace Ui{ + class page_session_locale; +}; + +class page_session_locale : public PageWidget{ + Q_OBJECT +public: + page_session_locale(QWidget *parent); + ~page_session_locale(); + +public slots: + void SaveSettings(); + void LoadSettings(int screennum); + void updateIcons(); + +private: + Ui::page_session_locale *ui; + + void setupLocales(); + +private slots: + +}; +#endif diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_locale.ui b/src-qt5/core-utils/lumina-config/pages/page_session_locale.ui index 90cd4ca1..d514e5f2 100644 --- a/src-qt5/core-utils/lumina-config/pages/page_session_locale.ui +++ b/src-qt5/core-utils/lumina-config/pages/page_session_locale.ui @@ -15,16 +15,16 @@ </property> <layout class="QFormLayout" name="formLayout"> <property name="leftMargin"> - <number>0</number> + <number>6</number> </property> <property name="topMargin"> - <number>0</number> + <number>6</number> </property> <property name="rightMargin"> - <number>0</number> + <number>6</number> </property> <property name="bottomMargin"> - <number>0</number> + <number>6</number> </property> <item row="0" column="0" colspan="2"> <widget class="QLabel" name="label_30"> diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_options.cpp b/src-qt5/core-utils/lumina-config/pages/page_session_options.cpp new file mode 100644 index 00000000..4f678ab3 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_session_options.cpp @@ -0,0 +1,172 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "page_session_options.h" +#include "ui_page_session_options.h" +#include "getPage.h" + +//========== +// PUBLIC +//========== +page_session_options::page_session_options(QWidget *parent) : PageWidget(parent), ui(new Ui::page_session_options()){ + ui->setupUi(this); + + //Display formats for panel clock + ui->combo_session_datetimeorder->clear(); + ui->combo_session_datetimeorder->addItem( tr("Time (Date as tooltip)"), "timeonly"); + ui->combo_session_datetimeorder->addItem( tr("Date (Time as tooltip)"), "dateonly"); + ui->combo_session_datetimeorder->addItem( tr("Time first then Date"), "timedate"); + ui->combo_session_datetimeorder->addItem( tr("Date first then Time"), "datetime"); + + connect(ui->push_session_setUserIcon, SIGNAL(clicked()), this, SLOT(sessionChangeUserIcon()) ); + connect(ui->push_session_resetSysDefaults, SIGNAL(clicked()), this, SLOT(sessionResetSys()) ); + connect(ui->push_session_resetLuminaDefaults, SIGNAL(clicked()), this, SLOT(sessionResetLumina()) ); + connect(ui->tool_help_time, SIGNAL(clicked()), this, SLOT(sessionShowTimeCodes()) ); + connect(ui->tool_help_date, SIGNAL(clicked()), this, SLOT(sessionShowDateCodes()) ); + connect(ui->line_session_time, SIGNAL(textChanged(QString)), this, SLOT(sessionLoadTimeSample()) ); + connect(ui->line_session_date, SIGNAL(textChanged(QString)), this, SLOT(sessionLoadDateSample()) ); + connect(ui->combo_session_datetimeorder, SIGNAL(currentIndexChanged(int)), this, SLOT(settingChanged()) ); + updateIcons(); + +} + +page_session_options::~page_session_options(){ + +} + +//================ +// PUBLIC SLOTS +//================ +void page_session_options::SaveSettings(){ + QSettings sessionsettings("lumina-desktop","sessionsettings"); + sessionsettings.setValue("EnableNumlock", ui->check_session_numlock->isChecked()); + sessionsettings.setValue("PlayStartupAudio", ui->check_session_playloginaudio->isChecked()); + sessionsettings.setValue("PlayLogoutAudio", ui->check_session_playlogoutaudio->isChecked()); + sessionsettings.setValue("TimeFormat", ui->line_session_time->text()); + sessionsettings.setValue("DateFormat", ui->line_session_date->text()); + sessionsettings.setValue("DateTimeOrder", ui->combo_session_datetimeorder->currentData().toString()); + emit HasPendingChanges(false); +} + +void page_session_options::LoadSettings(int){ + emit HasPendingChanges(false); + emit ChangePageTitle( tr("Desktop Settings") ); + QSettings sessionsettings("lumina-desktop","sessionsettings"); + ui->check_session_numlock->setChecked( sessionsettings.value("EnableNumlock", true).toBool() ); + ui->check_session_playloginaudio->setChecked( sessionsettings.value("PlayStartupAudio",true).toBool() ); + ui->check_session_playlogoutaudio->setChecked( sessionsettings.value("PlayLogoutAudio",true).toBool() ); + ui->push_session_setUserIcon->setIcon( LXDG::findIcon(QDir::homePath()+"/.loginIcon.png", "user-identity") ); + ui->line_session_time->setText( sessionsettings.value("TimeFormat","").toString() ); + ui->line_session_date->setText( sessionsettings.value("DateFormat","").toString() ); + int index = ui->combo_session_datetimeorder->findData( sessionsettings.value("DateTimeOrder","timeonly").toString() ); + ui->combo_session_datetimeorder->setCurrentIndex(index); + + sessionLoadTimeSample(); + sessionLoadDateSample(); +} + +void page_session_options::updateIcons(){ + ui->push_session_resetSysDefaults->setIcon( LXDG::findIcon("start-here-lumina","view-refresh") ); + ui->push_session_resetLuminaDefaults->setIcon( LXDG::findIcon("Lumina-DE","") ); + ui->tool_help_time->setIcon( LXDG::findIcon("help-about","") ); + ui->tool_help_date->setIcon( LXDG::findIcon("help-about","") ); +} + +//================= +// PRIVATE +//================= + +//================= +// PRIVATE SLOTS +//================= +void page_session_options::sessionChangeUserIcon(){ + //Prompt for a new image file + QStringList imgformats; + QList<QByteArray> fmts = QImageReader::supportedImageFormats(); + for(int i=0; i<fmts.length(); i++){ + imgformats << "*."+QString(fmts[i]); + } + QString filepath = QFileDialog::getOpenFileName(this, tr("Select an image"), QDir::homePath(), \ + tr("Images")+" ("+imgformats.join(" ")+")"); + if(filepath.isEmpty()){ + //User cancelled the operation + if(QFile::exists(QDir::homePath()+"/.loginIcon.png")){ + if(QMessageBox::Yes == QMessageBox::question(this,tr("Reset User Image"), tr("Would you like to reset the user image to the system default?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No) ){ + //QFile::remove(QDir::homePath()+"/.loginIcon.png"); + ui->push_session_setUserIcon->setWhatsThis("reset"); + }else{ + return; + } + } + }else{ + ui->push_session_setUserIcon->setWhatsThis(filepath); + } + //Now re-load the icon in the UI + QString path = ui->push_session_setUserIcon->whatsThis(); + if(path.isEmpty()){ path = QDir::homePath()+"/.loginIcon.png"; } + if(path=="reset"){ path.clear(); } + ui->push_session_setUserIcon->setIcon( LXDG::findIcon(path, "user-identity") ); + settingChanged(); +} + +void page_session_options::sessionResetSys(){ + LUtils::LoadSystemDefaults(); + QTimer::singleShot(500,this, SLOT(LoadSettings()) ); +} + +void page_session_options::sessionResetLumina(){ + LUtils::LoadSystemDefaults(true); //skip OS customizations + QTimer::singleShot(500,this, SLOT(LoadSettings()) ); +} + +void page_session_options::sessionLoadTimeSample(){ + if(ui->line_session_time->text().simplified().isEmpty()){ + ui->label_session_timesample->setText( QTime::currentTime().toString(Qt::DefaultLocaleShortDate) ); + }else{ + ui->label_session_timesample->setText( QTime::currentTime().toString( ui->line_session_time->text() ) ); + } + settingChanged(); +} + +void page_session_options::sessionShowTimeCodes(){ + QStringList msg; + msg << tr("Valid Time Codes:") << "\n"; + msg << QString(tr("%1: Hour without leading zero (1)")).arg("h"); + msg << QString(tr("%1: Hour with leading zero (01)")).arg("hh"); + msg << QString(tr("%1: Minutes without leading zero (2)")).arg("m"); + msg << QString(tr("%1: Minutes with leading zero (02)")).arg("mm"); + msg << QString(tr("%1: Seconds without leading zero (3)")).arg("s"); + msg << QString(tr("%1: Seconds with leading zero (03)")).arg("ss"); + msg << QString(tr("%1: AM/PM (12-hour) clock (upper or lower case)")).arg("A or a"); + msg << QString(tr("%1: Timezone")).arg("t"); + QMessageBox::information(this, tr("Time Codes"), msg.join("\n") ); +} + +void page_session_options::sessionLoadDateSample(){ + if(ui->line_session_date->text().simplified().isEmpty()){ + ui->label_session_datesample->setText( QDate::currentDate().toString(Qt::DefaultLocaleShortDate) ); + }else{ + ui->label_session_datesample->setText( QDate::currentDate().toString( ui->line_session_date->text() ) ); + } + settingChanged(); +} + +void page_session_options::sessionShowDateCodes(){ + QStringList msg; + msg << tr("Valid Date Codes:") << "\n"; + msg << QString(tr("%1: Numeric day without a leading zero (1)")).arg("d"); + msg << QString(tr("%1: Numeric day with leading zero (01)")).arg("dd"); + msg << QString(tr("%1: Day as abbreviation (localized)")).arg("ddd"); + msg << QString(tr("%1: Day as full name (localized)")).arg("dddd"); + msg << QString(tr("%1: Numeric month without leading zero (2)")).arg("M"); + msg << QString(tr("%1: Numeric month with leading zero (02)")).arg("MM"); + msg << QString(tr("%1: Month as abbreviation (localized)")).arg("MMM"); + msg << QString(tr("%1: Month as full name (localized)")).arg("MMMM"); + msg << QString(tr("%1: Year as 2-digit number (15)")).arg("yy"); + msg << QString(tr("%1: Year as 4-digit number (2015)")).arg("yyyy"); + msg << tr("Text may be contained within single-quotes to ignore replacements"); + QMessageBox::information(this, tr("Date Codes"), msg.join("\n") ); +} diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_options.h b/src-qt5/core-utils/lumina-config/pages/page_session_options.h new file mode 100644 index 00000000..bd293972 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_session_options.h @@ -0,0 +1,39 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_CONFIG_PAGE_SESSION_OPTIONS_H +#define _LUMINA_CONFIG_PAGE_SESSION_OPTIONS_H +#include "../globals.h" +#include "PageWidget.h" + +namespace Ui{ + class page_session_options; +}; + +class page_session_options : public PageWidget{ + Q_OBJECT +public: + page_session_options(QWidget *parent); + ~page_session_options(); + +public slots: + void SaveSettings(); + void LoadSettings(int screennum = -1); + void updateIcons(); + +private: + Ui::page_session_options *ui; + +private slots: + void sessionChangeUserIcon(); + void sessionResetSys(); + void sessionResetLumina(); + void sessionLoadTimeSample(); + void sessionShowTimeCodes(); + void sessionLoadDateSample(); + void sessionShowDateCodes(); +}; +#endif diff --git a/src-qt5/core-utils/lumina-config/pages/page_session_options.ui b/src-qt5/core-utils/lumina-config/pages/page_session_options.ui index 03453d6d..b0e5fb91 100644 --- a/src-qt5/core-utils/lumina-config/pages/page_session_options.ui +++ b/src-qt5/core-utils/lumina-config/pages/page_session_options.ui @@ -15,16 +15,16 @@ </property> <layout class="QGridLayout" name="gridLayout"> <property name="leftMargin"> - <number>0</number> + <number>6</number> </property> <property name="topMargin"> - <number>0</number> + <number>6</number> </property> <property name="rightMargin"> - <number>0</number> + <number>6</number> </property> <property name="bottomMargin"> - <number>0</number> + <number>6</number> </property> <item row="0" column="0"> <layout class="QVBoxLayout" name="verticalLayout_4"> diff --git a/src-qt5/core-utils/lumina-config/pages/pages.pri b/src-qt5/core-utils/lumina-config/pages/pages.pri index ab97e07d..5e4ffca9 100644 --- a/src-qt5/core-utils/lumina-config/pages/pages.pri +++ b/src-qt5/core-utils/lumina-config/pages/pages.pri @@ -10,9 +10,9 @@ HEADERS += $${PWD}/getPage.h \ $${PWD}/page_fluxbox_settings.h \ $${PWD}/page_interface_desktop.h \ $${PWD}/page_interface_menu.h \ - $${PWD}/page_interface_panels.h -# $${PWD}/page_session_locale.h \ -# $${PWD}/page_session_options.h \ + $${PWD}/page_interface_panels.h \ + $${PWD}/page_session_locale.h \ + $${PWD}/page_session_options.h SOURCES += $${PWD}/page_main.cpp \ @@ -24,9 +24,9 @@ SOURCES += $${PWD}/page_main.cpp \ $${PWD}/page_fluxbox_settings.cpp \ $${PWD}/page_interface_desktop.cpp \ $${PWD}/page_interface_menu.cpp \ - $${PWD}/page_interface_panels.cpp -# $${PWD}/page_session_locale.cpp \ -# $${PWD}/page_session_options.cpp \ + $${PWD}/page_interface_panels.cpp \ + $${PWD}/page_session_locale.cpp \ + $${PWD}/page_session_options.cpp FORMS += $${PWD}/page_main.ui \ |