From: Andreas Monzner Date: Mon, 26 Nov 2007 12:39:43 +0000 (+0000) Subject: dont show display contrast setting in display setup when a oled is detected X-Git-Tag: 2.6.0~1685 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/1c21fe13bb453d0f11c8a40461b3bfe7dba5cef1 dont show display contrast setting in display setup when a oled is detected make standby display brightness working --- diff --git a/lib/gdi/lcd.h b/lib/gdi/lcd.h index de495719..e45d88b2 100644 --- a/lib/gdi/lcd.h +++ b/lib/gdi/lcd.h @@ -56,6 +56,7 @@ public: int setLCDContrast(int contrast); int setLCDBrightness(int brightness); void setInverted( unsigned char ); + bool isOled() const { return !!is_oled; } void update(); }; diff --git a/lib/python/Components/Lcd.py b/lib/python/Components/Lcd.py index b043f393..eb3e3df1 100644 --- a/lib/python/Components/Lcd.py +++ b/lib/python/Components/Lcd.py @@ -1,4 +1,4 @@ -from config import config, ConfigSubsection, ConfigSlider, ConfigYesNo +from config import config, ConfigSubsection, ConfigSlider, ConfigYesNo, ConfigNothing from enigma import eDBoxLCD @@ -25,14 +25,10 @@ class LCD: value = 255 eDBoxLCD.getInstance().setInverted(value) -def InitLcd(): - config.lcd = ConfigSubsection(); - config.lcd.bright = ConfigSlider(default=10, limits=(0, 10)) - config.lcd.contrast = ConfigSlider(default=5, limits=(0, 20)) - config.lcd.standby = ConfigSlider(default=0, limits=(0, 10)) - config.lcd.invert = ConfigYesNo(default=False) + def isOled(self): + return eDBoxLCD.getInstance().isOled() - ilcd = LCD() +def InitLcd(): def setLCDbright(configElement): ilcd.setBright(configElement.value); @@ -43,6 +39,22 @@ def InitLcd(): def setLCDinverted(configElement): ilcd.setInverted(configElement.value); + ilcd = LCD() + + config.lcd = ConfigSubsection(); + + config.lcd.bright = ConfigSlider(default=10, limits=(0, 10)) config.lcd.bright.addNotifier(setLCDbright); - config.lcd.contrast.addNotifier(setLCDcontrast); + config.lcd.bright.apply = lambda : setLCDbright(config.lcd.bright) + + if not ilcd.isOled(): + config.lcd.contrast = ConfigSlider(default=5, limits=(0, 20)) + config.lcd.contrast.addNotifier(setLCDcontrast); + else: + 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); diff --git a/lib/python/Screens/Setup.py b/lib/python/Screens/Setup.py index 1f262e32..3439954d 100644 --- a/lib/python/Screens/Setup.py +++ b/lib/python/Screens/Setup.py @@ -1,6 +1,6 @@ from Screen import Screen from Components.ActionMap import NumberActionMap -from Components.config import config +from Components.config import config, ConfigNothing from Components.ConfigList import ConfigListScreen from Components.Label import Label from Components.Pixmap import Pixmap @@ -138,7 +138,8 @@ class Setup(ConfigListScreen, Screen): item = b # the first b is the item itself, ignored by the configList. # the second one is converted to string. - list.append( (item_text, item) ) + if not isinstance(item, ConfigNothing): + list.append( (item_text, item) ) def getSetupTitle(id): xmldata = setupdom.childNodes[0].childNodes diff --git a/lib/python/Screens/Standby.py b/lib/python/Screens/Standby.py index 6807c1aa..b8af16f5 100644 --- a/lib/python/Screens/Standby.py +++ b/lib/python/Screens/Standby.py @@ -2,7 +2,7 @@ from Screen import Screen from Components.ActionMap import ActionMap from Components.config import config from Components.AVSwitch import AVSwitch -from enigma import eDVBVolumecontrol, eDBoxLCD +from enigma import eDVBVolumecontrol from Components.Sources.Source import ObsoleteSource inStandby = None @@ -18,7 +18,7 @@ class Standby(Screen): #unmute adc self.leaveMute() #set brightness of lcd - eDBoxLCD.getInstance().setLCDBrightness(config.lcd.bright.value * 20) + config.lcd.bright.apply() #kill me self.close(True) @@ -54,7 +54,7 @@ class Standby(Screen): #set input to vcr scart self.avswitch.setInput("SCART") #set lcd brightness to standby value - eDBoxLCD.getInstance().setLCDBrightness(config.lcd.standby.value * 20) + config.lcd.standby.apply() self.onShow.append(self.__onShow) self.onHide.append(self.__onHide)