move more code to onCreate
[enigma2.git] / lib / python / Screens / InfoBarGenerics.py
index dc597d22b05597540d682b56c0fe9e58f4b7d708..1b080d9bbc4bfcbc4cfdd24c1621899936ae2d1e 100644 (file)
@@ -20,6 +20,7 @@ from Screens.Mute import Mute
 from Screens.Dish import Dish
 from Screens.Standby import Standby
 from Screens.EventView import EventView
+from Components.Harddisk import harddiskmanager
 
 from Tools import Notifications
 
@@ -93,7 +94,7 @@ class InfoBarVolumeControl:
 class InfoBarDish:
        def __init__(self):
                self.dishDialog = self.session.instantiateDialog(Dish)
-               self.onShown.append(self.dishDialog.instance.show)
+               self.onShown.append(self.dishDialog.instance.hide)
 
 class InfoBarShowHide:
        """ InfoBar show/hide control, accepts toggleShow and hide actions, might start
@@ -546,12 +547,16 @@ class InfoBarAdditionalInfo:
                # TODO: get the info from c++ somehow
                self["FormatActive"].setConnect(lambda: False)
                
-               self["ButtonRed"] = Pixmap()
-               self["ButtonRedText"] = Label(_("Record"))
-
+               self["ButtonRed"] = PixmapConditional(withTimer = False)
+               self["ButtonRed"].setConnect(lambda: harddiskmanager.HDDCount() > 0)
+               self.onShown.append(self["ButtonRed"].update)
+               self["ButtonRedText"] = LabelConditional(text = _("Record"), withTimer = False)
+               self["ButtonRedText"].setConnect(lambda: harddiskmanager.HDDCount() > 0)
+               self.onShown.append(self["ButtonRedText"].update)
+                               
                self["ButtonGreen"] = PixmapConditional()
                self["ButtonGreen"].setConnect(lambda: self.session.nav.getCurrentService().subServices().getNumberOfSubservices() > 0)
-               self["ButtonGreenText"] = LabelConditional(text = _("Subservices"), withTimer = True)
+               self["ButtonGreenText"] = LabelConditional(text = _("Subservices"))
                self["ButtonGreenText"].setConnect(lambda: self.session.nav.getCurrentService().subServices().getNumberOfSubservices() > 0)
 
                self["ButtonYellow"] = PixmapConditional()