X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1c21fe13bb453d0f11c8a40461b3bfe7dba5cef1..c72b0788e404a940f29888a696756d6b4cd6644f:/lib/python/Components/Lcd.py diff --git a/lib/python/Components/Lcd.py b/lib/python/Components/Lcd.py index eb3e3df1..7d27c097 100644 --- a/lib/python/Components/Lcd.py +++ b/lib/python/Components/Lcd.py @@ -1,6 +1,6 @@ from config import config, ConfigSubsection, ConfigSlider, ConfigYesNo, ConfigNothing - from enigma import eDBoxLCD +from Components.SystemInfo import SystemInfo class LCD: def __init__(self): @@ -29,32 +29,46 @@ class LCD: return eDBoxLCD.getInstance().isOled() def InitLcd(): + detected = eDBoxLCD.getInstance().detected() + SystemInfo["Display"] = detected + config.lcd = ConfigSubsection(); + if detected: + def setLCDbright(configElement): + ilcd.setBright(configElement.value); - def setLCDbright(configElement): - ilcd.setBright(configElement.value); + def setLCDcontrast(configElement): + ilcd.setContrast(configElement.value); - def setLCDcontrast(configElement): - ilcd.setContrast(configElement.value); + def setLCDinverted(configElement): + ilcd.setInverted(configElement.value); - def setLCDinverted(configElement): - ilcd.setInverted(configElement.value); + standby_default = 0 - ilcd = LCD() + ilcd = LCD() - config.lcd = ConfigSubsection(); + if not ilcd.isOled(): + config.lcd.contrast = ConfigSlider(default=5, limits=(0, 20)) + config.lcd.contrast.addNotifier(setLCDcontrast); + else: + config.lcd.contrast = ConfigNothing() + standby_default = 1 - config.lcd.bright = ConfigSlider(default=10, limits=(0, 10)) - config.lcd.bright.addNotifier(setLCDbright); - config.lcd.bright.apply = lambda : setLCDbright(config.lcd.bright) + config.lcd.standby = ConfigSlider(default=standby_default, limits=(0, 10)) + config.lcd.standby.addNotifier(setLCDbright); + config.lcd.standby.apply = lambda : setLCDbright(config.lcd.standby) - if not ilcd.isOled(): - config.lcd.contrast = ConfigSlider(default=5, limits=(0, 20)) - config.lcd.contrast.addNotifier(setLCDcontrast); + config.lcd.bright = ConfigSlider(default=5, limits=(0, 10)) + config.lcd.bright.addNotifier(setLCDbright); + config.lcd.bright.apply = lambda : setLCDbright(config.lcd.bright) + config.lcd.bright.callNotifiersOnSaveAndCancel = True + + config.lcd.invert = ConfigYesNo(default=False) + config.lcd.invert.addNotifier(setLCDinverted); else: + def doNothing(): + pass config.lcd.contrast = ConfigNothing() - - config.lcd.standby = ConfigSlider(default=0, limits=(0, 10)) - config.lcd.standby.apply = lambda : setLCDbright(config.lcd.standby) - - config.lcd.invert = ConfigYesNo(default=False) - config.lcd.invert.addNotifier(setLCDinverted); + config.lcd.bright = ConfigNothing() + config.lcd.standby = ConfigNothing() + config.lcd.bright.apply = lambda : doNothing() + config.lcd.standby.apply = lambda : doNothing()