fix bluescreen in some conditions
[enigma2.git] / lib / python / Components / SetupDevices.py
index 003bba5459f2fa75970458bf20e29f0ef3c2898e..546d04a748dc0c3e8bbbf2afa8d2ee9d3718d6da 100644 (file)
@@ -1,36 +1,33 @@
-#import os
-from config import config                              #global config instance
-from config import configElement
-from config import ConfigSubsection
-from config import ConfigSlider
-from config import configSelection
-from config import configText
+from config import config, ConfigSlider, ConfigSelection, ConfigSubsection, ConfigOnOff, ConfigText
 from Components.Timezones import timezones
+from Components.Language import language
 
 def InitSetupDevices():
+       
+       def timezoneNotifier(configElement):
+               timezones.activateTimezone(configElement.index)
+               
        config.timezone = ConfigSubsection();
-       config.timezone.val = configElement("config.timezone.val", configSelection, 1, ("GMT", "GMT+1", "GMT+2", "GMT+3", "GMT+4", "GMT+5", "GMT+6", "GMT+7", "GMT+8", "GMT+9") );
-
-       config.rc = ConfigSubsection();
-       config.rc.map = configElement("config.rc.map", configSelection, 0, ("Default", "Classic") );
+       config.timezone.val = ConfigSelection(default = timezones.getDefaultTimezone(), choices = timezones.getTimezoneList())
+       config.timezone.val.addNotifier(timezoneNotifier)
 
        config.keyboard = ConfigSubsection();
-       config.keyboard.keymap = configElement("config.keyboard.keymap", configSelection, 1, ("English", "German") );
+       config.keyboard.keymap = ConfigSelection(choices = [("en", _("English")), ("de",_("German"))])
 
-       config.osd = ConfigSubsection();
-       config.osd.alpha = configElement("config.osd.alpha", ConfigSlider, 0, "");
-       config.osd.bright = configElement("config.osd.bright", ConfigSlider, 5, "");
-       config.osd.contrast = configElement("config.osd.contrast", ConfigSlider, 5, "");
-       config.osd.language = configElement("config.osd.language", configSelection, 0, ("English", "English US") );
+       def languageNotifier(configElement):
+               language.activateLanguage(configElement.value)
+       
+       config.osd = ConfigSubsection()
+       config.osd.language = ConfigText(default = "en_EN");
+       config.osd.language.addNotifier(languageNotifier)
 
        config.parental = ConfigSubsection();
-       config.parental.lock = configElement("config.parental.lock", configSelection, 1, ("Enable", "Disable") );
-       config.parental.setuplock = configElement("config.parental.setuplock", configSelection, 1, ("Enable", "Disable") );
+       config.parental.lock = ConfigOnOff(default = False)
+       config.parental.setuplock = ConfigOnOff(default = False)
 
        config.expert = ConfigSubsection();
-       config.expert.splitsize = configElement("config.expert.splitsize", configSelection, 1, ("0.5Gbyte", "1.0 GByte", "1.5 GByte", "2.0 GByte") );
-       config.expert.satpos = configElement("config.expert.satpos", configSelection, 1, ("Enable", "Disable") );
-       config.expert.fastzap = configElement("config.expert.fastzap", configSelection, 0, ("Enable", "Disable") );
-       config.expert.skipconfirm = configElement("config.expert.skipconfirm", configSelection, 1, ("Enable", "Disable") );
-       config.expert.hideerrors = configElement("config.expert.hideerrors", configSelection, 1, ("Enable", "Disable") );
-       config.expert.autoinfo = configElement("config.expert.autoinfo", configSelection, 1, ("Enable", "Disable") );
+       config.expert.satpos = ConfigOnOff(default = True)
+       config.expert.fastzap = ConfigOnOff(default = True)
+       config.expert.skipconfirm = ConfigOnOff(default = False)
+       config.expert.hideerrors = ConfigOnOff(default = False)
+       config.expert.autoinfo = ConfigOnOff(default = True)