diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-11-22 20:20:29 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-11-22 20:20:29 +0000 |
| commit | 4abbbe07af12cb550130f51dfe00d667fd7c5f57 (patch) | |
| tree | 57bf4c4da5dd346f3978c8bf3a491e66047d1eed /lib/python | |
| parent | 06f7820d3c5fff95b0609c1e5830cc234a0b2741 (diff) | |
| download | enigma2-4abbbe07af12cb550130f51dfe00d667fd7c5f57.tar.gz enigma2-4abbbe07af12cb550130f51dfe00d667fd7c5f57.zip | |
add possibility to use colored buttons to call functions in open choicelist
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Screens/ChoiceBox.py | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/lib/python/Screens/ChoiceBox.py b/lib/python/Screens/ChoiceBox.py index d1bac9f8..b378f2ac 100644 --- a/lib/python/Screens/ChoiceBox.py +++ b/lib/python/Screens/ChoiceBox.py @@ -72,7 +72,6 @@ class ChoiceBox(Screen): if self["list"].l.getCurrentSelection()[0][0] != "--" or self["list"].l.getCurrentSelectionIndex() == len(self["list"].list) - 1: break - def keyNumberGlobal(self, number): print "pressed", number if self.keymap.has_key(str(number)): @@ -86,19 +85,36 @@ class ChoiceBox(Screen): def keyRed(self): if self.keymap.has_key("red"): - self.close(self.keymap["red"]) + entry = self.keymap["red"] + if len(entry) > 2 and isinstance(entry[1], str) and entry[1] == "CALLFUNC": + entry[2](self["list"].l.getCurrentSelection()[0]) + else: + self.close(entry) def keyGreen(self): if self.keymap.has_key("green"): - self.close(self.keymap["green"]) + entry = self.keymap["green"] + print entry + if len(entry) > 2 and isinstance(entry[1], str) and entry[1] == "CALLFUNC": + entry[2](self["list"].l.getCurrentSelection()[0]) + else: + self.close(entry) def keyYellow(self): if self.keymap.has_key("yellow"): - self.close(self.keymap["yellow"]) - + entry = self.keymap["yellow"] + if len(entry) > 2 and isinstance(entry[1], str) and entry[1] == "CALLFUNC": + entry[2](self["list"].l.getCurrentSelection()[0]) + else: + self.close(entry) + def keyBlue(self): if self.keymap.has_key("blue"): - self.close(self.keymap["blue"]) - + entry = self.keymap["blue"] + if len(entry) > 2 and isinstance(entry[1], str) and entry[1] == "CALLFUNC": + entry[2](self["list"].l.getCurrentSelection()[0]) + else: + self.close(entry) + def cancel(self): self.close(None) |
