<widget name="statuspic" pixmaps="skin_default/buttons/button_green.png,skin_default/buttons/button_green_off.png" position="130,380" zPosition="10" size="15,16" transparent="1" alphatest="on"/>
</screen>
<!-- Audio selection -->
- <screen name="AudioSelection" position="center,center" size="420,330" title="Audio">
- <widget name="config" position="50,10" size="360,110" scrollbarMode="showOnDemand" />
+ <screen name="AudioSelection" position="center,center" size="560,330" title="Audio">
+ <widget name="config" position="50,10" size="500,110" scrollbarMode="showOnDemand" />
<widget source="key_red" render="Pixmap" pixmap="skin_default/buttons/key_red.png" position="10,10" size="35,25" alphatest="on">
<convert type="ConditionalShowHide" />
<convert type="ConditionalShowHide" />
</widget>
- <ePixmap pixmap="skin_default/div-h.png" position="10,112" zPosition="10" size="360,2" />
+ <ePixmap pixmap="skin_default/div-h.png" position="10,112" zPosition="10" size="540,2" />
- <widget source="streams" render="Listbox" scrollbarMode="showOnDemand" position="10,120" size="400,200" zPosition="3" transparent="1" >
+ <widget source="streams" render="Listbox" scrollbarMode="showOnDemand" position="10,120" size="540,200" zPosition="3" transparent="1" >
<convert type="TemplatedMultiContent">
{"templates":
{"default": (25, [
MultiContentEntryText(pos = (0, 0), size = (35, 25), font = 0, flags = RT_HALIGN_LEFT, text = 1), # key,
- MultiContentEntryText(pos = (40, 0), size = (55, 25), font = 0, flags = RT_HALIGN_LEFT, text = 2), # number,
- MultiContentEntryText(pos = (100, 0), size = (80, 25), font = 0, flags = RT_HALIGN_LEFT, text = 3), # description,
- MultiContentEntryText(pos = (190, 0), size = (140, 25), font = 0, flags = RT_HALIGN_LEFT, text = 4), # language,
- MultiContentEntryText(pos = (340, 4), size = (60, 25), font = 1, flags = RT_HALIGN_RIGHT, text = 5), # selection,
+ MultiContentEntryText(pos = (40, 0), size = (60, 25), font = 0, flags = RT_HALIGN_LEFT, text = 2), # number,
+ MultiContentEntryText(pos = (110, 0), size = (120, 25), font = 0, flags = RT_HALIGN_LEFT, text = 3), # description,
+ MultiContentEntryText(pos = (240, 0), size = (210, 25), font = 0, flags = RT_HALIGN_LEFT, text = 4), # language,
+ MultiContentEntryText(pos = (460, 4), size = (80, 25), font = 1, flags = RT_HALIGN_RIGHT, text = 5), # selection,
], True, "showNever"),
"notselected": (25, [
MultiContentEntryText(pos = (0, 0), size = (35, 25), font = 0, flags = RT_HALIGN_LEFT, text = 1), # key,
- MultiContentEntryText(pos = (40, 0), size = (55, 25), font = 0, flags = RT_HALIGN_LEFT, text = 2), # number,
- MultiContentEntryText(pos = (100, 0), size = (80, 25), font = 0, flags = RT_HALIGN_LEFT, text = 3), # description,
- MultiContentEntryText(pos = (190, 0), size = (140, 25), font = 0, flags = RT_HALIGN_LEFT, text = 4), # language,
- MultiContentEntryText(pos = (340, 4), size = (60, 25), font = 1, flags = RT_HALIGN_RIGHT, text = 5), # selection,
+ MultiContentEntryText(pos = (40, 0), size = (60, 25), font = 0, flags = RT_HALIGN_LEFT, text = 2), # number,
+ MultiContentEntryText(pos = (110, 0), size = (120, 25), font = 0, flags = RT_HALIGN_LEFT, text = 3), # description,
+ MultiContentEntryText(pos = (240, 0), size = (210, 25), font = 0, flags = RT_HALIGN_LEFT, text = 4), # language,
+ MultiContentEntryText(pos = (460, 4), size = (80, 25), font = 1, flags = RT_HALIGN_RIGHT, text = 5), # selection,
], False, "showNever")
},
"fonts": [gFont("Regular", 20), gFont("Regular", 16)],
from Tools.ISO639 import LanguageCodes
from Tools.BoundFunction import boundFunction
FOCUS_CONFIG, FOCUS_STREAMS = range(2)
+[PAGE_AUDIO, PAGE_SUBTITLES] = ["audio", "subtitles"]
class AudioSelection(Screen, ConfigListScreen):
- def __init__(self, session, infobar=None):
+ def __init__(self, session, infobar=None, page=PAGE_AUDIO):
Screen.__init__(self, session)
self["streams"] = List([])
}, -3)
self.settings = ConfigSubsection()
- choicelist = [("audio",_("audio tracks")), ("subtitles",_("Subtitles"))]
- self.settings.menupage = ConfigSelection(choices = choicelist)
+ choicelist = [(PAGE_AUDIO,_("audio tracks")), (PAGE_SUBTITLES,_("Subtitles"))]
+ self.settings.menupage = ConfigSelection(choices = choicelist, default=page)
self.settings.menupage.addNotifier(self.fillList)
self.onLayoutFinish.append(self.__layoutFinished)
self.audioTracks = audio = service and service.audioTracks()
n = audio and audio.getNumberOfTracks() or 0
- if self.settings.menupage.getValue() == "audio":
+ if self.settings.menupage.getValue() == PAGE_AUDIO:
self.setTitle(_("Select audio track"))
if SystemInfo["CanDownmixAC3"]:
print "config.av.downmix_ac3.value=", config.av.downmix_ac3.value
else:
streams = []
+ self.settings.dummy = ConfigNothing()
+ conflist.append(getConfigListEntry("", self.settings.dummy))
+ self["key_green"].setBoolean(False)
- elif self.settings.menupage.getValue() == "subtitles":
+ elif self.settings.menupage.getValue() == PAGE_SUBTITLES:
self.setTitle(_("Subtitle selection"))
self.settings.dummy = ConfigNothing()
elif x[0] == 1:
description = "TTX"
number = "%x%02x" % (x[3],x[2])
-
+
elif x[0] == 2:
- types = (" UTF-8 text "," SSA / AAS "," .SRT file ")
+ types = ("UTF-8 text","SSA / AAS",".SRT file")
description = types[x[2]]
streams.append((x, "", number, description, language, selected))
ConfigListScreen.keyRight(self)
elif hasattr(self, "plugincallfunc"):
self.plugincallfunc()
- if self.focus == FOCUS_STREAMS and self["streams"].count():
+ if self.focus == FOCUS_STREAMS and self["streams"].count() and config == False:
self["streams"].setIndex(self["streams"].count()-1)
def keyRed(self):
print "[keyok]", self["streams"].list, self["streams"].getCurrent()
if self.focus == FOCUS_STREAMS and self["streams"].list:
cur = self["streams"].getCurrent()
- if self.settings.menupage.getValue() == "audio" and cur[0] is not None:
+ if self.settings.menupage.getValue() == PAGE_AUDIO and cur[0] is not None:
self.changeAudio(cur[2])
self.__updatedInfo()
- if self.settings.menupage.getValue() == "subtitles" and cur[0] is not None:
+ if self.settings.menupage.getValue() == PAGE_SUBTITLES and cur[0] is not None:
if self.infobar.selected_subtitle == cur[0]:
self.enableSubtitle(None)
selectedidx = self["streams"].getIndex()
def cancel(self):
self.close(0)
+
+class SubtitleSelection(AudioSelection):
+ def __init__(self, session, infobar=None):
+ AudioSelection.__init__(self, session, infobar, page=PAGE_SUBTITLES)
+ self.skinName = ["AudioSelection"]