From 153e7dba912ffc89cfa42a7f8eedcf2eeb99a44f Mon Sep 17 00:00:00 2001 From: svenhoefer Date: Mon, 29 Dec 2014 21:09:24 +0100 Subject: [PATCH] - screensaver: add GUI option to change timeout --- data/locale/deutsch.locale | 2 ++ data/locale/english.locale | 2 ++ src/gui/osd_setup.cpp | 6 ++++++ src/gui/screensaver.cpp | 2 +- src/neutrino.cpp | 2 ++ src/system/locals.h | 2 ++ src/system/locals_intern.h | 2 ++ src/system/settings.h | 1 + 8 files changed, 18 insertions(+), 1 deletion(-) diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index e972592df..3edfe1959 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -1287,6 +1287,7 @@ menu.hint_scan_useusals Verwenden Sie USALS für diesen Satelliten,\nwenn aktiv, menu.hint_scrambled_message Bei aktivierter Option erscheint eine Meldung, wenn ein verschlüsselter Sender nicht entschlüsselt werden kann menu.hint_screen_setup Konfigurieren Sie den Bildschirmbereich für die Menüanzeige menu.hint_screensaver_dir Wählen Sie das Verzeichnis, in dem die Bilder für Ihren Bildschirmschoner gespeichert sind +menu.hint_screensaver_timeout Wählen Sie Die Wartezeit bis zum Bilderwechsel des Bildschirmschoners menu.hint_screenshot_count Wählen Sie, wie viele Screenshots erstellt werden sollen menu.hint_screenshot_cover Während der Wiedergabe von Aufnahmen kann ein Screenshot für die Vorschau im Moviebrowser erstellt werden menu.hint_screenshot_dir Wählen Sie das Verzeichnis zum Speichern der Screenshots @@ -2053,6 +2054,7 @@ scants.test Empfangstest scants.transponders Transponder: scrambled_channel Verschlüsselung aktiv screensaver.dir Bildschirmschoner-Verzeichnis +screensaver.timeout Bildschirmschoner-Wartezeit screensetup.lowerright grün = Bildrand unten, rechts screensetup.upperleft rot = Bildrand oben, links screenshot.count Anzahl diff --git a/data/locale/english.locale b/data/locale/english.locale index abfc22819..6185fb62d 100644 --- a/data/locale/english.locale +++ b/data/locale/english.locale @@ -1291,6 +1291,7 @@ menu.hint_scan_useusals Use USALS for this satellite,\nif ON, rotor position ign menu.hint_scrambled_message Show scrambled message, when channel cannot be decoded menu.hint_screen_setup Configure screen margins menu.hint_screensaver_dir Select directory in which the screensaver has to start. +menu.hint_screensaver_timeout Select the timeout to change pictures in screensavers menu.hint_screenshot_count When no GUI on screen, you can save 1-5\nscreenshot serie menu.hint_screenshot_cover ON: When playing record, overwrite single\nscreenshot to show inside MovieBrowser menu.hint_screenshot_dir Select directory to save screenshots @@ -2058,6 +2059,7 @@ scants.test Test signal scants.transponders Transponders: scrambled_channel Scrambled channel screensaver.dir Screensaver directory +screensaver.timeout Screensaver timeout screensetup.lowerright green = setup lower right screensetup.upperleft red = setup upper left screenshot.count Count diff --git a/src/gui/osd_setup.cpp b/src/gui/osd_setup.cpp index a49c46f2b..76bede0e2 100644 --- a/src/gui/osd_setup.cpp +++ b/src/gui/osd_setup.cpp @@ -619,6 +619,12 @@ int COsdSetup::showOsdSetup() mf->setHint("", LOCALE_MENU_HINT_SCREENSAVER_DIR); osd_menu->addItem(mf); + // screensaver timeout + CMenuOptionNumberChooser* nc = new CMenuOptionNumberChooser(LOCALE_SCREENSAVER_TIMEOUT, &g_settings.screensaver_timeout, true, 10, 60); + nc->setNumberFormat(std::string("%d ") + g_Locale->getText(LOCALE_UNIT_SHORT_SECOND)); + nc->setHint("", LOCALE_MENU_HINT_SCREENSAVER_TIMEOUT); + osd_menu->addItem(nc); + int oldVolumeSize = g_settings.volume_size; int oldInfoClockSize = g_settings.infoClockFontSize; diff --git a/src/gui/screensaver.cpp b/src/gui/screensaver.cpp index 46ff63f1e..ddc51feb7 100644 --- a/src/gui/screensaver.cpp +++ b/src/gui/screensaver.cpp @@ -123,7 +123,7 @@ void* CScreenSaver::ScreenSaverPrg(void* arg) while(1) { PScreenSaver->PaintPicture(); - sleep(10); + sleep(g_settings.screensaver_timeout); } return 0; } diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 1040eb66f..c81abeb92 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -498,6 +498,7 @@ int CNeutrinoApp::loadSetup(const char * fname) //screen saver g_settings.screensaver_dir = configfile.getString("screensaver_dir", DATADIR "/neutrino/icons/"); + g_settings.screensaver_timeout = configfile.getInt32("screensaver_timeout", 10); //vcr g_settings.vcr_AutoSwitch = configfile.getBool("vcr_AutoSwitch" , true ); @@ -1025,6 +1026,7 @@ void CNeutrinoApp::saveSetup(const char * fname) //screen saver configfile.setString("screensaver_dir", g_settings.screensaver_dir); + configfile.setInt32("screensaver_timeout", g_settings.screensaver_timeout); //vcr configfile.setBool("vcr_AutoSwitch" , g_settings.vcr_AutoSwitch ); diff --git a/src/system/locals.h b/src/system/locals.h index 336cefa5b..bf4383761 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -1318,6 +1318,7 @@ typedef enum LOCALE_MENU_HINT_SCRAMBLED_MESSAGE, LOCALE_MENU_HINT_SCREEN_SETUP, LOCALE_MENU_HINT_SCREENSAVER_DIR, + LOCALE_MENU_HINT_SCREENSAVER_TIMEOUT, LOCALE_MENU_HINT_SCREENSHOT_COUNT, LOCALE_MENU_HINT_SCREENSHOT_COVER, LOCALE_MENU_HINT_SCREENSHOT_DIR, @@ -2085,6 +2086,7 @@ typedef enum LOCALE_SCANTS_TRANSPONDERS, LOCALE_SCRAMBLED_CHANNEL, LOCALE_SCREENSAVER_DIR, + LOCALE_SCREENSAVER_TIMEOUT, LOCALE_SCREENSETUP_LOWERRIGHT, LOCALE_SCREENSETUP_UPPERLEFT, LOCALE_SCREENSHOT_COUNT, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index 916fd5811..1e0179675 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -1318,6 +1318,7 @@ const char * locale_real_names[] = "menu.hint_scrambled_message", "menu.hint_screen_setup", "menu.hint_screensaver_dir", + "menu.hint_screensaver_timeout", "menu.hint_screenshot_count", "menu.hint_screenshot_cover", "menu.hint_screenshot_dir", @@ -2085,6 +2086,7 @@ const char * locale_real_names[] = "scants.transponders", "scrambled_channel", "screensaver.dir", + "screensaver.timeout", "screensetup.lowerright", "screensetup.upperleft", "screenshot.count", diff --git a/src/system/settings.h b/src/system/settings.h index 5ce10bd09..7a9a9c65c 100644 --- a/src/system/settings.h +++ b/src/system/settings.h @@ -208,6 +208,7 @@ struct SNeutrinoSettings //screen saver std::string screensaver_dir; + int screensaver_timeout; //vcr int vcr_AutoSwitch;