diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index d9a9dba7d..815a38dc8 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -698,7 +698,7 @@ mainsettings.keybinding Tasten mainsettings.language Sprache mainsettings.lcd VFD-Display mainsettings.manage Einstellungen verwalten -mainsettings.misc Diverse Einstellungen +mainsettings.misc Erweiterte Einstellungen mainsettings.network Netzwerk mainsettings.osd OSD mainsettings.recording Aufnahme @@ -722,6 +722,7 @@ miscsettings.bootmenu Bootmenü anzeigen miscsettings.channellist Kanalliste miscsettings.channellist_epgtext_align Event-Text ausrichten miscsettings.driver_boot Treiber- und Bootoptionen +miscsettings.energy Energieverbrauch miscsettings.epg_cache EPG-Cache (Tage) miscsettings.epg_cache_hint1 EPG-Daten im Voraus zwischenspeichern? miscsettings.epg_cache_hint2 (Angabe in Tagen) @@ -729,7 +730,7 @@ miscsettings.epg_dir EPG Speicherverzeichnis miscsettings.epg_extendedcache Sendungsbeschr. behalten (Std.) miscsettings.epg_extendedcache_hint1 Dauer für die Zwischenspeicherung der miscsettings.epg_extendedcache_hint2 Sendungsbeschreibung (Angabe in Stunden) -miscsettings.epg_head EPG Einstellungen +miscsettings.epg_head EPG miscsettings.epg_max_events Max. Events miscsettings.epg_max_events_hint1 Wieviele Events sollen max. gespeichert werden? miscsettings.epg_max_events_hint2 Standard 6000, 0 (ohne Limit) @@ -739,7 +740,7 @@ miscsettings.epg_old_events_hint2 Angabe in Stunden miscsettings.epg_save EPG zwischenspeichern miscsettings.fb_destination EXPERT! Boot-Konsole miscsettings.general Allgemein -miscsettings.head Diverse Einstellungen +miscsettings.head Erweitert miscsettings.hwsections EPG Daten per Hardware filtern miscsettings.infobar Infobar miscsettings.infobar_casystem_display CA-System Anzeige diff --git a/data/locale/english.locale b/data/locale/english.locale index f3bedca92..1eb68cd59 100644 --- a/data/locale/english.locale +++ b/data/locale/english.locale @@ -698,7 +698,7 @@ mainsettings.keybinding Key Setup mainsettings.language Language / Timezone mainsettings.lcd VFD-Display mainsettings.manage Manage settings -mainsettings.misc Misc settings +mainsettings.misc Extended settings mainsettings.network Network mainsettings.osd OSD mainsettings.recording Recording @@ -722,6 +722,7 @@ miscsettings.bootmenu Show boot menu miscsettings.channellist Channellist miscsettings.channellist_epgtext_align Programtext Align miscsettings.driver_boot driver and boot options +miscsettings.energy Energy miscsettings.epg_cache EPG-Cache (Days) miscsettings.epg_cache_hint1 How long will EPG-Data in the future cached? miscsettings.epg_cache_hint2 Set in days. @@ -729,7 +730,7 @@ miscsettings.epg_dir EPG save path miscsettings.epg_extendedcache EPG Long Description (hours) miscsettings.epg_extendedcache_hint1 How long into the future will EPG extended descriptions miscsettings.epg_extendedcache_hint2 be Cached? (Set in hours) -miscsettings.epg_head Epg settings +miscsettings.epg_head Epg miscsettings.epg_max_events Max. Events miscsettings.epg_max_events_hint1 How many events should be stored? miscsettings.epg_max_events_hint2 normaly 6000, 0 to disable limit @@ -739,7 +740,7 @@ miscsettings.epg_old_events_hint2 Set in hours miscsettings.epg_save Save/Restore epg on reboot miscsettings.fb_destination Expert! Boot-Console miscsettings.general General -miscsettings.head Misc settings +miscsettings.head Extended settings miscsettings.hwsections use hardware sections miscsettings.infobar Infobar miscsettings.infobar_casystem_display CA-System Display diff --git a/src/gui/Makefile.am b/src/gui/Makefile.am index 73d11e05d..2c5e5d5d7 100644 --- a/src/gui/Makefile.am +++ b/src/gui/Makefile.am @@ -57,6 +57,7 @@ libneutrino_gui_a_SOURCES = \ keybind_setup.cpp \ mediaplayer.cpp \ mediaplayer_setup.cpp \ + miscsettings_menu.cpp \ moviebrowser.cpp \ movieinfo.cpp \ movieplayer.cpp \ diff --git a/src/gui/miscsettings_menu.cpp b/src/gui/miscsettings_menu.cpp new file mode 100644 index 000000000..7cd8179d6 --- /dev/null +++ b/src/gui/miscsettings_menu.cpp @@ -0,0 +1,353 @@ +/* + $port: miscsettings_menu.cpp,v 1.3 2010/12/05 22:32:12 tuxbox-cvs Exp $ + + miscsettings_menu implementation - Neutrino-GUI + + Copyright (C) 2010 T. Graf 'dbt' + Homepage: http://www.dbox2-tuning.net/ + + + License: GPL + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#ifdef HAVE_CONFIG_H +#include +#endif + +#include +#include +#include +#include + +#include "gui/miscsettings_menu.h" +#include "gui/cec_setup.h" +#include "gui/filebrowser.h" +#include "gui/keybind_setup.h" +#include "gui/plugins.h" +#include "gui/sleeptimer.h" + +#include +#include + +#include + +#include + +#include + +//#define ONE_KEY_PLUGIN + +extern CPlugins * g_PluginList; + +CMiscMenue::CMiscMenue() +{ + width = w_max (40, 10); + + selected = -1; +} + +CMiscMenue::~CMiscMenue() +{ + +} + + +int CMiscMenue::exec(CMenuTarget* parent, const std::string &actionKey) +{ + printf("init extended settings menu...\n"); + + if(parent != NULL) + parent->hide(); + + if(actionKey == "epgdir") + { + const char *action_str = "epg"; + if(chooserDir(g_settings.epg_dir, true, action_str)) + CNeutrinoApp::getInstance()->SendSectionsdConfig(); + + return menu_return::RETURN_REPAINT; + } + else if(actionKey == "plugin_dir") + { + const char *action_str = "plugin"; + if(chooserDir(g_settings.plugin_hdd_dir, false, action_str)) + g_PluginList->loadPlugins(); + + return menu_return::RETURN_REPAINT; + } + else if(actionKey == "logo_dir") + { + const char *action_str = "logo"; + chooserDir(g_settings.logo_hdd_dir, false, action_str); + + return menu_return::RETURN_REPAINT; + } +#ifdef ONE_KEY_PLUGIN + else if(actionKey == "onekeyplugin") + { + CMenuWidget MoviePluginSelector(LOCALE_EXTRA_KEY_PLUGIN, NEUTRINO_ICON_FEATURES); + MoviePluginSelector.addItem(GenericMenuSeparator); + + char id[5]; + int cnt = 0; + int enabled_count = 0; + for(unsigned int count=0;count < (unsigned int) g_PluginList->getNumberOfPlugins();count++) + { + if (g_PluginList->getType(count)== CPlugins::P_TYPE_TOOL && !g_PluginList->isHidden(count)) + { + // e.g. vtxt-plugins + sprintf(id, "%d", count); + enabled_count++; + MoviePluginSelector.addItem(new CMenuForwarderNonLocalized(g_PluginList->getName(count), true, NULL, new COnekeyPluginChangeExec(), id, CRCInput::convertDigitToKey(count)), (cnt == 0)); + cnt++; + } + } + + MoviePluginSelector.exec(NULL, ""); + return menu_return::RETURN_REPAINT; + } +#endif /*ONE_KEY_PLUGIN*/ + + showMiscSettingsMenu(); + + return menu_return::RETURN_REPAINT; +} + + +#define MISCSETTINGS_FB_DESTINATION_OPTION_COUNT 3 +const CMenuOptionChooser::keyval MISCSETTINGS_FB_DESTINATION_OPTIONS[MISCSETTINGS_FB_DESTINATION_OPTION_COUNT] = +{ + { 0, LOCALE_OPTIONS_NULL }, + { 1, LOCALE_OPTIONS_SERIAL }, + { 2, LOCALE_OPTIONS_FB } +}; + +#define MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT 2 +const CMenuOptionChooser::keyval MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTIONS[MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT] = +{ + { 0, LOCALE_FILESYSTEM_IS_UTF8_OPTION_ISO8859_1 }, + { 1, LOCALE_FILESYSTEM_IS_UTF8_OPTION_UTF8 } +}; + +#define CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT 2 +const CMenuOptionChooser::keyval CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS[CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT]= +{ + { 0 , LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT }, + { 1 , LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT } +}; + +#define CHANNELLIST_FOOT_OPTIONS_COUNT 3 +const CMenuOptionChooser::keyval CHANNELLIST_FOOT_OPTIONS[CHANNELLIST_FOOT_OPTIONS_COUNT]= +{ + { 0 , LOCALE_CHANNELLIST_FOOT_FREQ }, + { 1 , LOCALE_CHANNELLIST_FOOT_NEXT }, + { 2 , LOCALE_CHANNELLIST_FOOT_OFF } +}; + +#ifdef CPU_FREQ +#define CPU_FREQ_OPTION_COUNT 13 +const CMenuOptionChooser::keyval_ext CPU_FREQ_OPTIONS[CPU_FREQ_OPTION_COUNT] = +{ + { 0, LOCALE_CPU_FREQ_DEFAULT, NULL }, + { 50, NONEXISTANT_LOCALE, "50 Mhz"}, + { 100, NONEXISTANT_LOCALE, "100 Mhz"}, + { 150, NONEXISTANT_LOCALE, "150 Mhz"}, + { 200, NONEXISTANT_LOCALE, "200 Mhz"}, + { 250, NONEXISTANT_LOCALE, "250 Mhz"}, + { 300, NONEXISTANT_LOCALE, "300 Mhz"}, + { 350, NONEXISTANT_LOCALE, "350 Mhz"}, + { 400, NONEXISTANT_LOCALE, "400 Mhz"}, + { 450, NONEXISTANT_LOCALE, "450 Mhz"}, + { 500, NONEXISTANT_LOCALE, "500 Mhz"}, + { 550, NONEXISTANT_LOCALE, "550 Mhz"}, + { 600, NONEXISTANT_LOCALE, "600 Mhz"}, +}; +#endif /*CPU_FREQ*/ + +//show misc settings menue +void CMiscMenue::showMiscSettingsMenu() +{ + //misc settings + CMenuWidget *misc_menue = new CMenuWidget(LOCALE_MAINSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + misc_menue->setSelected(selected); + + misc_menue->addIntroItems(LOCALE_MISCSETTINGS_HEAD); + + //general + CMenuWidget *misc_menue_general = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + showMiscSettingsMenuGeneral(misc_menue_general); + misc_menue->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_GENERAL, true, NULL, misc_menue_general, NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED)); + + //energy, shutdown + CMenuWidget *misc_menue_energy = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + if(cs_get_revision() > 7) + { + showMiscSettingsMenuEnergy(misc_menue_energy); + misc_menue->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_ENERGY, true, NULL, misc_menue_energy, NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN)); + } + + //epg + CMenuWidget *misc_menue_epg = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + showMiscSettingsMenuEpg(misc_menue_epg); + misc_menue->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_HEAD, true, NULL, misc_menue_epg, NULL, CRCInput::RC_yellow,NEUTRINO_ICON_BUTTON_YELLOW)); + + //filebrowser settings + CMenuWidget *misc_menue_fbrowser = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + showMiscSettingsMenuFBrowser(misc_menue_fbrowser); + misc_menue->addItem( new CMenuForwarder(LOCALE_FILEBROWSER_HEAD, true, NULL, misc_menue_fbrowser, NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE)); + + //cec settings + misc_menue->addItem(new CMenuForwarder(LOCALE_VIDEOMENU_HDMI_CEC, true, NULL, new CCECSetup() , NULL, CRCInput::RC_0)); + + //channellist + CMenuWidget *misc_menue_chanlist = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width); + showMiscSettingsMenuChanlist(misc_menue_chanlist); + misc_menue->addItem( new CMenuForwarder(LOCALE_MISCSETTINGS_CHANNELLIST, true, NULL, misc_menue_chanlist, NULL, CRCInput::RC_1)); + +#ifdef CPU_FREQ + //CPU + CMenuWidget *misc_menue_cpu = new CMenuWidget("CPU", NEUTRINO_ICON_SETTINGS, width); + showMiscSettingsMenuCPUFreq(misc_menue_cpu); + misc_menue->addItem( new CMenuForwarderNonLocalized("CPU", true, NULL, misc_menue_cpu, NULL)); +#endif /*CPU_FREQ*/ + + misc_menue->exec(NULL, ""); + misc_menue->hide(); + selected = misc_menue->getSelected(); + delete misc_menue; +} + +//general settings +void CMiscMenue::showMiscSettingsMenuGeneral(CMenuWidget *ms_general) +{ + ms_general->addIntroItems(LOCALE_MISCSETTINGS_GENERAL); + + //standby after boot + ms_general->addItem(new CMenuOptionChooser(LOCALE_EXTRA_START_TOSTANDBY, &g_settings.power_standby, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + ms_general->addItem(new CMenuOptionChooser(LOCALE_EXTRA_CACHE_TXT, (int *)&g_settings.cacheTXT, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + + + //fan speed + CFanControlNotifier *fanNotifier = new CFanControlNotifier(); + + //don't show fan speed settings on cable box and NEO + if (g_info.delivery_system == DVB_S && (cs_get_revision() < 8)) { + ms_general->addItem(new CMenuOptionNumberChooser(LOCALE_FAN_SPEED, &g_settings.fan_speed, true, 1, 14, fanNotifier, 0, 0, LOCALE_OPTIONS_OFF) ); + fanNotifier->changeNotify(NONEXISTANT_LOCALE, (void*) &g_settings.fan_speed); + } + + //rotor + //don't show rotor settings on cable box + if (g_info.delivery_system == DVB_S) + ms_general->addItem(new CMenuOptionChooser(LOCALE_EXTRA_ROTOR_SWAP, &g_settings.rotor_swap, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + + ms_general->addItem(new CMenuForwarder(LOCALE_PLUGINS_HDD_DIR, true, g_settings.plugin_hdd_dir, this, "plugin_dir")); + ms_general->addItem(new CMenuForwarder(LOCALE_LOGO_HDD_DIR, true, g_settings.logo_hdd_dir, this, "logo_dir")); +#ifdef ONE_KEY_PLUGIN + ms_general->addItem(new CMenuForwarder(LOCALE_EXTRA_KEY_PLUGIN, true, g_settings.onekey_plugin,this,"onekeyplugin")); +#endif /*ONE_KEY_PLUGIN*/ +} + +//energy and shutdown settings +void CMiscMenue::showMiscSettingsMenuEnergy(CMenuWidget *ms_energy) +{ + ms_energy->addIntroItems(LOCALE_MISCSETTINGS_ENERGY); + + CMenuOptionChooser *m1 = new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL_RCDELAY, &g_settings.shutdown_real_rcdelay, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, !g_settings.shutdown_real); + + CStringInput * miscSettings_shutdown_count = new CStringInput(LOCALE_MISCSETTINGS_SHUTDOWN_COUNT, g_settings.shutdown_count, 3, LOCALE_MISCSETTINGS_SHUTDOWN_COUNT_HINT1, LOCALE_MISCSETTINGS_SHUTDOWN_COUNT_HINT2, "0123456789 "); + CMenuForwarder *m2 = new CMenuForwarder(LOCALE_MISCSETTINGS_SHUTDOWN_COUNT, !g_settings.shutdown_real, g_settings.shutdown_count, miscSettings_shutdown_count); + + CMiscNotifier* miscNotifier = new CMiscNotifier( m1, m2 ); + + ms_energy->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL, &g_settings.shutdown_real, OPTIONS_OFF1_ON0_OPTIONS, OPTIONS_OFF1_ON0_OPTION_COUNT, true, miscNotifier)); + ms_energy->addItem(m1); + ms_energy->addItem(m2); + ms_energy->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_SLEEPTIMER, true, g_settings.shutdown_min, new CSleepTimerWidget, "permanent")); +} + +//EPG settings +void CMiscMenue::showMiscSettingsMenuEpg(CMenuWidget *ms_epg) +{ + ms_epg->addIntroItems(LOCALE_MISCSETTINGS_EPG_HEAD); + + CSectionsdConfigNotifier* sectionsdConfigNotifier = new CSectionsdConfigNotifier; + ms_epg->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_EPG_SAVE, &g_settings.epg_save, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + + CStringInput * miscSettings_epg_cache = new CStringInput(LOCALE_MISCSETTINGS_EPG_CACHE, &g_settings.epg_cache, 2,LOCALE_MISCSETTINGS_EPG_CACHE_HINT1, LOCALE_MISCSETTINGS_EPG_CACHE_HINT2 , "0123456789 ", sectionsdConfigNotifier); + ms_epg->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_CACHE, true, g_settings.epg_cache, miscSettings_epg_cache)); + + CStringInput * miscSettings_epg_cache_e = new CStringInput(LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE, &g_settings.epg_extendedcache, 3,LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE_HINT1, LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE_HINT2 , "0123456789 ", sectionsdConfigNotifier); + ms_epg->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE, true, g_settings.epg_extendedcache, miscSettings_epg_cache_e)); + + CStringInput * miscSettings_epg_old_events = new CStringInput(LOCALE_MISCSETTINGS_EPG_OLD_EVENTS, &g_settings.epg_old_events, 2,LOCALE_MISCSETTINGS_EPG_OLD_EVENTS_HINT1, LOCALE_MISCSETTINGS_EPG_OLD_EVENTS_HINT2 , "0123456789 ", sectionsdConfigNotifier); + ms_epg->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_OLD_EVENTS, true, g_settings.epg_old_events, miscSettings_epg_old_events)); + + CStringInput * miscSettings_epg_max_events = new CStringInput(LOCALE_MISCSETTINGS_EPG_MAX_EVENTS, &g_settings.epg_max_events, 5,LOCALE_MISCSETTINGS_EPG_MAX_EVENTS_HINT1, LOCALE_MISCSETTINGS_EPG_MAX_EVENTS_HINT2 , "0123456789 ", sectionsdConfigNotifier); + ms_epg->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_MAX_EVENTS, true, g_settings.epg_max_events, miscSettings_epg_max_events)); + + ms_epg->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_DIR, true, g_settings.epg_dir, this, "epgdir")); + +} + +//filebrowser settings +void CMiscMenue::showMiscSettingsMenuFBrowser(CMenuWidget *ms_fbrowser) +{ + ms_fbrowser->addIntroItems(LOCALE_FILEBROWSER_HEAD); + + ms_fbrowser->addItem(new CMenuOptionChooser(LOCALE_FILESYSTEM_IS_UTF8 , &g_settings.filesystem_is_utf8 , MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTIONS, MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT, true )); + ms_fbrowser->addItem(new CMenuOptionChooser(LOCALE_FILEBROWSER_SHOWRIGHTS , &g_settings.filebrowser_showrights , MESSAGEBOX_NO_YES_OPTIONS , MESSAGEBOX_NO_YES_OPTION_COUNT , true )); + ms_fbrowser->addItem(new CMenuOptionChooser(LOCALE_FILEBROWSER_DENYDIRECTORYLEAVE, &g_settings.filebrowser_denydirectoryleave, MESSAGEBOX_NO_YES_OPTIONS , MESSAGEBOX_NO_YES_OPTION_COUNT , true )); + +} + +//channellist +void CMiscMenue::showMiscSettingsMenuChanlist(CMenuWidget *ms_chanlist) +{ + ms_chanlist->addIntroItems(LOCALE_MISCSETTINGS_CHANNELLIST); + + ms_chanlist->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGN, &g_settings.channellist_epgtext_align_right, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT, true)); + ms_chanlist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_EXTENDED, &g_settings.channellist_extended, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + ms_chanlist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_FOOT, &g_settings.channellist_foot, CHANNELLIST_FOOT_OPTIONS, CHANNELLIST_FOOT_OPTIONS_COUNT, true)); + ms_chanlist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_MAKE_HDLIST, &g_settings.make_hd_list, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); + ms_chanlist->addItem(new CMenuOptionChooser(LOCALE_EXTRA_ZAP_CYCLE, &g_settings.zap_cycle, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); +} + +#ifdef CPU_FREQ +//CPU +void CMiscMenue::showMiscSettingsMenuCPUFreq(CMenuWidget *ms_cpu) +{ + ms_cpu->addIntroItems(); + + CCpuFreqNotifier * cpuNotifier = new CCpuFreqNotifier(); + ms_cpu->addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_NORMAL, &g_settings.cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true, cpuNotifier)); + ms_cpu->addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_STANDBY, &g_settings.standby_cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true)); +} +#endif /*CPU_FREQ*/ + +#if 0 +//emlog +void CMiscMenue::showMiscSettingsMenuEmLog(CMenuWidget *ms_emlog) +{ + ms_emlog->addIntroItems(LOCALE_MISCSETTINGS_DRIVER_BOOT); + if (access("/var/tuxbox/emlog", F_OK) == 0) + g_settings.emlog = 1; + ms_emlog->addItem(new CMenuOptionChooser(LOCALE_EXTRA_USELOG, &g_settings.emlog, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, new CLogChangeNotifier)); +} +#endif + diff --git a/src/gui/miscsettings_menu.h b/src/gui/miscsettings_menu.h new file mode 100644 index 000000000..0c3776a8c --- /dev/null +++ b/src/gui/miscsettings_menu.h @@ -0,0 +1,65 @@ +/* + $port: miscsettings_menu.h,v 1.2 2010/12/05 22:32:12 tuxbox-cvs Exp $ + + miscsettings_menu implementation - Neutrino-GUI + + Copyright (C) 2010 T. Graf 'dbt' + Homepage: http://www.dbox2-tuning.net/ + + License: GPL + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#ifndef __miscsettings_menu__ +#define __miscsettings_menu__ + +#include + +#include + +#include +#include "gui/widget/menue.h" + +//#define CPU_FREQ + +class CMiscMenue : public CMenuTarget +{ + private: + int width, selected; + + void showMiscSettingsMenu(); + void showMiscSettingsMenuGeneral(CMenuWidget *ms_general); + void showMiscSettingsMenuEnergy(CMenuWidget *ms_energy); + void showMiscSettingsMenuEpg(CMenuWidget *ms_epg); + void showMiscSettingsMenuFBrowser(CMenuWidget *ms_fbrowser); + void showMiscSettingsMenuChanlist(CMenuWidget *ms_chanlist); +#ifdef CPU_FREQ + void showMiscSettingsMenuCPUFreq(CMenuWidget *ms_cpu); +#endif /*CPU_FREQ*/ +#if 0 + void showMiscSettingsMenuEmLog(CMenuWidget *ms_emlog); +#endif + + public: + CMiscMenue(); + ~CMiscMenue(); + int exec(CMenuTarget* parent, const std::string & actionKey); + +}; + + +#endif diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 28a62c221..d8580f142 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -2189,7 +2189,6 @@ int CNeutrinoApp::run(int argc, char **argv) NVODChanger = new CNVODChangeExec; StreamFeaturesChanger = new CStreamFeaturesChangeExec; MoviePluginChanger = new CMoviePluginChangeExec; - OnekeyPluginChanger = new COnekeyPluginChangeExec; MyIPChanger = new CIPChangeNotifier; ConsoleDestinationChanger = new CConsoleDestChangeNotifier; rcLock = new CRCLock(); @@ -2206,15 +2205,13 @@ int CNeutrinoApp::run(int argc, char **argv) //Main settings CMenuWidget mainMenu (LOCALE_MAINMENU_HEAD , NEUTRINO_ICON_MAINMENU/*, 22*/); CMenuWidget mainSettings (LOCALE_MAINSETTINGS_HEAD , NEUTRINO_ICON_SETTINGS); - CMenuWidget streamingSettings (LOCALE_STREAMINGMENU_HEAD , NEUTRINO_ICON_STREAMING); CMenuWidget miscSettings (LOCALE_MISCSETTINGS_HEAD , NEUTRINO_ICON_SETTINGS); CMenuWidget _scanSettings (LOCALE_SERVICEMENU_SCANTS , NEUTRINO_ICON_SETTINGS); CMenuWidget service (LOCALE_SERVICEMENU_HEAD , NEUTRINO_ICON_SETTINGS); - InitMainMenu(mainMenu, mainSettings, miscSettings, service, streamingSettings); + InitMainMenu(mainMenu, mainSettings, service); InitServiceSettings(service, _scanSettings); - InitMiscSettings(miscSettings); InitScanSettings(_scanSettings); dprintf( DEBUG_NORMAL, "registering as event client\n"); @@ -4229,34 +4226,6 @@ int CNeutrinoApp::exec(CMenuTarget* parent, const std::string & actionKey) } return menu_return::RETURN_REPAINT; } - else if(actionKey == "epgdir") { - parent->hide(); - - const char *action_str = "epg"; - if(chooserDir(g_settings.epg_dir, true, action_str)){ - SendSectionsdConfig(); - } - - return menu_return::RETURN_REPAINT; - } - else if(actionKey == "plugin_dir") { - parent->hide(); - - const char *action_str = "plugin"; - if(chooserDir(g_settings.plugin_hdd_dir, false, action_str)){ - g_PluginList->loadPlugins(); - } - - return menu_return::RETURN_REPAINT; - } - else if(actionKey == "logo_dir") { - parent->hide(); - - const char *action_str = "logo"; - chooserDir(g_settings.logo_hdd_dir, false, action_str); - - return menu_return::RETURN_REPAINT; - } else if(actionKey == "movieplugin") { parent->hide(); CMenuWidget MoviePluginSelector(LOCALE_MOVIEPLAYER_DEFPLUGIN, NEUTRINO_ICON_FEATURES); @@ -4278,27 +4247,6 @@ int CNeutrinoApp::exec(CMenuTarget* parent, const std::string & actionKey) MoviePluginSelector.exec(NULL, ""); return menu_return::RETURN_REPAINT; } - else if(actionKey == "onekeyplugin") { - parent->hide(); - CMenuWidget MoviePluginSelector(LOCALE_EXTRA_KEY_PLUGIN, NEUTRINO_ICON_FEATURES); - MoviePluginSelector.addItem(GenericMenuSeparator); - - char id[5]; - int cnt = 0; - int enabled_count = 0; - for(unsigned int count=0;count < (unsigned int) g_PluginList->getNumberOfPlugins();count++) { - if (g_PluginList->getType(count)== CPlugins::P_TYPE_TOOL && !g_PluginList->isHidden(count)) { - // zB vtxt-plugins - sprintf(id, "%d", count); - enabled_count++; - MoviePluginSelector.addItem(new CMenuForwarderNonLocalized(g_PluginList->getName(count), true, NULL, OnekeyPluginChanger, id, CRCInput::convertDigitToKey(count)), (cnt == 0)); - cnt++; - } - } - - MoviePluginSelector.exec(NULL, ""); - return menu_return::RETURN_REPAINT; - } else if(actionKey == "loadconfig") { parent->hide(); CFileBrowser fileBrowser; diff --git a/src/neutrino.h b/src/neutrino.h index 222df1eca..ad03e3d26 100644 --- a/src/neutrino.h +++ b/src/neutrino.h @@ -174,7 +174,7 @@ private: void InitScreenSettings(CMenuWidget &); void InitMiscSettings(CMenuWidget &); void InitScanSettings(CMenuWidget &); - void InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings, CMenuWidget &miscSettings, CMenuWidget &service, CMenuWidget &streamingSettings); + void InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings, CMenuWidget &service); void SetupFrameBuffer(); void SelectAPID(); diff --git a/src/neutrino_menue.cpp b/src/neutrino_menue.cpp index 24a950c50..9387078b1 100644 --- a/src/neutrino_menue.cpp +++ b/src/neutrino_menue.cpp @@ -49,7 +49,6 @@ #include "gui/bedit/bouqueteditor_bouquets.h" #include "gui/bouquetlist.h" #include "gui/cam_menu.h" -#include "gui/cec_setup.h" #include "gui/dboxinfo.h" #include "gui/epg_menu.h" #include @@ -59,6 +58,7 @@ #include "gui/keybind_setup.h" #include "gui/mediaplayer.h" #include "gui/mediaplayer_setup.h" +#include "gui/miscsettings_menu.h" #include "gui/motorcontrol.h" #include "gui/movieplayer.h" #include "gui/osd_setup.h" @@ -95,7 +95,7 @@ extern Zapit_config zapitCfg; extern char zapit_lat[20]; extern char zapit_long[20]; extern char current_timezone[50]; -extern CFanControlNotifier * funNotifier; +// extern CFanControlNotifier * funNotifier; extern CRemoteControl * g_RemoteControl; extern CCAMMenuHandler * g_CamHandler; extern bool autoshift; @@ -108,8 +108,7 @@ extern bool autoshift; /************************************************************************************** * CNeutrinoApp - init main menu * **************************************************************************************/ -void CNeutrinoApp::InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings, CMenuWidget &miscSettings, - CMenuWidget &service, CMenuWidget &/*streamingSettings*/) +void CNeutrinoApp::InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings, CMenuWidget &service) { unsigned int system_rev = cs_get_revision(); @@ -205,8 +204,8 @@ void CNeutrinoApp::InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings mainSettings.addItem(new CMenuForwarder(LOCALE_HDD_SETTINGS, true, NULL, new CHDDMenuHandler(), NULL, CRCInput::convertDigitToKey(sett_count++))); mainSettings.addItem(new CMenuForwarder(LOCALE_MAINSETTINGS_KEYBINDING, true, NULL, new CKeybindSetup(), NULL, CRCInput::RC_green , NEUTRINO_ICON_BUTTON_GREEN )); - mainSettings.addItem(new CMenuForwarder(LOCALE_AUDIOPLAYERPICSETTINGS_GENERAL , true, NULL, new CMediaPlayerSetup()/*&audiopl_picSettings*/ , NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW)); - mainSettings.addItem(new CMenuForwarder(LOCALE_MAINSETTINGS_MISC , true, NULL, &miscSettings , NULL, CRCInput::RC_blue , NEUTRINO_ICON_BUTTON_BLUE )); + mainSettings.addItem(new CMenuForwarder(LOCALE_AUDIOPLAYERPICSETTINGS_GENERAL , true, NULL, new CMediaPlayerSetup(), NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW)); + mainSettings.addItem(new CMenuForwarder(LOCALE_MAINSETTINGS_MISC , true, NULL, new CMiscMenue() , NULL, CRCInput::RC_blue , NEUTRINO_ICON_BUTTON_BLUE )); //mainSettings.addItem(new CMenuForwarder(LOCALE_CAM_SETTINGS, true, NULL, g_CamHandler)); @@ -877,180 +876,6 @@ void CNeutrinoApp::InitServiceSettings(CMenuWidget &service, CMenuWidget &_scanS } } -#define MISCSETTINGS_FB_DESTINATION_OPTION_COUNT 3 -const CMenuOptionChooser::keyval MISCSETTINGS_FB_DESTINATION_OPTIONS[MISCSETTINGS_FB_DESTINATION_OPTION_COUNT] = -{ - { 0, LOCALE_OPTIONS_NULL }, - { 1, LOCALE_OPTIONS_SERIAL }, - { 2, LOCALE_OPTIONS_FB } -}; - -#define MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT 2 -const CMenuOptionChooser::keyval MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTIONS[MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT] = -{ - { 0, LOCALE_FILESYSTEM_IS_UTF8_OPTION_ISO8859_1 }, - { 1, LOCALE_FILESYSTEM_IS_UTF8_OPTION_UTF8 } -}; - -// #define INFOBAR_SUBCHAN_DISP_POS_OPTIONS_COUNT 5 -// const CMenuOptionChooser::keyval INFOBAR_SUBCHAN_DISP_POS_OPTIONS[INFOBAR_SUBCHAN_DISP_POS_OPTIONS_COUNT]= -// { -// { 0 , LOCALE_SETTINGS_POS_TOP_RIGHT }, -// { 1 , LOCALE_SETTINGS_POS_TOP_LEFT }, -// { 2 , LOCALE_SETTINGS_POS_BOTTOM_LEFT }, -// { 3 , LOCALE_SETTINGS_POS_BOTTOM_RIGHT }, -// { 4 , LOCALE_INFOVIEWER_SUBCHAN_INFOBAR } -// }; - -#define CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT 2 -const CMenuOptionChooser::keyval CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS[CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT]= -{ - { 0 , LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT }, - { 1 , LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT } -}; - -#define CHANNELLIST_FOOT_OPTIONS_COUNT 3 -const CMenuOptionChooser::keyval CHANNELLIST_FOOT_OPTIONS[CHANNELLIST_FOOT_OPTIONS_COUNT]= -{ - { 0 , LOCALE_CHANNELLIST_FOOT_FREQ }, - { 1 , LOCALE_CHANNELLIST_FOOT_NEXT }, - { 2 , LOCALE_CHANNELLIST_FOOT_OFF } -}; - -#define CPU_FREQ_OPTION_COUNT 13 -const CMenuOptionChooser::keyval_ext CPU_FREQ_OPTIONS[CPU_FREQ_OPTION_COUNT] = -{ - { 0, LOCALE_CPU_FREQ_DEFAULT, NULL }, - { 50, NONEXISTANT_LOCALE, "50 Mhz"}, - { 100, NONEXISTANT_LOCALE, "100 Mhz"}, - { 150, NONEXISTANT_LOCALE, "150 Mhz"}, - { 200, NONEXISTANT_LOCALE, "200 Mhz"}, - { 250, NONEXISTANT_LOCALE, "250 Mhz"}, - { 300, NONEXISTANT_LOCALE, "300 Mhz"}, - { 350, NONEXISTANT_LOCALE, "350 Mhz"}, - { 400, NONEXISTANT_LOCALE, "400 Mhz"}, - { 450, NONEXISTANT_LOCALE, "450 Mhz"}, - { 500, NONEXISTANT_LOCALE, "500 Mhz"}, - { 550, NONEXISTANT_LOCALE, "550 Mhz"}, - { 600, NONEXISTANT_LOCALE, "600 Mhz"}, -}; - - -void CNeutrinoApp::InitMiscSettings(CMenuWidget &miscSettings) -{ - dprintf(DEBUG_DEBUG, "init miscsettings\n"); - miscSettings.addIntroItems(); -// miscSettings.addItem(new CMenuForwarder(LOCALE_MAINSETTINGS_SAVESETTINGSNOW, true, NULL, this, "savesettings", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED)); - CMenuWidget *miscSettingsGeneral = new CMenuWidget(LOCALE_MISCSETTINGS_GENERAL, NEUTRINO_ICON_SETTINGS); - miscSettingsGeneral->addIntroItems(); -#if 0 - CMenuOptionChooser *m1 = new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL_RCDELAY, &g_settings.shutdown_real_rcdelay, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, !g_settings.shutdown_real); - CMiscNotifier* miscNotifier = new CMiscNotifier( m1 ); - miscSettings.addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL, &g_settings.shutdown_real, OPTIONS_OFF1_ON0_OPTIONS, OPTIONS_OFF1_ON0_OPTION_COUNT, true, miscNotifier)); -#endif - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_START_TOSTANDBY, &g_settings.power_standby, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_CACHE_TXT, (int *)&g_settings.cacheTXT, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - //miscSettings.addItem(new CMenuForwarder(LOCALE_EXTRA_KEY_PLUGIN, true, g_settings.onekey_plugin,this,"onekeyplugin")); - - //don't show fan speed settings on cable box and NEO - funNotifier = new CFanControlNotifier(); - if (g_info.delivery_system == DVB_S && (cs_get_revision() < 8)) { - miscSettingsGeneral->addItem(new CMenuOptionNumberChooser(LOCALE_FAN_SPEED, &g_settings.fan_speed, true, 1, 14, funNotifier, 0, 0, LOCALE_OPTIONS_OFF) ); - funNotifier->changeNotify(NONEXISTANT_LOCALE, (void*) &g_settings.fan_speed); - } - //don't show rotor settings on cable box - if (g_info.delivery_system == DVB_S) { - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_ROTOR_SWAP, &g_settings.rotor_swap, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - } - miscSettingsGeneral->addItem(new CMenuForwarder(LOCALE_PLUGINS_HDD_DIR, true, g_settings.plugin_hdd_dir, this, "plugin_dir")); - miscSettingsGeneral->addItem(new CMenuForwarder(LOCALE_LOGO_HDD_DIR, true, g_settings.logo_hdd_dir, this, "logo_dir")); - - - if(cs_get_revision() > 7){ - miscSettingsGeneral->addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_MAINMENU_SHUTDOWN)); - CMenuOptionChooser *m1 = new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL_RCDELAY, &g_settings.shutdown_real_rcdelay, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, !g_settings.shutdown_real); - - CStringInput * miscSettings_shutdown_count = new CStringInput(LOCALE_MISCSETTINGS_SHUTDOWN_COUNT, g_settings.shutdown_count, 3, LOCALE_MISCSETTINGS_SHUTDOWN_COUNT_HINT1, LOCALE_MISCSETTINGS_SHUTDOWN_COUNT_HINT2, "0123456789 "); - CMenuForwarder *m2 = new CMenuForwarder(LOCALE_MISCSETTINGS_SHUTDOWN_COUNT, !g_settings.shutdown_real, g_settings.shutdown_count, miscSettings_shutdown_count); - - CMiscNotifier* miscNotifier = new CMiscNotifier( m1, m2 ); - - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_SHUTDOWN_REAL, &g_settings.shutdown_real, OPTIONS_OFF1_ON0_OPTIONS, OPTIONS_OFF1_ON0_OPTION_COUNT, true, miscNotifier)); - miscSettingsGeneral->addItem(m1); - miscSettingsGeneral->addItem(m2); - miscSettingsGeneral->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_SLEEPTIMER, true, g_settings.shutdown_min, new CSleepTimerWidget, "permanent")); - } - -#if 0 - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_SCRAMBLED_MESSAGE, &g_settings.scrambled_message, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_INFOVIEWER_SUBCHAN_DISP_POS, &g_settings.infobar_subchan_disp_pos, INFOBAR_SUBCHAN_DISP_POS_OPTIONS, INFOBAR_SUBCHAN_DISP_POS_OPTIONS_COUNT, true)); - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_VOLUME_POS, &g_settings.volume_pos, VOLUMEBAR_DISP_POS_OPTIONS, VOLUMEBAR_DISP_POS_OPTIONS_COUNT, true)); - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_SETTINGS_MENU_POS, &g_settings.menu_pos, MENU_DISP_POS_OPTIONS, MENU_DISP_POS_OPTIONS_COUNT, true)); - miscSettingsGeneral->addItem(new CMenuOptionChooser(LOCALE_EXTRA_ROUNDED_CORNERS, &g_settings.rounded_corners, MENU_CORNERSETTINGS_TYPE_OPTIONS, MENU_CORNERSETTINGS_TYPE_OPTION_COUNT, true)); -#endif - miscSettings.addItem( new CMenuForwarder(LOCALE_MISCSETTINGS_GENERAL, true, NULL, miscSettingsGeneral, NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED) ); - - //channellist - CMenuWidget *miscSettingsChannellist = new CMenuWidget(LOCALE_MISCSETTINGS_CHANNELLIST, NEUTRINO_ICON_SETTINGS); - miscSettingsChannellist->addIntroItems(); - miscSettingsChannellist->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGN, &g_settings.channellist_epgtext_align_right, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT, true)); - miscSettingsChannellist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_EXTENDED, &g_settings.channellist_extended, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsChannellist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_FOOT, &g_settings.channellist_foot, CHANNELLIST_FOOT_OPTIONS, CHANNELLIST_FOOT_OPTIONS_COUNT, true)); - miscSettingsChannellist->addItem(new CMenuOptionChooser(LOCALE_CHANNELLIST_MAKE_HDLIST, &g_settings.make_hd_list, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsChannellist->addItem(new CMenuOptionChooser(LOCALE_EXTRA_ZAP_CYCLE, &g_settings.zap_cycle, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettings.addItem( new CMenuForwarder(LOCALE_MISCSETTINGS_CHANNELLIST, true, NULL, miscSettingsChannellist, NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN) ); - - //EPGSettings - CMenuWidget *miscSettingsEPGSettings = new CMenuWidget(LOCALE_MISCSETTINGS_EPG_HEAD, NEUTRINO_ICON_SETTINGS); - miscSettingsEPGSettings->addIntroItems(); - CSectionsdConfigNotifier* sectionsdConfigNotifier = new CSectionsdConfigNotifier; - miscSettingsEPGSettings->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_EPG_SAVE, &g_settings.epg_save, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - CStringInput * miscSettings_epg_cache = new CStringInput(LOCALE_MISCSETTINGS_EPG_CACHE, &g_settings.epg_cache, 2,LOCALE_MISCSETTINGS_EPG_CACHE_HINT1, LOCALE_MISCSETTINGS_EPG_CACHE_HINT2 , "0123456789 ", sectionsdConfigNotifier); - miscSettingsEPGSettings->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_CACHE, true, g_settings.epg_cache, miscSettings_epg_cache)); - CStringInput * miscSettings_epg_cache_e = new CStringInput(LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE, &g_settings.epg_extendedcache, 3,LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE_HINT1, LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE_HINT2 , "0123456789 ", sectionsdConfigNotifier); - miscSettingsEPGSettings->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_EXTENDEDCACHE, true, g_settings.epg_extendedcache, miscSettings_epg_cache_e)); - CStringInput * miscSettings_epg_old_events = new CStringInput(LOCALE_MISCSETTINGS_EPG_OLD_EVENTS, &g_settings.epg_old_events, 2,LOCALE_MISCSETTINGS_EPG_OLD_EVENTS_HINT1, LOCALE_MISCSETTINGS_EPG_OLD_EVENTS_HINT2 , "0123456789 ", sectionsdConfigNotifier); - miscSettingsEPGSettings->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_OLD_EVENTS, true, g_settings.epg_old_events, miscSettings_epg_old_events)); - CStringInput * miscSettings_epg_max_events = new CStringInput(LOCALE_MISCSETTINGS_EPG_MAX_EVENTS, &g_settings.epg_max_events, 5,LOCALE_MISCSETTINGS_EPG_MAX_EVENTS_HINT1, LOCALE_MISCSETTINGS_EPG_MAX_EVENTS_HINT2 , "0123456789 ", sectionsdConfigNotifier); - miscSettingsEPGSettings->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_MAX_EVENTS, true, g_settings.epg_max_events, miscSettings_epg_max_events)); - miscSettingsEPGSettings->addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_DIR, true, g_settings.epg_dir, this, "epgdir")); - miscSettings.addItem( new CMenuForwarder(LOCALE_MISCSETTINGS_EPG_HEAD, true, NULL, miscSettingsEPGSettings, NULL, CRCInput::RC_yellow,NEUTRINO_ICON_BUTTON_YELLOW ) ); - //end of EPGSettings - -#if 0 - miscSettings.addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_MISCSETTINGS_DRIVER_BOOT)); - if (access("/var/tuxbox/emlog", F_OK) == 0) - g_settings.emlog = 1; - miscSettings.addItem(new CMenuOptionChooser(LOCALE_EXTRA_USELOG, &g_settings.emlog, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, new CLogChangeNotifier)); -#endif - - //filebrowsersettings - CMenuWidget *miscSettingsFilebrowser = new CMenuWidget(LOCALE_FILEBROWSER_HEAD, NEUTRINO_ICON_SETTINGS); - miscSettingsFilebrowser->addIntroItems(); - miscSettingsFilebrowser->addItem(new CMenuOptionChooser(LOCALE_FILESYSTEM_IS_UTF8 , &g_settings.filesystem_is_utf8 , MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTIONS, MISCSETTINGS_FILESYSTEM_IS_UTF8_OPTION_COUNT, true )); - miscSettingsFilebrowser->addItem(new CMenuOptionChooser(LOCALE_FILEBROWSER_SHOWRIGHTS , &g_settings.filebrowser_showrights , MESSAGEBOX_NO_YES_OPTIONS , MESSAGEBOX_NO_YES_OPTION_COUNT , true )); - miscSettingsFilebrowser->addItem(new CMenuOptionChooser(LOCALE_FILEBROWSER_DENYDIRECTORYLEAVE, &g_settings.filebrowser_denydirectoryleave, MESSAGEBOX_NO_YES_OPTIONS , MESSAGEBOX_NO_YES_OPTION_COUNT , true )); - miscSettings.addItem( new CMenuForwarder(LOCALE_FILEBROWSER_HEAD, true, NULL, miscSettingsFilebrowser, NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE) ); - miscSettings.addItem(new CMenuForwarder(LOCALE_VIDEOMENU_HDMI_CEC, true, NULL, new CCECSetup() , NULL, CRCInput::RC_0)); - -#if 0 - //infobar - CMenuWidget *miscSettingsInfobar = new CMenuWidget(LOCALE_MISCSETTINGS_INFOBAR, NEUTRINO_ICON_SETTINGS); - addIntroItems(*miscSettingsInfobar); - miscSettingsInfobar->addItem(new CMenuOptionChooser(LOCALE_PROGRESSBAR_COLOR, &g_settings.progressbar_color, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsInfobar->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_INFOBAR_CASYSTEM_DISPLAY, &g_settings.casystem_display, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsInfobar->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_INFOBAR_DISP_LOG, &g_settings.infobar_show_channellogo, LOCALE_MISCSETTINGS_INFOBAR_DISP_OPTIONS, LOCALE_MISCSETTINGS_INFOBAR_DISP_OPTIONS_COUNT, true)); - miscSettingsInfobar->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_VIRTUAL_ZAP_MODE, &g_settings.virtual_zap_mode, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettingsInfobar->addItem(new CMenuOptionChooser(LOCALE_MISCSETTINGS_INFOBAR_SAT_DISPLAY, &g_settings.infobar_sat_display, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - miscSettings.addItem(new CMenuForwarder(LOCALE_MISCSETTINGS_INFOBAR, true, NULL, miscSettingsInfobar, NULL, CRCInput::RC_1)); -#endif -#if 0 - CCpuFreqNotifier * cpuNotifier = new CCpuFreqNotifier(); - miscSettings.addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_NORMAL, &g_settings.cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true, cpuNotifier)); - miscSettings.addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_STANDBY, &g_settings.standby_cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true)); -#endif -} - // USERMENU // leave this functions, somebody might want to use it in the future again @@ -1516,7 +1341,6 @@ bool CNeutrinoApp::showUserMenu(int button) // otherwise, we start the item directly (must be the last one) if (menu_items > 1 ) { menu->exec(NULL,""); - selected[button] = menu->getSelected(); } else if (menu_item != NULL) menu_item->exec( NULL ); diff --git a/src/system/locals.h b/src/system/locals.h index 6839fa4a9..d1a0f53b3 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -749,6 +749,7 @@ typedef enum LOCALE_MISCSETTINGS_CHANNELLIST, LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGN, LOCALE_MISCSETTINGS_DRIVER_BOOT, + LOCALE_MISCSETTINGS_ENERGY, LOCALE_MISCSETTINGS_EPG_CACHE, LOCALE_MISCSETTINGS_EPG_CACHE_HINT1, LOCALE_MISCSETTINGS_EPG_CACHE_HINT2, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index 0f6158ece..49f704918 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -749,6 +749,7 @@ const char * locale_real_names[] = "miscsettings.channellist", "miscsettings.channellist_epgtext_align", "miscsettings.driver_boot", + "miscsettings.energy", "miscsettings.epg_cache", "miscsettings.epg_cache_hint1", "miscsettings.epg_cache_hint2",