Menu.py: add possibility to use the exclamation mark as NOT indicator in menu/setup...
authorghost <andreas.monzner@multimedia-labs.de>
Thu, 3 Dec 2009 15:40:44 +0000 (16:40 +0100)
committerghost <andreas.monzner@multimedia-labs.de>
Thu, 3 Dec 2009 15:43:54 +0000 (16:43 +0100)
lib/python/Screens/Menu.py

index 5f2032f..bb0709e 100644 (file)
@@ -97,8 +97,12 @@ class Menu(Screen):
 
        def addMenu(self, destList, node):
                requires = node.get("requires")
-               if requires and not SystemInfo.get(requires, False):
-                       return
+               if requires:
+                       if requires[0] == '!':
+                               if SystemInfo.get(requires[1:], False):
+                                       return
+                       elif not SystemInfo.get(requires, False):
+                               return
                MenuTitle = _(node.get("text", "??").encode("UTF-8"))
                entryID = node.get("entryID", "undefined")
                weight = node.get("weight", 50)
@@ -120,8 +124,12 @@ class Menu(Screen):
 
        def addItem(self, destList, node):
                requires = node.get("requires")
-               if requires and not SystemInfo.get(requires, False):
-                       return
+               if requires:
+                       if requires[0] == '!':
+                               if SystemInfo.get(requires[1:], False):
+                                       return
+                       elif not SystemInfo.get(requires, False):
+                               return
                item_text = node.get("text", "").encode("UTF-8")
                entryID = node.get("entryID", "undefined")
                weight = node.get("weight", 50)