aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Screens/Menu.py
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2007-10-20 07:20:08 +0000
committerFelix Domke <tmbinc@elitedvb.net>2007-10-20 07:20:08 +0000
commit34be902fbb3d1809348ef3b88b2d6617d34e524b (patch)
tree0074cc3c56f9cd6adf1c7133277ea144e76bbef2 /lib/python/Screens/Menu.py
parentfbcb13d912ac378180a4975be5163d98510e42d9 (diff)
downloadenigma2-34be902fbb3d1809348ef3b88b2d6617d34e524b.tar.gz
enigma2-34be902fbb3d1809348ef3b88b2d6617d34e524b.zip
allow selection of menu entries with numbers. Patch by Moritz Venn (enigma2_enable_numbers_in_menu.patch) with minor changes.
Diffstat (limited to 'lib/python/Screens/Menu.py')
-rw-r--r--lib/python/Screens/Menu.py26
1 files changed, 22 insertions, 4 deletions
diff --git a/lib/python/Screens/Menu.py b/lib/python/Screens/Menu.py
index bba64040..22aee7d9 100644
--- a/lib/python/Screens/Menu.py
+++ b/lib/python/Screens/Menu.py
@@ -1,6 +1,6 @@
from Screen import Screen
from Components.Sources.List import List
-from Components.ActionMap import ActionMap
+from Components.ActionMap import NumberActionMap
from Components.Sources.StaticText import StaticText
from Components.config import configfile
from Components.PluginComponent import plugins
@@ -204,19 +204,37 @@ class Menu(Screen):
self["menu"] = List(list)
- self["actions"] = ActionMap(["OkCancelActions", "MenuActions"],
+ self["actions"] = NumberActionMap(["OkCancelActions", "MenuActions", "NumberActions"],
{
"ok": self.okbuttonClick,
"cancel": self.closeNonRecursive,
- "menu": self.closeRecursive
+ "menu": self.closeRecursive,
+ "1": self.keyNumberGlobal,
+ "2": self.keyNumberGlobal,
+ "3": self.keyNumberGlobal,
+ "4": self.keyNumberGlobal,
+ "5": self.keyNumberGlobal,
+ "6": self.keyNumberGlobal,
+ "7": self.keyNumberGlobal,
+ "8": self.keyNumberGlobal,
+ "9": self.keyNumberGlobal
})
-
+
a = parent.getAttribute("title").encode("UTF-8") or None
if a is None:
a = _(parent.getAttribute("text").encode("UTF-8"))
self["title"] = StaticText(a)
self.menu_title = a
+ def keyNumberGlobal(self, number):
+ print "menu keyNumber:", number
+ # Calculate index
+ number -= 1
+
+ if len(self["menu"].list) > number:
+ self["menu"].setIndex(number)
+ self.okbuttonClick()
+
def closeNonRecursive(self):
self.close(False)