diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2011-04-26 13:16:35 +0200 |
|---|---|---|
| committer | ghost <andreas.monzner@multimedia-labs.de> | 2011-04-26 13:16:35 +0200 |
| commit | 3844bdf4b8660834cd3a07b89882f450312eb2c2 (patch) | |
| tree | e904f215055822ffcda264d27f2229fb5acc39d6 /lib | |
| parent | 06d7275867f5737235100f50f3ad7d5ec2f526fc (diff) | |
| download | enigma2-3844bdf4b8660834cd3a07b89882f450312eb2c2.tar.gz enigma2-3844bdf4b8660834cd3a07b89882f450312eb2c2.zip | |
re-add audio track selection by number keys (patch by ritzmo)
refs bug #752
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/python/Screens/AudioSelection.py | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/lib/python/Screens/AudioSelection.py b/lib/python/Screens/AudioSelection.py index 4c689620..a5e09c0b 100644 --- a/lib/python/Screens/AudioSelection.py +++ b/lib/python/Screens/AudioSelection.py @@ -1,6 +1,6 @@ from Screen import Screen from Components.ServiceEventTracker import ServiceEventTracker -from Components.ActionMap import ActionMap +from Components.ActionMap import NumberActionMap from Components.ConfigList import ConfigListScreen from Components.ChoiceList import ChoiceList, ChoiceEntryComponent from Components.config import config, ConfigSubsection, getConfigListEntry, ConfigNothing, ConfigSelection, ConfigOnOff @@ -36,7 +36,7 @@ class AudioSelection(Screen, ConfigListScreen): self.cached_subtitle_checked = False self.__selected_subtitle = None - self["actions"] = ActionMap(["ColorActions", "SetupActions", "DirectionActions"], + self["actions"] = NumberActionMap(["ColorActions", "SetupActions", "DirectionActions"], { "red": self.keyRed, "green": self.keyGreen, @@ -46,6 +46,15 @@ class AudioSelection(Screen, ConfigListScreen): "cancel": self.cancel, "up": self.keyUp, "down": self.keyDown, + "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, }, -2) self.settings = ConfigSubsection() @@ -87,7 +96,7 @@ class AudioSelection(Screen, ConfigListScreen): self["key_green"].setBoolean(False) selectedAudio = self.audioTracks.getCurrentTrack() for x in range(n): - number = str(x) + number = str(x + 1) i = audio.getTrackInfo(x) languages = i.getLanguage().split('/') description = i.getDescription() or _("<unknown>") @@ -289,11 +298,16 @@ class AudioSelection(Screen, ConfigListScreen): elif self.focus == FOCUS_STREAMS: self["streams"].selectNext() + def keyNumberGlobal(self, number): + if number <= len(self["streams"].list): + self["streams"].setIndex(number-1) + self.keyOk() + def keyOk(self): if self.focus == FOCUS_STREAMS and self["streams"].list: cur = self["streams"].getCurrent() if self.settings.menupage.getValue() == PAGE_AUDIO and cur[0] is not None: - self.changeAudio(cur[2]) + self.changeAudio(cur[0]) self.__updatedInfo() if self.settings.menupage.getValue() == PAGE_SUBTITLES and cur[0] is not None: if self.infobar.selected_subtitle == cur[0]: |
