当前位置: 首页>>代码示例>>Python>>正文


Python SelectionList.getSelectedIndex方法代码示例

本文整理汇总了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()
#.........这里部分代码省略.........
开发者ID:et-plugins,项目名称:et-live-links,代码行数:103,代码来源:plugin.py

示例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 = ''
开发者ID:mcron,项目名称:enigma2,代码行数:70,代码来源:plugin.py


注:本文中的Components.SelectionList.SelectionList.getSelectedIndex方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。