本文整理汇总了Python中Components.SelectionList.SelectionList.getSelectedIndex方法的典型用法代码示例。如果您正苦于以下问题:Python SelectionList.getSelectedIndex方法的具体用法?Python SelectionList.getSelectedIndex怎么用?Python SelectionList.getSelectedIndex使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Components.SelectionList.SelectionList
的用法示例。
在下文中一共展示了SelectionList.getSelectedIndex方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: LiveStreamingLinks
# 需要导入模块: from Components.SelectionList import SelectionList [as 别名]
# 或者: from Components.SelectionList.SelectionList import getSelectedIndex [as 别名]
class LiveStreamingLinks(Screen):
LIST_NAME = 0
LIST_CAT = 1
LIST_TYPE = 2
LIST_URL = 3
LEVEL_FILES = 0
LEVEL_XML = 1
DIR_ENIGMA2 = '/etc/enigma2/'
URL_BASE = 'http://et-live-links.googlecode.com/svn/trunk/'
skin = """
<screen position="c-300,c-210" size="600,420" title="">
<widget name="list" position="10,10" size="e-20,205" scrollbarMode="showOnDemand" />
<widget source="info" render="Label" position="10,215" size="e-20,200" halign="center" valign="top" font="Regular;17" />
<ePixmap pixmap="skin_default/buttons/red.png" position="c-150,e-45" size="140,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/green.png" position="c-0,e-45" size="140,40" alphatest="on" />
<widget source="key_red" render="Label" position="c-150,e-45" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
<widget source="key_green" render="Label" position="c-0,e-45" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
</screen>"""
def __init__(self, session):
self.skin = LiveStreamingLinks.skin
Screen.__init__(self, session)
self["key_red"] = StaticText(_("Cancel"))
self["key_green"] = StaticText(_("Download"))
self["actions"] = ActionMap(["SetupActions", "ColorActions"],
{
"ok": self.keyOk,
"save": self.keyGo,
"cancel": self.keyCancel,
"green": self.keyGo,
"red": self.keyCancel,
}, -2)
self.list = SelectionList()
self["list"] = self.list
self["info"] = StaticText("")
self.doExit = False
self.level = self.LEVEL_FILES
self.subMenuName = ''
self.subMenuDescrName = ''
self.xmlFiles = []
self.xmlCategories = []
self.lastchanged = ''
self.lastchanges = ''
self.onLayoutFinish.append(self.createTopMenu)
def initSelectionList(self):
list = []
self.list.setList(list)
def createTopMenu(self):
self.setTitle(_("ET-Livestream importer"))
self.initSelectionList()
self.subMenuName = ''
self.subMenuDescrName = ''
self.level = self.LEVEL_FILES
self.readMainXml()
count = 0
for x in self.xmlFiles:
self.list.addSelection(x[self.LIST_CAT], x[self.LIST_NAME], count, False)
count += 1
self["info"].setText("")
def readXmlSubFile(self, fileName, descrName):
self.initSelectionList()
self.xmlList = []
self.subMenuName = fileName
self.subMenuDescrName = descrName
self.level = self.LEVEL_XML
self.readChannelXml(self.xmlList, fileName)
tmp = _('Last update') + ': %s\n\n%s' % (self.lastchanged, self.lastchanges)
self["info"].setText(tmp)
count = 0
for x in self.xmlCategories:
self.list.addSelection(x, x, count, False)
count += 1
def keyOk(self):
if self.level == self.LEVEL_FILES:
self.keyGo()
elif self.level == self.LEVEL_XML:
if len(self.xmlCategories) > 0:
self.list.toggleSelection()
def keyGo(self):
if self.level == self.LEVEL_FILES:
self.readXmlSubFile(self.xmlFiles[self.list.getSelectedIndex()][self.LIST_NAME], self.xmlFiles[self.list.getSelectedIndex()][self.LIST_CAT])
return
self.doExit = False
tmpList = []
tmpList = self.list.getSelectionsList()
if len(tmpList) == 0:
self.session.openWithCallback(self.infoCallback, MessageBox, _("Nothing selected"), MessageBox.TYPE_INFO)
return
self.xmlList.sort()
#.........这里部分代码省略.........
示例2: IPTVStreams
# 需要导入模块: from Components.SelectionList import SelectionList [as 别名]
# 或者: from Components.SelectionList.SelectionList import getSelectedIndex [as 别名]
#.........这里部分代码省略.........
self.level = self.LEVEL_XML
self.readChannelXml3(self.xmlList, fileName)
tmp = _('Last update') + ': %s\n\n%s' % (self.lastchanged, self.lastchanges)
self['info'].setText(tmp)
count = 0
for x in self.xmlCategories:
self.list.addSelection(x, x, count, False)
count += 1
def wgetUrl2(self, url2):
std_headers = {'User-Agent': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.6) Gecko/20100627 Firefox/3.6.6',
'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en-us,en;q=0.5'}
outtxt = Request(url2, None, std_headers)
try:
outtxt = urlopen(url2).read()
except (URLError, HTTPException) as err:
return ''
return outtxt
def keyOk(self):
if self.level == self.LEVEL_FILES:
print 'in Keyok 1'
self.keyGo()
elif self.level == self.LEVEL_XML:
print 'in Keyok 2'
if len(self.xmlCategories) > 0:
self.list.toggleSelection()
def keyGo(self):
if self.level == self.LEVEL_FILES:
self.readXmlSubFile(self.xmlFiles[self.list.getSelectedIndex()][self.LIST_NAME], self.xmlFiles[self.list.getSelectedIndex()][self.LIST_CAT])
return
self.doExit = False
tmpList = []
tmpList = self.list.getSelectionsList()
if len(tmpList) == 0:
self.session.openWithCallback(self.infoCallback, MessageBox, _('Nothing selected'), MessageBox.TYPE_INFO)
return
self.xmlList.sort()
tvFileList = []
radioFileList = []
for item in tmpList:
if self.createUserBouquetFile(item[1], 'tv') > 0:
tvFileList.append(item[1])
if self.createUserBouquetFile(item[1], 'radio') > 0:
radioFileList.append(item[1])
if len(tvFileList) > 0:
self.createBouquetFile(tvFileList, 'tv')
if len(radioFileList) > 0:
self.createBouquetFile(radioFileList, 'radio')
db = eDVBDB.getInstance()
db.reloadServicelist()
db.reloadBouquets()
self.doExit = True
self.session.openWithCallback(self.infoCallback, MessageBox, _('Successfully Imported:\nChannels Now Available in your bouquet/Favorite list'), MessageBox.TYPE_INFO)
def infoCallback(self, confirmed):
if self.doExit:
self.createTopMenu()
def createBouquetFile(self, catNames, fileType):
newFileContent = ''