예제 #1
0
	def __init__(self, session, plugin_path):
		self.skin = xpower.skin
		self.session = session
		self.ppath = plugin_path
		self.setup_title = _("XPower")

		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		self["key_red"] = Button(_("Close"))
		self["key_green"] = Button(_("Add/Edit"))
		self["key_yellow"] = Button(_("Delete"))
		self["key_blue"] = Button(_("Help"))

		self.list = []

                self["config"] = List(self.list)
		self["statusbar"] = Label()
		self.text = _("User defined...")

		self["XPowerActions"] = HelpableActionMap(self, "XPowerActions",
			{
			"red": (self.cancel, _("Close plugin")),
			"green": (self.keyOK, _("Add/Edit item")),
			"yellow": (self.deleteItem, _("Delete selected item")),
			"blue": (self.help, _("Help")),
			"bouqdn": (self.bouqDown, self.text),
			"cancel": (self.cancel, _("Close plugin")),
			"ok": (self.keyOK, _("Add/Edit item")),
			"menu": (self.showMenu, _("Select power management")),

			"shutdown": (self.shutdown, _("Shutdown")),
			"wakeup": (self.wakeup, _("WakeUp")),
			"abort": (self.abort,_("Abort shutdown / reboot")),
			"restart": (self.reboot, _("Reboot")),
			"suspend": (self.suspend, _("Suspend")),
			"hibernate": (self.hibernate, _("Hibernate")),
			}, -1)

		self.ipStr = _("IP:")+" "
		self.macStr = _("MAC:")+" "

		self.menu = []
		self.menu.append((_("WakeUp"),"wakeup"))
		self.menu.append((_("Suspend"),"suspend"))
		self.menu.append((_("Shutdown"),"shutdown"))
		self.menu.append((_("Reboot"),"reboot"))
		self.menu.append((_("Hibernate"),"hibernate"))
		self.menu.append((_("Abort shutdown / reboot"),"abort"))

		self.pcinfo = None
		self.showPCsList()

		self.commandTimer = eTimer()
		self.commandTimer.timeout.get().append(self.sendDelayed)
		
		self.onShown.append(self.prepare)
		self["config"].onSelectionChanged.append(self.statusbarText)

		self.onChangedEntry = []
예제 #2
0
    def __init__(self, session, args = None):
        #self.skin = CurlyTx.skin
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        #self.skinName = [ "CurlyTx", "Setup" ]

        self["text"] = ScrollLabel("foo")

        self["key_red"]    = StaticText(_("Settings"))
        self["key_green"]  = StaticText(_("Reload"))
        self["key_yellow"] = StaticText(_("Prev"))
        self["key_blue"]   = StaticText(_("Next"))


        self["actions"] = ActionMap(
            ["WizardActions", "ColorActions", "InputActions", "InfobarEPGActions"], {
                "ok":   self.close,
                "back": self.close,
                "up":   self.pageUp,
                "down": self.pageDown,

                "red":    self.showSettings,
                "green":  self.reload,
                "yellow": self.prevPage,
                "blue":   self.nextPage,

                "showEventInfo": self.showHeader
            }, -1)

        self.loadHelp()
        self.loadButtons()
        self.onLayoutFinish.append(self.afterLayout)
예제 #3
0
파일: plugin.py 프로젝트: kingvuplus/test2
	def __init__(self, session):
		self.liste = []
		self.size = config.plugins.piconmanager.size.value
		self.creator = config.plugins.piconmanager.creator.value
		self.bit = config.plugins.piconmanager.bit.value
		self.server = config.plugins.piconmanager.server.value
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		ConfigListScreen.__init__(self, self.liste, on_change = self.load_list)
		self.setTitle(_("PiconManagerMod - Settings"))
		self["key_green"] = Label(_("OK"))
		self["key_red"] = Label(_("Cancel"))
		
		self["SetupActions"] = HelpableActionMap(self, "SetupActions", 
		{
			"cancel": (self.cancel,_("Cancel")),
			"ok": (self.save,_("OK and exit")),
		}, -1)
		
		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
		{
			"green": (self.save,_("OK and exit")),
			"red": (self.cancel,_("Cancel")),
		}, -1)
		self.onLayoutFinish.append(self.load_list)
예제 #4
0
파일: plugin.py 프로젝트: Open-Plus/opgui
	def __init__(self, session, args = None):
		Screen.__init__(self, session)
		InfoBarAudioSelection.__init__(self)
		InfoBarAspectSelection.__init__(self)
		InfoBarCueSheetSupport.__init__(self, actionmap = "MediaPlayerCueSheetActions")
		InfoBarNotifications.__init__(self)
		InfoBarBase.__init__(self)
		InfoBarScreenSaver.__init__(self)
		InfoBarSubtitleSupport.__init__(self)
		HelpableScreen.__init__(self)
		InfoBarResolutionSelection.__init__(self)
		self.summary = None
		self.oldService = self.session.nav.getCurrentlyPlayingServiceReference()
		self.session.nav.stopService()

		self.playlistparsers = {}
		self.addPlaylistParser(PlaylistIOM3U, "m3u")
		self.addPlaylistParser(PlaylistIOPLS, "pls")
		self.addPlaylistParser(PlaylistIOInternal, "e2pls")

		# 'None' is magic to start at the list of mountpoints
		try:
			defaultDir = config.mediaplayer.defaultDir.value
		except:
			Load_defaults()
			defaultDir = config.mediaplayer.defaultDir.value
		self.filelist = FileList(defaultDir, matchingPattern = "(?i)^.*\.(mp2|mp3|ogg|ts|trp|mts|m2ts|wav|wave|m3u|pls|e2pls|mpg|vob|avi|divx|m4v|mkv|mp4|m4a|dat|flac|flv|mov|dts|3gp|3g2|asf|wmv|wma|webm)", useServiceRef = True, additionalExtensions = "4098:m3u 4098:e2pls 4098:pls")
		self["filelist"] = self.filelist

		self.playlist = MyPlayList()
		self.is_closing = False
		self.hiding = False
		self.delname = ""
		self.playlistname = ""
		self["playlist"] = self.playlist

		self["PositionGauge"] = ServicePositionGauge(self.session.nav)

		self["currenttext"] = Label("")

		self["artisttext"] = Label(_("Artist")+':')
		self["artist"] = Label("")
		self["titletext"] = Label(_("Title")+':')
		self["title"] = Label("")
		self["albumtext"] = Label(_("Album")+':')
		self["album"] = Label("")
		self["yeartext"] = Label(_("Year")+':')
		self["year"] = Label("")
		self["genretext"] = Label(_("Genre")+':')
		self["genre"] = Label("")
		self["coverArt"] = MediaPixmap()
		self["repeat"] = MultiPixmap()

		self.seek_target = None

		try:
			from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
			hotplugNotifier.append(self.hotplugCB)
		except Exception, ex:
			print "[MediaPlayer] No hotplug support", ex
예제 #5
0
def AutoTimerGraphMultiEPG__init__(self, session, services, zapFunc=None, bouquetChangeCB=None, bouquetname=""):
    try:
        baseGraphMultiEPG__init__(self, session, services, zapFunc, bouquetChangeCB, bouquetname)
    except:
        baseGraphMultiEPG__init__(self, session, services, zapFunc, bouquetChangeCB)
    if config.plugins.autotimer.add_to_graph.value:

        def showAutoTimer():
            open_list = [
                (_("Open standard setup menu"), "setup"),
                (_("Add new AutoTimer"), "add"),
                (_("Preview for your AutoTimers"), "preview"),
                (_("Search new events matching for your AutoTimers"), "search"),
                (_("Timers list"), "timerlist"),
            ]
            dlg = self.session.openWithCallback(
                self.CallbackToGraphMultiEPG, ChoiceBox, title=_("Select action for AutoTimer:"), list=open_list
            )
            dlg.setTitle(_("Choice list AutoTimer"))

        HelpableScreen.__init__(self)
        self["AutoTimeractions"] = HelpableActionMap(
            self, "ChannelSelectEditActions", {"contextMenu": (showAutoTimer, _("Choice list AutoTimer"))}, -1
        )
        self["AutoTimeractions"].csel = self
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		ChannelsBase.__init__(self)
		
		self.session = session
		
		self.skinName = [ "SeriesPluginChannelEditor" ]
		
		from plugin import NAME, VERSION
		self.setup_title = NAME + " " + _("Channel Editor") + " " + VERSION
		
		# Buttons
		self["key_red"] = Button(_("Cancel"))
		self["key_green"] = Button(_("OK"))
		self["key_blue"] = Button(_("Remove"))
		self["key_yellow"] = Button(_("Auto match"))
		
		# Define Actions
		self["actions_1"] = HelpableActionMap(self, "SetupActions", {
			"ok"       : (self.keyAdd, _("Show popup to add Stb Channel")),
			"cancel"   : (self.keyCancel, _("Cancel and close")),
			"deleteForward"   : (self.keyResetChannelMapping, _("Reset channels")),
		}, -1)
		self["actions_2"] = HelpableActionMap(self, "DirectionActions", {
			"left"     : (self.keyLeft, _("Previeous page")),
			"right"    : (self.keyRight, _("Next page")),
			"up"       : (self.keyUp, _("One row up")),
			"down"     : (self.keyDown, _("One row down")),
		}, -1)
		self["actions_3"] = HelpableActionMap(self, "ColorActions", {
			"red"      : (self.keyCancel, _("Cancel and close")),
			"green"    : (self.keySave, _("Save and close")),
			"blue"     : (self.keyRemove, _("Remove channel")),
			"yellow"   : (self.tryToMatchChannels, _("Auto match")),
		}, -2) # higher priority
		
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["HelpActions",], {
			"displayHelp"      : self.showHelp
		}, 0)

		self.chooseMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent)
		global TemplatedListFonts
		if TemplatedListFonts is not None:
			tlf = TemplatedListFonts()
			self.chooseMenuList.l.setFont(0, gFont(tlf.face(tlf.MEDIUM), tlf.size(tlf.MEDIUM)))
			self.chooseMenuList.l.setItemHeight(30)
		else:
			self.chooseMenuList.l.setFont(0, gFont('Regular', 20 ))
			self.chooseMenuList.l.setItemHeight(25)
		self['list'] = self.chooseMenuList
		self['list'].show()

		self.stbChlist = []
		self.webChlist = []
		self.stbToWebChlist = []
		
		self.onLayoutFinish.append(self.readChannels)
예제 #7
0
파일: plugin.py 프로젝트: popazerty/e2-gui
    def __init__(self, session, parent):
        size_w = getDesktop(0).size().width()
        size_h = getDesktop(0).size().height()
        self.skin = """<screen position="0,0" size="%i,%i" flags="wfNoBorder" title="LastFMSaveScreen" >
                <widget name="cover" position="50,50" size="%i,%i" />
              </screen>""" % (size_w, size_h, self.coverartsize[0], self.coverartsize[1])

        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        self.imageconverter = ImageConverter(self.coverartsize[0], self.coverartsize[1], self.setCoverArt)
        self.session = session
        self.streamplayer = parent.streamplayer
        self.parent = parent
        self["cover"] = MovingPixmap()

        self["actions"] = HelpableActionMap(self, ["WizardActions", "ShortcutActions"], {
            "ok": (self.action_exit, _("Exit screensaver")),
            "back": (self.action_exit, _("Exit screensaver")),
            "red": (self.parent.action_startstop, _("Start/stop streaming")),
            "green": (self.parent.skipTrack, _("Skip current track")),
            "yellow": (self.parent.love, _("Mark track as loved")),
            "blue": (self.parent.banTrack, _("Ban track, never play"))
        }, prio=-1, description=config.plugins.LastFM.name.value + " " + _("Screensaver"))

        self.onLayoutFinish.append(self.update)
        self.updatetimer = eTimer()
        self.updatetimer.timeout.get().append(self.update)
        self.updatetimer.start(1000)

        if config.plugins.LastFM.sreensaver.coverartanimation.value:
            self.startmovingtimer = eTimer()
            self.startmovingtimer.timeout.get().append(self.movePixmap)
            self.startmovingtimer.start(config.plugins.LastFM.sreensaver.coverartinterval.value * 1000)
	def __init__(self, session, withTVPlanner=False):
		serienRecBaseScreen.__init__(self, session)
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.session = session
		self.withTVPlanner = withTVPlanner
		print "[SerienRecorder] 0__init__ withTVPlanner:", withTVPlanner
		self.autoCheckRunning = False

		self["actions"] = HelpableActionMap(self, "SerienRecorderActions", {
			"red": (self.keyCancel, "zurück zur vorherigen Ansicht"),
			"cancel": (self.keyCancel, "zurück zur vorherigen Ansicht"),
			"menu": (self.recSetup, "Menü für globale Einstellungen öffnen"),
			"3"	: (self.showProposalDB, "Liste der Serien/Staffel-Starts anzeigen"),
			"6"		: (self.showConflicts, "Liste der Timer-Konflikte anzeigen"),
			"7"		: (self.showWishlist, "Merkzettel (vorgemerkte Folgen) anzeigen"),
		}, -1)
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["SerienRecorderActions" ,], {
			"displayHelp"      : self.showHelp,
			"displayHelp_long" : self.showManual,
		}, 0)

		self.setupSkin()
		self.logliste = []
		self.points = ""

		self.readLogTimer = eTimer()
		self.readLogTimer_conn = None

		self.onLayoutFinish.append(self.setSkinProperties)
		self.onLayoutFinish.append(self.startCheck)
		self.onClose.append(self.__onClose)
	def __init__(self, session, initDir, title, seriesName=''):
		serienRecBaseScreen.__init__(self, session)
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.fullpath = ""
		self.initDir = initDir
		self.title = title
		self.seriesNames = seriesName
		self.skin = None

		self["actions"] = HelpableActionMap(self, "SerienRecorderActions", {
			"cancel": (self.keyCancel, "zurück zur vorherigen Ansicht"),
			"left": (self.keyLeft, "zur vorherigen Seite blättern"),
			"right": (self.keyRight, "zur nächsten Seite blättern"),
			"up": (self.keyUp, "eine Zeile nach oben"),
			"down": (self.keyDown, "eine Zeile nach unten"),
			"ok": (self.keyOk, "ins ausgewählte Verzeichnis wechseln"),
			"green": (self.keyGreen, "ausgewähltes Verzeichnis übernehmen"),
			"red": (self.keyRed, "ausgewähltes Verzeichnis löschen"),
			"yellow": (self.keyYellow, "auf globales Aufnahmeverzeichnis zurücksetzen"),
			"blue": (self.keyBlue, "neues Verzeichnis anlegen"),
		}, -1)
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["SerienRecorderActions", ], {
			"displayHelp": self.showHelp,
			"displayHelp_long": self.showManual,
		}, 0)

		self.setupSkin()

		if config.plugins.serienRec.showAllButtons.value:
			setMenuTexts(self)
		self.updateFile()
		self.onLayoutFinish.append(self.setSkinProperties)
	def __init__(self, session, services):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		
		# Dict[service] = List of cutlist ids
		self.cutlists = dict((k,None) for k in services)
		
		# Dict[id] = Cutfile
		self.cutfiles = {}
		
		self.customAT = None
		
		# Buttons
		self["key_red"]    = StaticText( _("Show") ) #"_("Download") )
		self["key_green"]  = StaticText( _("Custom") )
		self["key_yellow"] = StaticText("")
		self["key_blue"]   = StaticText( _("Remove") )
		
		self["custom_actions"] = HelpableActionMap(self, "CutlistDownloaderActions",
		{
			"ok":						(self.select,							_("Show available Cutlists")),
			"exit":					(self.exit,								_("Exit")),
			"red":					(self.select,							_("Show available Cutlists")),
			"green":				(self.custom,							_("Customize search string")),
			#"yellow":			(self.bestdownload,			 _("Page up")),
			"blue":					(self.remove,							_("Remove Marker")),
		}, -1) 
		
		self["list"] = ServiceList( [ (s,'-') for s in self.cutlists.iterkeys()] )
		
		self.onLayoutFinish.append( self.layoutFinished )
예제 #11
0
	def __init__(self, session, api=None):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		InfoBarNotifications.__init__(self)

		if api is None:
			if config.plugins.ecasa.last_backend.value == 'picasa':
				self.api = PicasaApi(cache=config.plugins.ecasa.cache.value)
			else:
				self.api = FlickrApi(config.plugins.ecasa.flickr_api_key.value, cache=config.plugins.ecasa.cache.value)
			try:
				self.api.setCredentials(
					config.plugins.ecasa.google_username.value,
					config.plugins.ecasa.google_password.value
				)
			except Exception as e:
				AddPopup(
					_("Unable to authenticate with Google: %s.") % (e.message),
					MessageBox.TYPE_ERROR,
					5,
					id=AUTHENTICATION_ERROR_ID,
				)
		else:
			self.api = api

		self["key_red"] = StaticText(_("Close"))
		self["key_green"] = StaticText(_("Albums"))
		self["key_yellow"] = StaticText()
		self["key_blue"] = StaticText(_("Search"))
		for i in xrange(self.PICS_PER_PAGE):
			self['image%d' % i] = Pixmap()
			self['title%d' % i] = StaticText()
		self["highlight"] = MovingPixmap()
		self["waitingtext"] = Label(_("Please wait... Loading list..."))

		self["overviewActions"] = HelpableActionMap(self, "EcasaOverviewActions", {
			"up": self.up,
			"down": self.down,
			"left": self.left,
			"right": self.right,
			"nextPage": (self.nextPage, _("show next page")),
			"prevPage": (self.prevPage, _("show previous page")),
			"select": self.select,
			"exit":self.close,
			"albums":(self.albums, _("show your albums (if logged in)")),
			"search":(self.search, _("start a new search")),
			"contextMenu":(self.contextMenu, _("open context menu")),
			}, -1)

		self.offset = 0
		self.__highlighted = 0
		self.pictures = ()

		# thumbnail loader
		self.picload = ePicLoad()
		self.picload.PictureData.get().append(self.gotPicture)
		self.currentphoto = None
		self.queue = deque()

		self.onLayoutFinish.append(self.layoutFinished)
예제 #12
0
	def __init__(self, *args, **kwargs):
		baseMethods.Menu__init__(self, *args, **kwargs) # using the base initializer saves us a few cycles
		HelpableScreen.__init__(self)
		self.skinName = "SortableMenu"
		self.setTitle(_("Main menu"))

		# XXX: not nice, but makes our life a little easier
		l = [(x[0], x[1], x[2], menuWeights.get(x, supportHiding=False), menuWeights.isHidden(x)) for x in self["menu"].list]
		l.sort(key=itemgetter(3))
		self["menu"] = SortableMenuList(l)
		self["key_blue"] = StaticText(_("hide entry"))

		self["DirectionActions"] = ActionMap(["DirectionActions"],
			{
				"left": boundFunction(self.doMove, self["menu"].pageUp),
				"right": boundFunction(self.doMove, self["menu"].pageDown),
				"up": boundFunction(self.doMove, self["menu"].up),
				"down": boundFunction(self.doMove, self["menu"].down),
			}, -1
		)

		self["MenuSortActions"] = HelpableActionMap(self, "MenuSortActions",
			{
				"ignore": lambda: None, # we need to overwrite some regular actions :-)
				"toggleSelection": (self.toggleSelection, _("toggle selection")),
				"selectEntry": (self.okbuttonClick, _("enter menu")),
				"hideEntry": (self.hideEntry, _("hide entry")),
			}, -1
		)
		self.selected = -1
예제 #13
0
	def __init__(self, *args, **kwargs):
		baseMethods.Menu__init__(self, *args, **kwargs) # using the base initializer saves us a few cycles
		HelpableScreen.__init__(self)
		self.skinName = "SortableMenu"

		# XXX: not nice, but makes our life a little easier
		l = [(x[0], x[1], x[2], menuWeights.get(x)) for x in self["menu"].list]
		l.sort(key=lambda x:x[3])
		self["menu"] = SortableMenuList(l)

		self["WizardActions"] = ActionMap(["WizardActions"],
			{
				"left": boundFunction(self.doMove, self["menu"].pageUp),
				"right": boundFunction(self.doMove, self["menu"].pageDown),
				"up": boundFunction(self.doMove, self["menu"].up),
				"down": boundFunction(self.doMove, self["menu"].down),
			}, -1
		)

		self["MenuSortActions"] = HelpableActionMap(self, "MenuSortActions",
			{
				"ignore": lambda: None, # we need to overwrite some regular actions :-)
				"toggleSelection": (self.toggleSelection, _("toggle selection")),
				"selectEntry": (self.okbuttonClick, _("enter menu")),
			}, -1
		)
		self.selected = -1
예제 #14
0
 def __init__(self, session, args = 0):
     self.skin = fstabViewerScreen.skin
     self.session = session
     Screen.__init__(self, session)
     HelpableScreen.__init__(self)
     self['entryinfo'] = Label()
     self['edit'] = Label(_('Edit'))
     self['cancelist'] = Label(_('Cancel'))
     self['addentry'] = Label(_('Add entry'))
     self['run'] = Label(_('Run mount -a'))
     self['restore'] = Label('')
     self['menulist'] = fstabMenuList([])
     self.fstabEntryList = []
     self['ColorActions'] = HelpableActionMap(self, 'ColorActions', {'green': (self.addEntry, _('Add entry')),
      'yellow': (self.restoreBackUp, _('Restore backup fstab')),
      'blue': (self.mountall, _('Run mount -a')),
      'red': (self.close, _('Close plugin'))}, -1)
     self['OkCancelActions'] = HelpableActionMap(self, 'OkCancelActions', {'cancel': (self.close, _('Close plugin')),
      'ok': (self.openEditScreen, _('Open editor'))}, -1)
     self.setTitle(_('fstab-Editor'))
     self.builderror = False
     if fileExists('/etc/fstab'):
         self.buildScreen()
     if fileExists('/etc/fstab.backup') or fileExists('/etc/fstab-opkg'):
         self['restore'].setText(_('Restore fstab'))
     self['menulist'].onSelectionChanged.append(self.selectionChanged)
예제 #15
0
	def __init__(self, session):
		printl("", self, "S")
		
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		
		self.cfglist = []
		ConfigListScreen.__init__(self, self.cfglist, session, on_change = self._changed)
		
		self._session = session
		self._hasChanged = False

		self["key_red"] = StaticText(_("Cancel"))
		self["key_green"] = StaticText(_("Save"))
		self["help"] = StaticText()
		
		self["setupActions"] = ActionMap(["SetupActions", "ColorActions", "DPS_Settings"],
		{
			"green": self.keySave,
			"red": self.keyCancel,
			"cancel": self.keyCancel,
			"ok": self.ok,
			"left": self.keyLeft,
			"right": self.keyRight,
			"bouquet_up":	self.keyBouquetUp,
			"bouquet_down":	self.keyBouquetDown,
		}, -2)
		
		self.createSetup()
		
		self["config"].onSelectionChanged.append(self.updateHelp)
		
		printl("", self, "C")
예제 #16
0
    def __init__(self, session):
        self.skin = CurlyTxSettings.skin
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        # self.skinName = [ "CurlyTxSettings", "Setup" ]
        self.setup_title = _("Settings")

        self["actions"] = ActionMap(
            ["SetupActions", "ColorActions"],
            {
                "cancel": self.keyCancel,
                "save": self.keySave,
                "ok": self.editPage,
                "yellow": self.newPage,
                "blue": self.deletePage,
            },
            -2,
        )

        self["key_red"] = StaticText(_("Cancel"))
        self["key_green"] = StaticText(_("OK"))
        self["key_yellow"] = StaticText(_("New"))
        self["key_blue"] = StaticText(_("Delete"))

        ConfigListScreen.__init__(self, self.getConfigList(), session=self.session)

        self.loadHelp()
	def __init__(self, session):
		serienRecBaseScreen.__init__(self, session)
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.skin = None
		self.conflictsListe = []
		self.session = session
		self.database = SRDatabase(SerienRecorder.serienRecDataBaseFilePath)

		self["actions"] = HelpableActionMap(self, "SerienRecorderActions", {
			"cancel": (self.keyCancel, "zurück zur vorherigen Ansicht"),
			"left": (self.keyLeft, "zur vorherigen Seite blättern"),
			"right": (self.keyRight, "zur nächsten Seite blättern"),
			"up": (self.keyUp, "eine Zeile nach oben"),
			"down": (self.keyDown, "eine Zeile nach unten"),
			"red": (self.keyCancel, "zurück zur vorherigen Ansicht"),
			"blue": (self.keyBlue, "alle Einträge aus der Liste endgültig löschen"),
			"menu": (self.recSetup, "Menü für globale Einstellungen öffnen"),
			"0"	: (self.readLogFile, "Log-File des letzten Suchlaufs anzeigen"),
			"3"		: (self.showProposalDB, "Liste der Serien/Staffel-Starts anzeigen"),
			"7"		: (self.showWishlist, "Merkzettel (vorgemerkte Folgen) anzeigen"),
		}, -1)
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["SerienRecorderActions" ,], {
			"displayHelp"      : self.showHelp,
			"displayHelp_long" : self.showManual,
		}, 0)

		self.setupSkin()

		self.onLayoutFinish.append(self.readConflicts)
		self.onClose.append(self.__onClose)
		self.onLayoutFinish.append(self.setSkinProperties)
예제 #18
0
	def __init__(self, session, favoriteEvents):
		self.session = session
		self.favoriteEvents = favoriteEvents
		if size_width >= 1280 and len(self.favoriteEvents) > 3:
			self.skin = skinPTMhdfull
		else:
			self.skin = skinPTMsd
		Screen.__init__(self, session)
		self.list = [ ]
		self["list"] = ResultList(self.list)

		self["key_red"] = StaticText(_("Close"))
		self["key_green"] = StaticText(_("Accept"))
		self["key_yellow"] = StaticText("")
		self["key_blue"] = StaticText("")
		self["text_left"] = StaticText(_("Favorite"))
		self["text_right"] = StaticText(_("Solution"))

		HelpableScreen.__init__(self)
		
		self["SetupActions"] = HelpableActionMap(self, "SetupActions",
		{
			"cancel":	(self.buttonCancel,	_("Close")),
			"ok":		(self.buttonOK,	_("Accept the events as shown")),
		}, -1)
		
		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
		{
			"red":		(self.buttonCancel,	_("Close")),
			"green":	(self.buttonAccept,	_("Accept the events as shown")),
		}, -1)
		
		self.visible = True
		self.onLayoutFinish.append(self.buildEventList)
예제 #19
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		self.edittext = _("Press OK to edit the settings.")

		self["key_red"] = StaticText(_("Close"))
		self["key_green"] = StaticText(_("Select"))
		self["key_yellow"] = StaticText("")
		self["key_blue"] = StaticText("")
		self["introduction"] = StaticText(self.edittext)

		self.devices = [(iInputDevices.getDeviceName(x),x) for x in iInputDevices.getDeviceList()]
		print "[InputDeviceSelection] found devices :->", len(self.devices),self.devices

		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
			{
			"cancel": (self.close, _("Exit input device selection.")),
			"ok": (self.okbuttonClick, _("Select input device.")),
			}, -2)

		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
			{
			"red": (self.close, _("Exit input device selection.")),
			"green": (self.okbuttonClick, _("Select input device.")),
			}, -2)

		self.currentIndex = 0
		self.list = []
		self["list"] = List(self.list)
		self.updateList()
		self.onLayoutFinish.append(self.layoutFinished)
		self.onClose.append(self.cleanup)
예제 #20
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.setTitle(_("Configure nameservers"))
		self.backupNameserverList = iNetwork.getNameserverList()[:]
		print "backup-list:", self.backupNameserverList

		self["key_red"] = StaticText(_("Cancel"))
		self["key_green"] = StaticText(_("Add"))
		self["key_yellow"] = StaticText(_("Delete"))

		self["introduction"] = StaticText(_("Press OK to activate the settings."))
		self.createConfig()

		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
			{
			"cancel": (self.cancel, _("Exit nameserver configuration")),
			"ok": (self.ok, _("Activate current configuration")),
			})

		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
			{
			"red": (self.cancel, _("Exit nameserver configuration")),
			"green": (self.add, _("Add a nameserver entry")),
			"yellow": (self.remove, _("Remove a nameserver entry")),
			})

		self["actions"] = NumberActionMap(["SetupActions"],
		{
			"ok": self.ok,
		}, -2)

		self.list = []
		ConfigListScreen.__init__(self, self.list)
		self.createSetup()
예제 #21
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.session = session
		self.skin = JobManagerConfigScreen.skin
		
		self["ButtonGreen"] = Pixmap()
		self["TextGreen"] = Label(_("Save"))
		
		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
		{
			"green":	(self.saveConfig, _("Save settings")),
		}, -1)
		
		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
		{
			"ok":		(self.openDirSelectScreen, _("Open directory selection screen")),
			"cancel":	(self.close, _("Close config")),
		}, -1)
		
		self.list = []
		
		ConfigListScreen.__init__(self, self.list)
		
		self.list.append(getConfigListEntry(_("Save downloads to: "), config.plugins.JobManager.dlpath))
		
		self["config"].setList(self.list)
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		# Initialize widgets
		self["key_green"] = StaticText(_("OK"))
		self["key_red"] = StaticText(_("Cancel"))
		self["key_yellow"] = StaticText("")
		self["key_blue"] = StaticText(_("Run"))
		self["plugins"] = StaticText(_("Plugins"))
		self["extensions"] = StaticText(_("Extensions"))
		self["eventinfo"] = StaticText(_("Eventinfo"))
		self["tabbar"] = MultiPixmap()

		self["list"] = SelectionList([])
		self.selectedList = LIST_PLUGINS
		self.updateList()

		self["PluginHiderSetupActions"] = HelpableActionMap(self, "PluginHiderSetupActions",
			{
				"ok": (self["list"].toggleSelection, _("toggle selection")),
				"cancel": (self.cancel, _("end editing")),
				"green": (self.save, _("save")),
				"blue": (self.run, _("run selected plugin")),
				"next": (self.next, _("select next tab")),
				"previous": (self.previous, _("select previous tab")),
			}, -1
		)

		self.onLayoutFinish.append(self.setCustomTitle)
예제 #23
0
    def __init__(self, session, api, user="******"):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        InfoBarNotifications.__init__(self)
        self.api = api
        self.user = user

        self["list"] = List()
        self["key_red"] = StaticText(_("Close"))
        self["key_green"] = StaticText()
        self["key_yellow"] = StaticText(_("Change user"))
        self["key_blue"] = StaticText(_("User history"))

        self["albumviewActions"] = HelpableActionMap(
            self,
            "EcasaAlbumviewActions",
            {
                "select": (self.select, _("show album")),
                "exit": (self.close, _("Close")),
                "users": (self.users, _("Change user")),
                "history": (self.history, _("User history")),
            },
            -1,
        )

        self.acquireAlbumsForUser(user)
        self.onLayoutFinish.append(self.layoutFinished)
예제 #24
0
	def __init__(self, session, args = 0):
		self.skin = fstabViewerScreen.skin
		self.session = session
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		self["entryinfo"] = Label()
		self["menulist"] = fstabMenuList([])
		self.fstabEntryList = []

		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
		{
			"green": (self.addEntry, _("Add entry")),
			"yellow": (self.restoreBackUp, _("Restore back up of fstab")),
			"blue":	(self.mountall, _("Run mount -a")),
		}, -1)
		
		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
		{
			"cancel":	(self.close, _("Close plugin")),
			"ok":		(self.openEditScreen, _("Open editor")),
		}, -1)

		self.buildScreen()
		
		self["menulist"].onSelectionChanged.append(self.selectionChanged)
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		ChannelsBase.__init__(self)
		WebChannels.__init__(self)
		
		self.session = session
		
		self.skinName = [ "SeriesPluginChannelEditor" ]
		
		from plugin import NAME, VERSION
		self.setup_title = NAME + " " + _("Channel Editor") + " " + VERSION
		
		# Buttons
		self["key_red"] = Button(_("Cancel"))
		self["key_green"] = Button(_("OK"))
		self["key_blue"] = Button(_("Remove"))
		self["key_yellow"] = Button(_("Auto match"))
		
		# Define Actions
		self["actions_1"] = HelpableActionMap(self, "SetupActions", {
			"ok"       : (self.keyAdd, _("Show popup to add Stb Channel")),
			"cancel"   : (self.keyCancel, _("Cancel and close")),
			"deleteForward"   : (self.keyResetChannelMapping, _("Reset channels")),
		}, -1)
		self["actions_2"] = HelpableActionMap(self, "DirectionActions", {
			"left"     : (self.keyLeft, _("Previeous page")),
			"right"    : (self.keyRight, _("Next page")),
			"up"       : (self.keyUp, _("One row up")),
			"down"     : (self.keyDown, _("One row down")),
		}, -1)
		self["actions_3"] = HelpableActionMap(self, "ChannelSelectBaseActions", {
			"nextBouquet":	(self.nextBouquet, _("Next bouquet")),
			"prevBouquet":	(self.prevBouquet, _("Previous bouquet")),
		}, -1)
		self["actions_4"] = HelpableActionMap(self, "ColorActions", {
			"red"      : (self.keyCancel, _("Cancel and close")),
			"green"    : (self.keySave, _("Save and close")),
			"blue"     : (self.keyRemove, _("Remove channel")),
			"yellow"   : (self.tryToMatchChannels, _("Auto match")),
		}, -2) # higher priority
		
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["HelpActions",], {
			"displayHelp"      : self.showHelp
		}, 0)

		self['list'] = MatchList()
		self['list'].show()

		self.stbChlist = []
		self.webChlist = []
		self.stbToWebChlist = []
		
		self.bouquet = None
		
		self.onLayoutFinish.append(self.readChannels)
		self.onShown.append(self.showMessage)
예제 #26
0
	def __init__(self, session, autotimer):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		# Save autotimer
		self.autotimer = autotimer

		self.changed = False

		# Button Labels
		self["key_green"] = StaticText(_("Save"))
		self["key_yellow"] = StaticText(_("Delete"))
		self["key_blue"] = StaticText(_("Add"))

		# Create List of Timers
		self["entries"] = AutoTimerList(autotimer.getSortedTupleTimerList())
		

		# Summary
		self.onChangedEntry = []
		self["entries"].onSelectionChanged.append(self.selectionChanged)

		# Define Actions
		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
			{
				"ok": (self.ok, _("Edit selected AutoTimer")),
				"cancel": (self.cancel, _("Close and forget changes")),
			}
		)

		self["MenuActions"] = HelpableActionMap(self, "MenuActions",
			{
				"menu": (self.menu, _("Open Context Menu"))
			}
		)

		self["EPGSelectActions"] = HelpableActionMap(self, "EPGSelectActions",
			{
				"info":   (self.showSearchLog, _("Show last SearchLog")),
			}
		)

		self["InfobarActions"] = HelpableActionMap(self, "InfobarActions",
			{
				"showTv":   (self.showFilterTxt, _("Show AutoTimer FilterTxt")),
			}
		)

		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
			{
				"red": self.cancel,
				"green": (self.save, _("Close and save changes")),
				"yellow": (self.remove, _("Remove selected AutoTimer")),
				"blue": (self.add, _("Add new AutoTimer")),
			}
		)

		self.onLayoutFinish.append(self.setCustomTitle)
		self.onFirstExecBegin.append(self.firstExec)
예제 #27
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		
		# Summary
		self.setup_title = _("EPGBackup Setup")
		self.onChangedEntry = []
		
		self.session = session
		self.list = []
		ConfigListScreen.__init__(self, self.list, session, on_change = self.changed)
		self["config"].onSelectionChanged.append(self._updateHelp)
		self._getConfig()
		
		self["key_red"] = StaticText(_("Cancel"))
		self["key_green"] = StaticText(_("Save"))
		self["help"] = StaticText()
		
		# Actions
		self["ColorActions"] = HelpableActionMap(self, "ColorActions",
			{
				"red": (self.keyCancel, _("Close and forget changes")),
				"green": (self.keySave, _("Close and save changes")),
			}
		)
		self["MenuActions"] = HelpableActionMap(self, "MenuActions",
			{
				"menu": (self.menu, _("Open Context Menu"))
			}
		)
		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
			{
				"cancel": (self.keyCancel, _("Close and forget changes")),
			}
		)
		self["ChannelSelectBaseActions"] = HelpableActionMap(self, "ChannelSelectBaseActions",
			{
				"nextBouquet": (self.pageup, _("Move page up")),
				"prevBouquet": (self.pagedown, _("Move page down")),
			}
		)
		
		self["HelpActions"] = ActionMap(["HelpActions"],
			{
				"displayHelp": self.showKeyHelp,
			}
		)

		# Trigger change
		self.changed()
		
		self.confShowSetupIn = config.plugins.epgbackup.show_setup_in.value
		
		config.plugins.epgbackup.backup_strategy.addNotifier(self.updateVariableHelpText, initial_call = False, immediate_feedback = True)
		self.onClose.append(self.removeNotifiers)
		
		self.needsEnigmaRestart = False
		self.onLayoutFinish.append(self._layoutFinished)
		self["config"].isChanged = self._ConfigisChanged
예제 #28
0
파일: qpip.py 프로젝트: Open-Plus/opgui
	def __init__(self, session):
		self.session = session
		self.session.qPips = None
		Screen.__init__(self, session)
		FocusShowHide.__init__(self)
		HelpableScreen.__init__(self)
		self.setTitle(_("Quad PiP Screen"))

		self["actions"] = HelpableActionMap(self, "QuadPipSetupActions",
		{
			"cancel": (self.keyExit, _("Exit quad PiP")),
			"ok": (self.keyOk, _("Zap focused channel on full screen")),
			"left": (self.keyLeft, _("Select channel audio")),
			"right": (self.keyRight, _("Select channel audio")),
			"up": (self.keyUp, _("Select channel audio")),
			"down": (self.keyDown, _("Select channel audio")),
			"channelup" : (self.KeyChannel, _("Show channel selection")),
			"channeldown" : (self.KeyChannel, _("Show channel selection")),
			"menu" : (self.KeyChannel, _("Show channel selection")),
			"channelPrev" : (self.KeyPrev, _("Prev quad PiP channel")),
			"channelNext" : (self.KeyNext, _("Next quad PiP channel")),
			"red" : (self.KeyRed, _("Show/Hide focus bar")),
		}, -1)

		self["ch1"] = Label(_(" "))
		self["ch2"] = Label(_(" "))
		self["ch3"] = Label(_(" "))
		self["ch4"] = Label(_(" "))
		self["text1"] = Label(_("  Red key : Show/Hide channel name"))
		self["text2"] = Label(_("  Menu key : Select quad channel"))
		self["focus"] = Slider(-1, -1)

		self.currentPosition = 1 # 1~4
		self.updatePositionList()

		self.skin = QuadPipScreen.skin % (self.session.desktop.size().width(), self.session.desktop.size().height(), \
												self.fontSize, self.fontSize, self.fontSize, self.fontSize, \
												self.text1Pos[0], self.text1Pos[1], self.text1Pos[2], self.text1Pos[3], self.fontSize, \
												self.text2Pos[0], self.text2Pos[1], self.text2Pos[2], self.text2Pos[3], self.fontSize)
		self.oldService = None
		self.curChannel = None
		self.curPlayAudio = -1

		global quad_pip_channel_list_instance
		self.qpipChannelList = quad_pip_channel_list_instance

		self.oldFccEnable = False
		self.oldMinitvEanble = False

		self.onLayoutFinish.append(self.layoutFinishedCB)

		self.notSupportTimer = eTimer()
		self.notSupportTimer.callback.append(self.showNotSupport)

		self.noChannelTimer = eTimer()
		self.noChannelTimer.callback.append(self.noChannelTimerCB)

		self.forceToExitTimer = eTimer()
		self.forceToExitTimer.callback.append(self.forceToExitTimerCB)
예제 #29
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		
		self.cfglist = []
		ConfigListScreen.__init__(self, self.cfglist, session, on_change = self._changed)
		
		self._session = session
		self._hasChanged = False
		self.version = getVersion()
		self.controller = None
		self.selected = None
		self.sampleUse = False
		self.aspect = getAspect()
		self.old_service = self.session.nav.getCurrentlyPlayingServiceReference()	
			
		self["txt_green"] = Label()
		self["btn_green"] = Pixmap()

		self["statusbar"] = Pixmap()
		self["txt_arrows"] = Label()
		self["txt_statusbar"] = Label()
		self["txt_statusbar_info"] = Label()

		self["version"] = StaticText()

		self["txt_green"].setText(_("Save"))
		self["txt_arrows"].setText(_("Use < > to jump with 10 in slider"))
		self["version"].text = self.version
		
		# Disable OSD Transparency
		try:
			self.can_osd_alpha = open("/proc/stb/video/alpha", "r") and True or False
		except:
			self.can_osd_alpha = False
		
		if config.plugins.enigmalight.sampleBackground.getValue() == True:
			self.showBackground()

		self["setupActions"] = ActionMap(["SetupActions", "ColorActions", "EL_Settings"],
		{
			"green": self.keySave,
			"cancel": self.exitTuning,
			"ok": self.ok,
			"left": self.keyLeft,
			"right": self.keyRight,
			"bouquet_up":	self.keyBouquetUp,
			"bouquet_down":	self.keyBouquetDown,
			"jumpNextMark":	self.keyNext,
			"jumpPreviousMark": self.keyPrev,
		}, -2)

		self.createSetup()
		
		log("",self,"Finisch layout..")

		#self["config"].onSelectionChanged.append(self.updateHelp)
		self.onLayoutFinish.append(self.finishLayout)
예제 #30
0
	def __init__(self, session, title = "", windowTitle = _("Input"), useableChars = None, **kwargs):
		Screen.__init__(self, session)

		self["text"] = Label(title)
		self["input"] = Input(**kwargs)
		self["VKeyIcon"] = Pixmap()
		self["help_text"] = Label(_("use virtual keyboard for text input"))
		self.onShown.append(boundFunction(self.setTitle, windowTitle))
		if useableChars is not None:
			self["input"].setUseableChars(useableChars)

		HelpableScreen.__init__(self)
		self["actions"] = NumberActionMap(["InputBoxActions", "InputAsciiActions", "KeyboardInputActions"], 
		{
			"gotAsciiCode": self.gotAsciiCode,
			"home": self.keyHome,
			"end": self.keyEnd,
			"deleteForward": self.keyDelete,
			"deleteBackward": self.keyBackspace,
			"tab": self.keyTab,
			"toggleOverwrite": self.keyInsert,
			"showVirtualKeyboard": self.virtualKeyBoard,
			"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,
			"0": self.keyNumberGlobal
		}, -1)
		self["WizardActions"] = HelpableActionMap(self, "WizardActions", 
			{
				"ok": (self.go, _("Save")),
				"back": (self.cancel,_("Cancel")),
				"down": (self.keyTab, _("Tab")),
				"left": (self.keyLeft, _("Left")),
				"right": (self.keyRight, _("Right")),
			}, -1)
		self["InfobarSeekActions"] = HelpableActionMap(self, "InfobarSeekActions", 
			{
			"seekBack": (self.keyHome,_("Home")),
			"seekFwd": (self.keyEnd,_("End")),
			"playpauseService": (self.keyInsert, _("Toggle Insert / Overwrite")),
			}, -1)
		self["InputBoxActions"] = HelpableActionMap(self, "InputBoxActions", 
			{
			"deleteForward": (self.keyDelete, _("Delete")),
			"deleteBackward": (self.keyBackspace, _("Backspace")),
			}, -1)

		if self["input"].type == Input.TEXT:
			self.onExecBegin.append(self.setKeyboardModeAscii)
		else:
			self.onExecBegin.append(self.setKeyboardModeNone)
예제 #31
0
    def __init__(self, session, timer):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        self.timer = timer

        self.entryDate = None
        self.entryService = None

        self["HelpWindow"] = Pixmap()
        self["HelpWindow"].hide()
        self["VKeyIcon"] = Boolean(False)

        self["description"] = Label("")
        self["key_red"] = Label(_("Cancel"))
        self["key_green"] = Label(_("OK"))
        self["key_yellow"] = Label()
        self["key_blue"] = Label()

        self.createConfig()

        self["actions"] = HelpableNumberActionMap(
            self, ["SetupActions", "GlobalActions", "PiPSetupActions"], {
                "ok": (self.keySelect, _("Save the timer and exit")),
                "save": (self.keyGo, "Save the timer and exit"),
                "cancel":
                (self.keyCancel, "Cancel creation of the timer and exit"),
                "volumeUp": (self.incrementStart, _("Increment start time")),
                "volumeDown": (self.decrementStart, _("Decrement start time")),
                "size+": (self.incrementEnd, _("Increment end time")),
                "size-": (self.decrementEnd, _("Decrement end time"))
            }, -2)

        self.list = []
        ConfigListScreen.__init__(self, self.list, session=session)
        self.setTitle(_("PowerManager entry"))
        self.createSetup("config")
        if self.selectionChanged not in self["config"].onSelectionChanged:
            self["config"].onSelectionChanged.append(self.selectionChanged)
        self.selectionChanged()
    def __init__(self, session, title, list): #@ReservedAssignment
        Screen.__init__(self, session)
        ConfigListScreen.__init__(self, [], session)
        HelpableScreen.__init__(self)
        self.skinName = "SelectSortFunctions"
        self.setTitle(title)
        self["key_red"] = StaticText(_("Cancel"))
        self["key_green"] = StaticText(_("Close"))
        self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
        {
            "cancel": (self.cancel, _("Cancel")),
        })
        self["ColorActions"] = HelpableActionMap(self, "ColorActions",
        {
            "red": (self.cancel, _("Cancel")),
            "green": (self.accept, _("Save/Close")),
        })

        l = []
        for x in list:
            l.append(getConfigListEntry(x[0], ConfigYesNo(x[1])))
        self["config"].setList(l)
예제 #33
0
	def __init__(self, session, api, user='******'):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		InfoBarNotifications.__init__(self)
		self.api = api
		self.user = user

		self['list'] = List()
		self['key_red'] = StaticText(_("Close"))
		self['key_green'] = StaticText()
		self['key_yellow'] = StaticText(_("Change user"))
		self['key_blue'] = StaticText(_("User history"))

		self["albumviewActions"] = HelpableActionMap(self, "EcasaAlbumviewActions", {
			"select": (self.select, _("show album")),
			"exit": (self.close, _("Close")),
			"users": (self.users, _("Change user")),
			"history": (self.history, _("User history")),
		}, -1)

		self.acquireAlbumsForUser(user)
		self.onLayoutFinish.append(self.layoutFinished)
예제 #34
0
파일: Flash_online.py 프로젝트: OpenESI/gui
 def __init__(self, session, startdir, message = '', showDirectories = True, showFiles = True, showMountpoints = True, matchingPattern = '', useServiceRef = False, inhibitDirs = False, inhibitMounts = False, isTop = False, enableWrapAround = False, additionalExtensions = None):
     Screen.__init__(self, session)
     HelpableScreen.__init__(self)
     Screen.setTitle(self, _('Please select medium'))
     #edit lululla                                                  
     # self['key_red'] = StaticText(_('Cancel'))
     # self['key_green'] = StaticText()
     # self['message'] = StaticText(message)
     self['key_green'] = Label(_(''))
     self['key_red'] = Label(_('Cancel'))  
     self['message'] = Label(_(''))          
     self['message'].setText(message) 
     ##############                                                                                                 
     self.filelist = FileList(startdir, showDirectories=showDirectories, showFiles=showFiles, showMountpoints=showMountpoints, matchingPattern=matchingPattern, useServiceRef=useServiceRef, inhibitDirs=inhibitDirs, inhibitMounts=inhibitMounts, isTop=isTop, enableWrapAround=enableWrapAround, additionalExtensions=additionalExtensions)
     self['filelist'] = self.filelist
     self['FilelistActions'] = ActionMap(['SetupActions', 'ColorActions'], {'green': self.use,
      'red': self.exit,
      'ok': self.ok,
      'cancel': self.exit})
     hotplugNotifier.append(self.hotplugCB)
     self.onShown.append(self.updateButton)
     self.onClose.append(self.removeHotplug)
예제 #35
0
 def __init__(self, session, setup, plugin=None, PluginLanguageDomain=None):
     Screen.__init__(self,
                     session,
                     mandatoryWidgets=["config", "footnote", "description"])
     HelpableScreen.__init__(self)
     self.setup = setup
     self.plugin = plugin
     self.pluginLanguageDomain = PluginLanguageDomain
     if not isinstance(self.skinName, list):
         self.skinName = [self.skinName]
     self.skinName.append("setup_%s" % setup)
     self.skinName.append("Setup%s" % setup)
     self.skinName.append("Setup")
     self.list = []
     ConfigListScreen.__init__(self,
                               self.list,
                               session=session,
                               on_change=self.changedEntry,
                               fullUI=True)
     self["footnote"] = Label()
     self["footnote"].hide()
     self["description"] = Label()
     self.createSetup()
     defaultSetupImage = setups.get("default", "")
     setupImage = setups.get(setup, defaultSetupImage)
     if setupImage:
         print("[Setup] %s image '%s'." %
               ("Default" if setupImage is defaultSetupImage else "Setup",
                setupImage))
         setupImage = resolveFilename(SCOPE_GUISKIN, setupImage)
         self.setupImage = LoadPixmap(setupImage)
         if self.setupImage:
             self["setupimage"] = Pixmap()
         else:
             print("[Setup] Error: Unable to load image '%s'!" % setupImage)
     else:
         self.setupImage = None
     self["config"].onSelectionChanged.append(self.selectionChanged)
     self.onLayoutFinish.append(self.layoutFinished)
예제 #36
0
    def __init__(self, session, fileList, index, path, filename):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)

        self["actions"] = HelpableActionMap(
            self, ["OkCancelActions", "ColorActions", "DirectionActions"], {
                "cancel": (self.keyCancel, _("Exit picture viewer")),
                "left": (self.keyLeft, _("Show next picture")),
                "right": (self.keyRight, _("Show previous picture")),
                "blue": (self.keyBlue, _("Start/stop slide show")),
                "yellow": (self.keyYellow, _("Show image information")),
            }, -1)

        self["icon"] = Pixmap()
        self["image"] = Pixmap()
        self["status"] = Pixmap()
        self["message"] = StaticText(_("Please wait, Loading image."))

        self.fileList = []
        self.currentImage = []

        self.lsatIndex = index
        self.startIndex = index
        self.filename = filename
        self.fileListLen = 0
        self.currentIndex = 0
        self.directoryCount = 0

        self.displayNow = True

        self.makeFileList(fileList, path)

        self.pictureLoad = ePicLoad()
        self.pictureLoad.PictureData.get().append(self.finishDecode)

        self.slideShowTimer = eTimer()
        self.slideShowTimer.callback.append(self.cbSlideShow)

        self.onFirstExecBegin.append(self.firstExecBegin)
예제 #37
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self["key_red"] = Button(_("Favorites"))
		self["key_yellow"] = Button("")
		self["key_blue"] = Button(_("Settings"))
		self["currentfolder"] = Label("")
		self["currentfavname"] = Label("")
		self.showiframe = Showiframe()
		self.mvion = False
		self.curfavfolder = -1
		os.system("touch /tmp/bmcmovie")
		self["actions"] = HelpableActionMap(self, "MC_VideoPlayerActions", 
			{
				"ok": (self.KeyOk, "Play selected file"),
				"cancel": (self.Exit, "Exit Video Player"),
				"left": (self.leftUp, "List Top"),
				"right": (self.rightDown, "List Bottom"),
				"up": (self.up, "List up"),
				"down": (self.down, "List down"),
				"menu": (self.KeyMenu, "File / Folder Options"),
				"info": (self.showFileInfo, "Show File Info"),
				"nextBouquet": (self.NextFavFolder, "Next Favorite Folder"),
				"prevBouquet": (self.PrevFavFolder, "Previous Favorite Folder"),
#				"red": (self.FavoriteFolders, "Favorite Folders"),
				"blue": (self.KeySettings, "Settings"),
			}, -2)

		currDir = config.plugins.mc_vp.lastDir.value
		if not pathExists(currDir):
			currDir = "/"
		self["currentfolder"].setText(str(currDir))
		sort = config.plugins.mc_vp_sortmode.enabled.value
		self.filelist = []
		self["filelist"] = []
		inhibitDirs = ["/bin", "/boot", "/dev", "/dev.static", "/etc", "/lib" , "/proc", "/ram", "/root" , "/sbin", "/sys", "/tmp", "/usr", "/var"]
		self.filelist = FileList(currDir, useServiceRef = True, showDirectories = True, showFiles = True, matchingPattern = "(?i)^.*\.(ts|vob|mpg|mpeg|avi|mkv|dat|iso|img|mp4|wmv|flv|divx|mov|ogm|m2ts)", additionalExtensions = None, sort = sort)
		self["filelist"] = self.filelist
		self["filelist"].show()
예제 #38
0
	def __init__(self, session, setup, plugin=None, PluginLanguageDomain=None):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.setup = setup
		self.plugin = plugin
		self.pluginLanguageDomain = PluginLanguageDomain
		if hasattr(self, "skinName"):
			if not isinstance(self.skinName, list):
				self.skinName = [self.skinName]
		else:
			self.skinName = []
		if setup:
			self.skinName.append("Setup%s" % setup)  # DEBUG: Proposed for new setup screens.
			self.skinName.append("setup_%s" % setup)
		self.skinName.append("Setup")
		self.onChangedEntry = []
		self.list = []
		ConfigListScreen.__init__(self, self.list, session=session, on_change=self.changedEntry, fullUI=True)
		self["footnote"] = Label()
		self["footnote"].hide()
		self["description"] = Label()
		self.createSetup()
		defaultSetupImage = setups.get("default", "")
		setupImage = setups.get(setup, defaultSetupImage)
		if setupImage:
			print("[Setup] %s image '%s'." % ("Default" if setupImage is defaultSetupImage else "Setup", setupImage))
			setupImage = resolveFilename(SCOPE_CURRENT_SKIN, setupImage)
			self.setupImage = LoadPixmap(setupImage)
			if self.setupImage:
				self["setupimage"] = Pixmap()
			else:
				print("[Setup] Error: Unable to load menu image '%s'!" % setupImage)
		else:
			self.setupImage = None
		if self.layoutFinished not in self.onLayoutFinish:
			self.onLayoutFinish.append(self.layoutFinished)
		if self.selectionChanged not in self["config"].onSelectionChanged:
			self["config"].onSelectionChanged.append(self.selectionChanged)
예제 #39
0
    def __init__(self, session):
        logger.info("self.return_dir: %s, self.return_path: %s",
                    self.return_dir, self.return_path)

        if self.current_sort_mode is None:
            self.current_sort_mode = config.plugins.moviecockpit.list_sort.value
        self["list"] = self.movie_list = MovieList(self.current_sort_mode)

        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        Actions.__init__(self, self)
        CutList.__init__(self)
        SelfTest.__init__(self)

        self.skinName = getSkinName("MovieCockpit")
        self["actions"] = self.initActions(
            self, self.skinName != getSkinName("NoSupport"))
        self["mini_tv"] = Pixmap()
        self["pic_loading"] = Pixmap()
        self["no_support"] = Label()
        self["sort_mode"] = Label()
        self.loading = Loading(self["pic_loading"], self.summaries)

        self["Service"] = COCServiceEvent(ServiceCenter.getInstance())
        self["DiskSpace"] = COCDiskSpace(self)
        self["Cover"] = COCCover(self)

        self.enable_minit_tv = False
        self.last_service = None
        self.short_key = True  # used for long / short key press detection
        self.delay_timer = eTimer()
        self.delay_timer_conn = self.delay_timer.timeout.connect(
            self.updateInfoDelayed)

        self.onShow.append(self.onDialogShow)
        self.onHide.append(self.onDialogHide)
        self.movie_list.onSelectionChanged.append(self.selectionChanged)
        self.updateTitle()
예제 #40
0
 def __init__(self, session, saturl):
     self.session = session
     Screen.__init__(self, session)
     self['info'] = Label()
     self.saturl = saturl
     self['key_red'] = StaticText(_('Exit'))
     self['key_yellow'] = StaticText(_('Download'))
     self['key_blue'] = StaticText('')
     self.satList = []
     self['satlist'] = List(self.satList)
     HelpableScreen.__init__(self)
     self['OkCancelActions'] = HelpableActionMap(
         self, 'OkCancelActions', {
             'cancel': (self.exit, _('Exit plugin')),
             'ok': (self.changeSelection, _('Select/deselect satellite'))
         }, -1)
     self['ColorActions'] = HelpableActionMap(
         self, 'ColorActions', {
             'red': (self.exit, _('Exit plugin')),
             'yellow': (self.downloadSattelitesFile,
                        _('Download satellites.xml file')),
             'blue':
             (self.purgeSattelitesFile, _('Purge satellites.xml file'))
         }, -1)
     self['ChannelSelectBaseActions'] = HelpableActionMap(
         self, 'ChannelSelectBaseActions', {
             'nextBouquet': (self.changeSortingUp, _('Sorting up')),
             'prevBouquet': (self.changeSortingDown, _('Sorting down'))
         }, -1)
     self.showAccept = False
     self.useTmpFile = False
     self.purgePossible = False
     self.downloadPossible = True
     self.xmlVersion = ''
     self.xmlEncoding = ''
     self.xmlComment = ''
     self['info'].setText('Downloading satellite.xml file..please wait')
     self.onShown.append(self.downloadSattelitesFile)
예제 #41
0
	def __init__(self, session, menu_path="", screenTitle=_("GUI Skin")):
		self.hackSkin()  # This is a hack to ensure the SkinConverter screen works with the new code.
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		if config.usage.show_menupath.value == 'large':
			menu_path += screenTitle
			title = menu_path
			self["menu_path_compressed"] = StaticText("")
		elif config.usage.show_menupath.value == 'small':
			title = screenTitle
			self["menu_path_compressed"] = StaticText(menu_path + " >" if not menu_path.endswith(" / ") else menu_path[:-3] + " >" or "")
		else:
			title = screenTitle
			self["menu_path_compressed"] = StaticText("")
		Screen.setTitle(self, title)
		self.skinName = ["SkinSelector"]
		self.rootDir = resolveFilename(SCOPE_SKIN)
		self.config = config.skin.primary_skin
		self.xmlList = ["skin.xml"]
		self.onChangedEntry = []
		self["skins"] = List(enableWrapAround=True)
		self["preview"] = Pixmap()
		self["key_red"] = StaticText(_("Cancel"))
		self["key_green"] = StaticText(_("Save"))
		self["description"] = StaticText(_("Please wait... Loading list..."))
		self["actions"] = HelpableNumberActionMap(self, ["SetupActions", "DirectionActions", "ColorActions"], {
			"ok": (self.save, _("Activate the currently selected skin")),
			"cancel": (self.cancel, _("Revert to the currently active skin")),
			"red": (self.cancel, _("Revert to the currently active skin")),
			"green": (self.save, _("Activate the currently selected skin")),
			"up": (self.up, _("Move to the previous skin")),
			"down": (self.down, _("Move to the next skin")),
			"left": (self.left, _("Move to the previous page")),
			"right": (self.right, _("Move to the next page"))
		}, -1, description=_("Skin Selection Actions"))
		self.picload = ePicLoad()
		self.picload.PictureData.get().append(self.showPic)
		self.onLayoutFinish.append(self.layoutFinished)
예제 #42
0
	def __init__(self, session, url):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.session = session
		Screen.setTitle(self, _("CCcam Share Info"))
		self.url = url
		self.list = []
		self.providers = {}
		self.uphop = -1
		self.working = True

		self["list"] = CCcamShareViewList([])
		self["uphops"] = Label()
		self["cards"] = Label()
		self["providers"] = Label()
		self["reshare"] = Label()
		self["title"] = Label()

		self["actions"] = HelpableNumberActionMap(self, "CCcamInfoActions",
			{
				"cancel": (self.exit, _("close share view")),
				"0": (self.getUphop, _("show cards with uphop 0")),
				"1": (self.getUphop, _("show cards with uphop 1")),
				"2": (self.getUphop, _("show cards with uphop 2")),
				"3": (self.getUphop, _("show cards with uphop 3")),
				"4": (self.getUphop, _("show cards with uphop 4")),
				"5": (self.getUphop, _("show cards with uphop 5")),
				"6": (self.getUphop, _("show cards with uphop 6")),
				"7": (self.getUphop, _("show cards with uphop 7")),
				"8": (self.getUphop, _("show cards with uphop 8")),
				"9": (self.getUphop, _("show cards with uphop 9")),
				"green": (self.showAll, _("show all cards")),
				"incUphop": (self.incUphop, _("increase uphop by 1")),
				"decUphop": (self.decUphop, _("decrease uphop by 1")),
				"ok": (self.getServer, _("get the cards' server")),
			}, -1)

		self.onLayoutFinish.append(self.getProviders)
예제 #43
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self["key_green"] = Button("Slide Show")
		self["key_yellow"] = Button("Thumb View")
		self["currentfolder"] = Label("")
		self["currentfavname"] = Label("")
		self["actions"] = HelpableActionMap(self, "MC_PictureViewerActions", 
			{
				"ok": (self.KeyOk, "Show Picture"),
				"cancel": (self.Exit, "Exit Picture Viewer"),
				"left": (self.leftUp, "List Top"),
				"right": (self.rightDown, "List Bottom"),
				"up": (self.up, "List up"),
				"down": (self.down, "List down"),
				"info": (self.StartExif, "Show File Info"),
				"green": (self.startslideshow, "Start Slideshow"),
				"yellow": (self.StartThumb, "Thumb View"),
				"blue": (self.Settings, "Settings"),
			}, -2)

		self.aspect = getAspect()
		currDir = config.plugins.mc_pp.lastDir.value
		if not pathExists(currDir):
			currDir = "/"
		self["currentfolder"].setText(str(currDir))
		self.filelist = []
		self["filelist"] = []
		inhibitDirs = ["/bin", "/boot", "/dev", "/dev.static", "/etc", "/lib" , "/proc", "/ram", "/root" , "/sbin", "/sys", "/tmp", "/usr", "/var"]
		self.filelist = FileList(currDir, showDirectories = True, showFiles = True, showMountpoints = True, isTop = False, matchingPattern = "(?i)^.*\.(jpeg|jpg|jpe|png|bmp)", inhibitDirs = inhibitDirs)
		self["filelist"] = self.filelist
		self["filelist"].show()
		self["thumbnail"] = Pixmap()
		self.ThumbTimer = eTimer()
		self.ThumbTimer.callback.append(self.showThumb)
		self.ThumbTimer.start(500, True)

		self.picload = ePicLoad()
예제 #44
0
 def __init__(self, session):
     Screen.__init__(self, session)
     HelpableScreen.__init__(self)
     self.setTitle(_("Select Input Device"))
     self["deviceActions"] = HelpableActionMap(
         self, ["OkCancelActions"], {
             "ok": (self.keySelect, _("Select input device")),
             "cancel": (self.keyClose, _("Exit input device selection")),
             "close": (self.keyCloseRecursive,
                       _("Exit input device selection and close all menus"))
         },
         prio=-2,
         description=_("Input Device Actions"))
     self["key_red"] = StaticText(_("Close"))
     self["key_green"] = StaticText(_("Select"))
     self["introduction"] = StaticText(
         _("Press OK to edit the settings of the selected device."))
     self["list"] = List()
     self.devices = [(inputDevices.getDeviceName(x), x)
                     for x in inputDevices.getDeviceList()]
     # for index, device in enumerate(self.devices):
     # 	print("[InputDeviceSetup] DEBUG: Found device #%d: Event='%s' -> '%s'." % (index, device[1], device[0]))
     self.updateList()
예제 #45
0
	def __init__(self, session):
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)

		self["key_red"]    = StaticText(_("Exit"))
		self["key_green"]  = StaticText(_("Global"))
		self["key_yellow"] = StaticText(_("Mouse"))
		self["key_blue"]   = StaticText(_("Keyboard"))

		self["actions"] = ActionMap(["DirectionActions", "OkCancelActions","ColorActions"], {
				"ok"    : self.keyRed,
				"cancel": self.keyRed,
				"red"	: self.keyRed,
				"green" : self.keyGreen,
				"yellow": self.keyYellow,
				"blue"	: self.keyBlue,
			},-2)

		self.showHelpTimer = eTimer()
		self.showHelpTimer.callback.append(self.cbShowHelpTimerClosed)
		self.showHelpTimer.start(500)

		self.onLayoutFinish.append(self.layoutFinished)
예제 #46
0
	def __init__(self, session, startdir, message="", showDirectories = True, showFiles = True, showMountpoints = True, matchingPattern = "", useServiceRef = False, inhibitDirs = False, inhibitMounts = False, isTop = False, enableWrapAround = False, additionalExtensions = None):
		Screen.__init__(self, session)

		HelpableScreen.__init__(self)

		self["key_red"] = StaticText(_("Cancel"))
		self["key_green"] = StaticText()
		self["message"] = StaticText(message)

		self.filelist = FileList(startdir, showDirectories = showDirectories, showFiles = showFiles, showMountpoints = showMountpoints, matchingPattern = matchingPattern, useServiceRef = useServiceRef, inhibitDirs = inhibitDirs, inhibitMounts = inhibitMounts, isTop = isTop, enableWrapAround = enableWrapAround, additionalExtensions = additionalExtensions)
		self["filelist"] = self.filelist

		self["FilelistActions"] = ActionMap(["SetupActions", "ColorActions"],
			{
				"green": self.use,
				"red": self.exit,
				"ok": self.ok,
				"cancel": self.exit
			})

		hotplugNotifier.append(self.hotplugCB)
		self.onShown.append(self.updateButton)
		self.onClose.append(self.removeHotplug)
예제 #47
0
    def __init__(self, session):
        Screen.__init__(self, session)
        self.skinName = "wiffi_Setup"
        HelpableScreen.__init__(self)
        titel1 = "wiffi2e2FS " + _("Settings")
        #self.wiffi_ip=str(conf["wiffi_ip"])
        self.wiffi_ip = NoSave(
            ConfigText(default=str(wiffi_conf["wiffi_ip"]), fixed_size=False))
        self.debug = NoSave(ConfigEnableDisable(default=wiffi_conf["debug"]))
        self["key_red"] = Label(_("Cancel"))
        self["balken"] = Label(
            _("Press OK") + ", " + _("Select with left / right") + " " +
            _("main") + ", " + _("Infoline") + ", " +
            _("Default for full screen and diashow") + ", " + _("Thumbnails"))
        self["key_green"] = Label(_("Save"))
        self["key_yellow"] = Label("")
        self["key_blue"] = Label("")
        self["pic_red"] = Pixmap()
        self["pic_green"] = Pixmap()
        self["pic_yellow"] = Pixmap()
        self["pic_blue"] = Pixmap()
        self["bgr2"] = Pixmap()
        self.onChangedEntry = []
        self.session = session

        self["pcfsKeyActions"] = HelpableActionMap(
            self, "pcfsKeyActions", {
                "green": (self.save, _("Save")),
                "red": (self.keyCancel, _("Cancel")),
                "ok": (self.ok_button, _("edit if possible")),
                "cancel": (self.keyCancel, _("Cancel and close")),
            }, -2)
        self.refresh()
        self.setTitle(titel1)
        ConfigListScreen.__init__(
            self, self.liste,
            on_change=self.reloadList)  # on_change = self.changedEntry)
예제 #48
0
    def __init__(self, session):
        printl("", self, "S")

        Screen.__init__(self, session)
        HelpableScreen.__init__(self)

        self.cfglist = []
        ConfigListScreen.__init__(self,
                                  self.cfglist,
                                  session,
                                  on_change=self._changed)

        self._hasChanged = False

        self["txt_green"] = Label()
        self["btn_green"] = Pixmap()

        self["help"] = StaticText()

        self["setupActions"] = ActionMap(
            ["SetupActions", "ColorActions", "DPS_Settings"], {
                "green": self.keySave,
                "red": self.keyCancel,
                "cancel": self.keyCancel,
                "ok": self.ok,
                "left": self.keyLeft,
                "right": self.keyRight,
                "bouquet_up": self.keyBouquetUp,
                "bouquet_down": self.keyBouquetDown,
            }, -2)

        self.createSetup()

        self["config"].onSelectionChanged.append(self.updateHelp)
        self.onLayoutFinish.append(self.finishLayout)

        printl("", self, "C")
    def __init__(self, session):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        self.session = session
        self.skin = JobManagerFrontEnd.skin

        self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", {
            "cancel": (self.close, _("Close plugin")),
        }, -1)

        self["ColorActions"] = HelpableActionMap(
            self, "ColorActions", {
                "red": (self.removeJob, _("Delete download")),
                "blue": (self.stopSelectedJob, _("Stop download")),
                "green": (self.startSelectedJob, _("Start download")),
                "yellow": (self.getJobList, _("Refresh GUI")),
            }, -1)

        self["MovieSelectionActions"] = HelpableActionMap(
            self, "MovieSelectionActions", {
                "showEventInfo": (self.showErrorLog, _("Show error log")),
                "contextMenu": (self.showConfig, _("Show config")),
            }, -1)

        self.menulist = []

        self["ButtonRed"] = Pixmap()
        self["ButtonGreen"] = Pixmap()
        self["ButtonYellow"] = Pixmap()
        self["ButtonBlue"] = Pixmap()
        self["TextRed"] = Label(_("Remove download"))
        self["TextGreen"] = Label(_("Start download"))
        self["TextYellow"] = Label(_("Refresh GUI"))
        self["TextBlue"] = Label(_("Stop download"))
        self["menulist"] = JobList([])

        self.getJobList()
예제 #50
0
    def __init__(self, session):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)

        self.setTitle(_("Select input device"))
        self.edittext = _("Press OK to edit the settings.")

        self["key_red"] = StaticText(_("Close"))
        self["key_green"] = StaticText(_("Select"))
        self["key_yellow"] = StaticText("")
        self["key_blue"] = StaticText("")
        self["introduction"] = StaticText(self.edittext)

        self.devices = [(iInputDevices.getDeviceName(x), x)
                        for x in iInputDevices.getDeviceList()]
        print "[InputDeviceSelection] found devices :->", len(
            self.devices), self.devices

        self["OkCancelActions"] = HelpableActionMap(
            self, "OkCancelActions", {
                "cancel": (self.close, _("Exit input device selection.")),
                "ok": (self.okbuttonClick, _("Select input device.")),
            }, -2)

        self["ColorActions"] = HelpableActionMap(
            self, "ColorActions", {
                "red": (self.close, _("Exit input device selection.")),
                "green": (self.okbuttonClick, _("Select input device.")),
            }, -2)

        self.currentIndex = 0
        self.list = []
        self["list"] = List(self.list)
        self.updateList()
        self.onLayoutFinish.append(self.layoutFinished)
        self.onClose.append(self.cleanup)
예제 #51
0
def AutoTimerGraphMultiEPG__init__(self,
                                   session,
                                   services,
                                   zapFunc=None,
                                   bouquetChangeCB=None,
                                   bouquetname=""):
    try:
        baseGraphMultiEPG__init__(self, session, services, zapFunc,
                                  bouquetChangeCB, bouquetname)
    except:
        baseGraphMultiEPG__init__(self, session, services, zapFunc,
                                  bouquetChangeCB)
    if config.plugins.autotimer.add_to_graph.value:

        def showAutoTimer():
            open_list = [
                (_("Open standard setup menu"), "setup"),
                (_("Add new AutoTimer"), "add"),
                (_("Preview for your AutoTimers"), "preview"),
                (_("Search new events matching for your AutoTimers"),
                 "search"),
                (_("Timers list"), "timerlist"),
            ]
            dlg = self.session.openWithCallback(
                self.CallbackToGraphMultiEPG,
                ChoiceBox,
                title=_("Select action for AutoTimer:"),
                list=open_list)
            dlg.setTitle(_("Choice list AutoTimer"))

        HelpableScreen.__init__(self)
        self["AutoTimeractions"] = HelpableActionMap(
            self, "ChannelSelectEditActions", {
                "contextMenu": (showAutoTimer, _("Choice list AutoTimer")),
            }, -1)
        self["AutoTimeractions"].csel = self
    def __init__(self, session):
        self.skin = CurlyTxSettings.skin
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        #self.skinName = [ "CurlyTxSettings", "Setup" ]
        self.setup_title = _("Settings")

        self["actions"] = ActionMap(["SetupActions", "ColorActions"],
            {
                "cancel": self.keyCancel,
                "save": self.keySave,
                "ok": self.editPage,
                "yellow": self.newPage,
                "blue": self.deletePage
            }, -2)

        self["key_red"] = StaticText(_("Cancel"))
        self["key_green"] = StaticText(_("OK"))
        self["key_yellow"] = StaticText(_("New"))
        self["key_blue"] = StaticText(_("Delete"))

        ConfigListScreen.__init__(self, self.getConfigList(), session=self.session)

        self.loadHelp()
예제 #53
0
    def __init__(self, *args, **kwargs):
        baseMethods.Menu__init__(
            self, *args,
            **kwargs)  # using the base initializer saves us a few cycles
        HelpableScreen.__init__(self)
        self.skinName = "SortableMenu"
        self.setTitle(_("Main menu"))

        # XXX: not nice, but makes our life a little easier
        l = [(x[0], x[1], x[2], menuWeights.get(x, supportHiding=False),
              menuWeights.isHidden(x)) for x in self["menu"].list]
        l.sort(key=itemgetter(3))
        self["menu"] = SortableMenuList(l)
        self["key_blue"] = StaticText(_("hide entry"))

        self["DirectionActions"] = ActionMap(
            ["DirectionActions"], {
                "left": boundFunction(self.doMove, self["menu"].pageUp),
                "right": boundFunction(self.doMove, self["menu"].pageDown),
                "up": boundFunction(self.doMove, self["menu"].up),
                "down": boundFunction(self.doMove, self["menu"].down),
            }, -1)

        self["MenuSortActions"] = HelpableActionMap(
            self,
            "MenuSortActions",
            {
                "ignore":
                lambda: None,  # we need to overwrite some regular actions :-)
                "toggleSelection":
                (self.toggleSelection, _("toggle selection")),
                "selectEntry": (self.okbuttonClick, _("enter menu")),
                "hideEntry": (self.hideEntry, _("hide entry")),
            },
            -1)
        self.selected = -1
예제 #54
0
    def __init__(self, session, favoriteEvents):
        self.session = session
        self.skin_path = resolveFilename(SCOPE_PLUGINS,
                                         "Extensions/PrimeTimeManager")
        self.favoriteEvents = favoriteEvents
        if size_width >= 1280 and len(self.favoriteEvents) > 3:
            self.skin = skinPTMhdfull
        else:
            self.skin = skinPTMsd
        Screen.__init__(self, session)
        self.list = []
        self["list"] = ResultList(self.list)

        self["key_red"] = StaticText(_("Close"))
        self["key_green"] = StaticText(_("Accept"))
        self["key_yellow"] = StaticText("")
        self["key_blue"] = StaticText("")
        self["text_left"] = StaticText(_("Favorite"))
        self["text_right"] = StaticText(_("Solution"))

        HelpableScreen.__init__(self)

        self["SetupActions"] = HelpableActionMap(
            self, "SetupActions", {
                "cancel": (self.buttonCancel, _("Close")),
                "ok": (self.buttonOK, _("Accept the events as shown")),
            }, -1)

        self["ColorActions"] = HelpableActionMap(
            self, "ColorActions", {
                "red": (self.buttonCancel, _("Close")),
                "green": (self.buttonAccept, _("Accept the events as shown")),
            }, -1)

        self.visible = True
        self.onLayoutFinish.append(self.buildEventList)
예제 #55
0
 def __init__(self,
              session,
              event,
              serviceRef,
              callback=None,
              similarEPGCB=None,
              parent=None,
              windowTitle=None,
              skinName=None):
     Screen.__init__(self, session)
     HelpableScreen.__init__(self)
     EventViewBase.__init__(self,
                            event,
                            serviceRef,
                            callback=callback,
                            similarEPGCB=similarEPGCB,
                            parent=parent,
                            windowTitle=windowTitle)
     self.skinName = ["EventView"]
     if skinName:
         if isinstance(skinName, str):
             self.skinName.insert(0, skinName)
         else:
             self.skinName = skinName + self.skinname
예제 #56
0
    def __init__(self, session, api=None):
        Screen.__init__(self, session)
        HelpableScreen.__init__(self)
        InfoBarNotifications.__init__(self)

        if api is None:
            if config.plugins.ecasa.last_backend.value == 'picasa':
                self.api = PicasaApi(cache=config.plugins.ecasa.cache.value)
            else:
                self.api = FlickrApi(config.plugins.ecasa.flickr_api_key.value,
                                     cache=config.plugins.ecasa.cache.value)
            try:
                self.api.setCredentials(
                    config.plugins.ecasa.google_username.value,
                    config.plugins.ecasa.google_password.value)
            except Exception as e:
                AddPopup(
                    _("Unable to authenticate with Google: %s.") % (e.message),
                    MessageBox.TYPE_ERROR,
                    5,
                    id=AUTHENTICATION_ERROR_ID,
                )
        else:
            self.api = api

        self["key_red"] = StaticText(_("Close"))
        self["key_green"] = StaticText(_("Albums"))
        self["key_yellow"] = StaticText()
        self["key_blue"] = StaticText(_("Search"))
        for i in range(self.PICS_PER_PAGE):
            self['image%d' % i] = Pixmap()
            self['title%d' % i] = StaticText()
        self["highlight"] = MovingPixmap()
        self["waitingtext"] = Label(_("Please wait... Loading list..."))

        self["overviewActions"] = HelpableActionMap(
            self, "EcasaOverviewActions", {
                "up": self.up,
                "down": self.down,
                "left": self.left,
                "right": self.right,
                "nextPage": (self.nextPage, _("show next page")),
                "prevPage": (self.prevPage, _("show previous page")),
                "select": self.select,
                "exit": self.close,
                "albums": (self.albums, _("show your albums (if logged in)")),
                "search": (self.search, _("start a new search")),
                "contextMenu": (self.contextMenu, _("open context menu")),
            }, -1)

        self.offset = 0
        self.__highlighted = 0
        self.pictures = ()

        # thumbnail loader
        self.picload = ePicLoad()
        self.picload.PictureData.get().append(self.gotPicture)
        self.currentphoto = None
        self.queue = deque()

        self.onLayoutFinish.append(self.layoutFinished)
예제 #57
0
    def __init__(self, session, dvd_device=None, dvd_filelist=[], args=None):
        Screen.__init__(self, session)
        InfoBarBase.__init__(self)
        InfoBarNotifications.__init__(self)
        InfoBarCueSheetSupport.__init__(self,
                                        actionmap="MediaPlayerCueSheetActions")
        InfoBarShowHide.__init__(self)
        InfoBarAudioSelection.__init__(self)
        InfoBarSubtitleSupport.__init__(self)
        HelpableScreen.__init__(self)
        self.save_infobar_seek_config()
        self.change_infobar_seek_config()
        InfoBarSeek.__init__(self)
        InfoBarPVRState.__init__(self)

        self.oldService = self.session.nav.getCurrentlyPlayingServiceOrGroup()
        self.dvdScreen = None
        self.session.nav.stopService()
        self["audioLabel"] = Label("n/a")
        self["subtitleLabel"] = Label("")
        self["angleLabel"] = Label("")
        self["chapterLabel"] = Label("")
        self["anglePix"] = Pixmap()
        self["anglePix"].hide()
        self.last_audioTuple = None
        self.last_subtitleTuple = None
        self.last_angleTuple = None
        self.totalChapters = 0
        self.currentChapter = 0
        self.totalTitles = 0
        self.currentTitle = 0

        self.__event_tracker = ServiceEventTracker(
            screen=self,
            eventmap={
                iPlayableService.evEnd: self.__serviceStopped,
                iPlayableService.evStopped: self.__serviceStopped,
                iPlayableService.evUser: self.__timeUpdated,
                iPlayableService.evUser + 1: self.__statePlay,
                iPlayableService.evUser + 2: self.__statePause,
                iPlayableService.evUser + 3: self.__osdFFwdInfoAvail,
                iPlayableService.evUser + 4: self.__osdFBwdInfoAvail,
                iPlayableService.evUser + 5: self.__osdStringAvail,
                iPlayableService.evUser + 6: self.__osdAudioInfoAvail,
                iPlayableService.evUser + 7: self.__osdSubtitleInfoAvail,
                iPlayableService.evUser + 8: self.__chapterUpdated,
                iPlayableService.evUser + 9: self.__titleUpdated,
                iPlayableService.evUser + 11: self.__menuOpened,
                iPlayableService.evUser + 12: self.__menuClosed,
                iPlayableService.evUser + 13: self.__osdAngleInfoAvail
            })

        self["DVDPlayerDirectionActions"] = ActionMap(
            ["DirectionActions"],
            {
                #MENU KEY DOWN ACTIONS
                "left": self.keyLeft,
                "right": self.keyRight,
                "up": self.keyUp,
                "down": self.keyDown,

                #MENU KEY REPEATED ACTIONS
                "leftRepeated": self.doNothing,
                "rightRepeated": self.doNothing,
                "upRepeated": self.doNothing,
                "downRepeated": self.doNothing,

                #MENU KEY UP ACTIONS
                "leftUp": self.doNothing,
                "rightUp": self.doNothing,
                "upUp": self.doNothing,
                "downUp": self.doNothing,
            })

        self["OkCancelActions"] = ActionMap(["OkCancelActions"], {
            "ok": self.keyOk,
            "cancel": self.keyCancel,
        }, -2)

        self["DVDPlayerPlaybackActions"] = HelpableActionMap(
            self,
            ["DVDPlayerActions"],
            {
                #PLAYER ACTIONS
                "dvdMenu": (self.enterDVDMenu, _("show DVD main menu")),
                "toggleInfo":
                (self.toggleInfo,
                 _("toggle time, chapter, audio, subtitle info")),
                "nextChapter":
                (self.nextChapter, _("forward to the next chapter")),
                "prevChapter":
                (self.prevChapter, _("rewind to the previous chapter")),
                "nextTitle":
                (self.nextTitle, _("jump forward to the next title")),
                "prevTitle":
                (self.prevTitle, _("jump back to the previous title")),
                "tv": (self.askLeavePlayer,
                       _("exit DVD player or return to file browser")),
                "dvdAudioMenu":
                (self.enterDVDAudioMenu, _("(show optional DVD audio menu)")),
                "AudioSelection":
                (self.enterAudioSelection, _("Select audio track")),
                "nextAudioTrack":
                (self.nextAudioTrack, _("switch to the next audio track")),
                "nextSubtitleTrack":
                (self.nextSubtitleTrack,
                 _("switch to the next subtitle language")),
                "nextAngle": (self.nextAngle, _("switch to the next angle")),
                "seekBeginning":
                self.seekBeginning,
            },
            -2)

        self["DVDPlayerColorActions"] = HelpableActionMap(
            self, ["ColorActions"], {
                "blue": (self.chapterZap, _("jump to chapter by number")),
            }, -2)

        self.onClose.append(self.__onClose)

        try:
            from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
            hotplugNotifier.append(self.hotplugCB)
        except:
            pass

        self.autoplay = dvd_device or dvd_filelist

        if dvd_device:
            self.physicalDVD = True
        else:
            self.scanHotplug()

        self.dvd_filelist = dvd_filelist
        self.onFirstExecBegin.append(self.opened)
        self.service = None
        self.in_menu = False
        if fileExists("/proc/stb/fb/dst_left"):
            self.left = open("/proc/stb/fb/dst_left", "r").read()
            self.width = open("/proc/stb/fb/dst_width", "r").read()
            self.top = open("/proc/stb/fb/dst_top", "r").read()
            self.height = open("/proc/stb/fb/dst_height", "r").read()
            if self.left != "00000000" or self.top != "00000000" or self.width != "000002d0" or self.height != "0000000240":
                open("/proc/stb/fb/dst_left", "w").write("00000000")
                open("/proc/stb/fb/dst_width", "w").write("000002d0")
                open("/proc/stb/fb/dst_top", "w").write("00000000")
                open("/proc/stb/fb/dst_height", "w").write("0000000240")
                self.onClose.append(self.__restoreOSDSize)
예제 #58
0
	def __init__(self, session, args = None):
		Screen.__init__(self, session)
		InfoBarAudioSelection.__init__(self)
		InfoBarAspectSelection.__init__(self)
		InfoBarCueSheetSupport.__init__(self, actionmap = "MediaPlayerCueSheetActions")
		InfoBarNotifications.__init__(self)
		InfoBarBase.__init__(self)
		InfoBarScreenSaver.__init__(self)
		InfoBarSubtitleSupport.__init__(self)
		HelpableScreen.__init__(self)
		self.summary = None
		self.oldService = self.session.nav.getCurrentlyPlayingServiceOrGroup()
		self.session.nav.stopService()

		self.setTitle(_("Media player"))

		self.playlistparsers = {}
		self.addPlaylistParser(PlaylistIOM3U, "m3u")
		self.addPlaylistParser(PlaylistIOPLS, "pls")
		self.addPlaylistParser(PlaylistIOInternal, "e2pls")

		# 'None' is magic to start at the list of mountpoints
		defaultDir = config.mediaplayer.defaultDir.getValue()
		self.filelist = FileList(defaultDir, matchingPattern = "(?i)^.*\.(dts|mp3|wav|wave|wv|oga|ogg|flac|m4a|mp2|m2a|wma|ac3|mka|aac|ape|alac|mpg|vob|m4v|mkv|avi|divx|dat|flv|mp4|mov|wmv|asf|3gp|3g2|mpeg|mpe|rm|rmvb|ogm|ogv|m2ts|mts|ts|m3u|e2pls|pls|amr|au|mid|pva|wtv)", useServiceRef = True, additionalExtensions = "4098:m3u 4098:e2pls 4098:pls")
		self["filelist"] = self.filelist

		self.playlist = MyPlayList()
		self.is_closing = False
		self.delname = ""
		self.playlistname = ""
		self["playlist"] = self.playlist

		self["PositionGauge"] = ServicePositionGauge(self.session.nav)

		self["currenttext"] = Label("")

		self["artisttext"] = Label(_("Artist")+':')
		self["artist"] = Label("")
		self["titletext"] = Label(_("Title")+':')
		self["title"] = Label("")
		self["albumtext"] = Label(_("Album")+':')
		self["album"] = Label("")
		self["yeartext"] = Label(_("Year")+':')
		self["year"] = Label("")
		self["genretext"] = Label(_("Genre")+':')
		self["genre"] = Label("")
		self["coverArt"] = MediaPixmap()
		self["repeat"] = MultiPixmap()

		self.seek_target = None

		try:
			from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
			hotplugNotifier.append(self.hotplugCB)
		except Exception as ex:
			print("[MediaPlayer] No hotplug support", ex)

		class MoviePlayerActionMap(NumberActionMap):
			def __init__(self, player, contexts = [ ], actions = { }, prio=0):
				NumberActionMap.__init__(self, contexts, actions, prio)
				self.player = player

			def action(self, contexts, action):
				self.player.show()
				return NumberActionMap.action(self, contexts, action)

		self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
			{
				"ok": (self.ok, _("Add file to playlist")),
				"cancel": (self.exit, _("Exit mediaplayer")),
			}, -2)

		self["MediaPlayerActions"] = HelpableActionMap(self, "MediaPlayerActions",
			{
				"play": (self.xplayEntry, _("Play entry")),
				"pause": (self.pauseEntry, _("Pause")),
				"stop": (self.stopEntry, _("Stop entry")),
				"previous": (self.previousMarkOrEntry, _("Play from previous mark or playlist entry")),
				"next": (self.nextMarkOrEntry, _("Play from next mark or playlist entry")),
				"menu": (self.showMenu, _("Menu")),
				"skipListbegin": (self.skip_listbegin, _("Jump to beginning of list")),
				"skipListend": (self.skip_listend, _("Jump to end of list")),
				"prevBouquet": (self.prevBouquet, self.prevBouquetHelpText),
				"nextBouquet": (self.nextBouquet, self.nextBouquetHelptext),
				"delete": (self.deletePlaylistEntry, _("Delete playlist entry")),
				"shift_stop": (self.clear_playlist, _("Clear playlist")),
				"shift_record": (self.playlist.PlayListShuffle, _("Shuffle playlist")),
				"subtitles": (self.subtitleSelection, _("Subtitle selection")),
			}, -2)

		self["InfobarEPGActions"] = HelpableActionMap(self, "InfobarEPGActions",
			{
				"showEventInfo": (self.showEventInformation, _("show event details")),
			})

		self["actions"] = MoviePlayerActionMap(self, ["DirectionActions"],
		{
			"right": self.rightDown,
			"rightRepeated": self.doNothing,
			"rightUp": self.rightUp,
			"left": self.leftDown,
			"leftRepeated": self.doNothing,
			"leftUp": self.leftUp,

			"up": self.up,
			"upRepeated": self.up,
			"upUp": self.doNothing,
			"down": self.down,
			"downRepeated": self.down,
			"downUp": self.doNothing,
		}, -2)

		InfoBarSeek.__init__(self, actionmap = "MediaPlayerSeekActions")

		self.mediaPlayerInfoBar = self.session.instantiateDialog(MediaPlayerInfoBar)

		self.onClose.append(self.delMPTimer)
		self.onClose.append(self.__onClose)
		self.onShow.append(self.timerHideMediaPlayerInfoBar)

		self.righttimer = False
		self.rightKeyTimer = eTimer()
		self.rightKeyTimer.callback.append(self.rightTimerFire)

		self.lefttimer = False
		self.leftKeyTimer = eTimer()
		self.leftKeyTimer.callback.append(self.leftTimerFire)

		self.hideMediaPlayerInfoBar = eTimer()
		self.hideMediaPlayerInfoBar.callback.append(self.timerHideMediaPlayerInfoBar)

		self.currList = "filelist"
		self.isAudioCD = False
		self.ext = None
		self.AudioCD_albuminfo = {}
		self.cdAudioTrackFiles = []
		self.onShown.append(self.applySettings)

		self.playlistIOInternal = PlaylistIOInternal()
		list = self.playlistIOInternal.open(resolveFilename(SCOPE_CONFIG, "playlist.e2pls"))
		if list:
			for x in list:
				self.playlist.addFile(x.ref)
			self.playlist.updateList()

		self.__event_tracker = ServiceEventTracker(screen=self, eventmap=
			{
				iPlayableService.evUpdatedInfo: self.__evUpdatedInfo,
				iPlayableService.evUser+10: self.__evAudioDecodeError,
				iPlayableService.evUser+11: self.__evVideoDecodeError,
				iPlayableService.evUser+12: self.__evPluginError,
				iPlayableService.evUser+13: self["coverArt"].embeddedCoverArt
			})

		self.servicelist = None
		self.pipZapAvailable = False
		if InfoBar.instance is not None:
			self.servicelist = InfoBar.instance.servicelist
			if self.servicelist and hasattr(self.servicelist, 'dopipzap'):
				self.pipZapAvailable = SystemInfo.get("NumVideoDecoders", 1) > 1
예제 #59
0
	def __init__(self, session, webSender):
		serienRecBaseScreen.__init__(self, session)
		Screen.__init__(self, session)
		HelpableScreen.__init__(self)
		self.session = session
		self.webSender = webSender

		from .SerienRecorder import serienRecDataBaseFilePath
		from .SerienRecorderDatabase import SRDatabase
		self.database = SRDatabase(serienRecDataBaseFilePath)

		self["actions"] = HelpableActionMap(self, "SerienRecorderActions", {
			"red": (self.cancel, "Änderungen verwerfen und zurück zur Sender-Ansicht"),
			"green": (self.save, "Einstellungen speichern und zurück zur Sender-Ansicht"),
			"cancel": (self.cancel, "Änderungen verwerfen und zurück zur Sender-Ansicht"),
			"ok": (self.ok, "---"),
			"up": (self.keyUp, "eine Zeile nach oben"),
			"down": (self.keyDown, "eine Zeile nach unten"),
			"startTeletext": (self.showAbout, "Über dieses Plugin"),
		}, -1)
		self.helpList[0][2].sort()

		self["helpActions"] = ActionMap(["SerienRecorderActions", ], {
			"ok": self.ok,
			"displayHelp": self.showHelp,
			"displayHelp_long": self.showManual,
		}, 0)

		self.setupSkin()
		if config.plugins.serienRec.showAllButtons.value:
			setMenuTexts(self)

		(Vorlaufzeit, Nachlaufzeit, vps, autoAdjust) = self.database.getChannelsSettings(self.webSender)

		if str(Vorlaufzeit).isdigit():
			self.margin_before = ConfigInteger(Vorlaufzeit, (0, 99))
			self.enable_margin_before = ConfigYesNo(default=True)
		else:
			self.margin_before = ConfigInteger(config.plugins.serienRec.margin_before.value, (0, 99))
			self.enable_margin_before = ConfigYesNo(default=False)

		if str(Nachlaufzeit).isdigit():
			self.margin_after = ConfigInteger(Nachlaufzeit, (0, 99))
			self.enable_margin_after = ConfigYesNo(default=True)
		else:
			self.margin_after = ConfigInteger(config.plugins.serienRec.margin_after.value, (0, 99))
			self.enable_margin_after = ConfigYesNo(default=False)

		if str(vps).isdigit():
			self.enable_vps = ConfigYesNo(default=bool(vps & 0x1))
			self.enable_vps_savemode = ConfigYesNo(default=bool(vps & 0x2))
		else:
			self.enable_vps = ConfigYesNo(default=False)
			self.enable_vps_savemode = ConfigYesNo(default=False)

		if str(autoAdjust).isdigit():
			self.autoAdjust = ConfigYesNo(default=bool(autoAdjust))
			self.enable_autoAdjust = ConfigYesNo(default=True)
		else:
			self.autoAdjust = ConfigYesNo(default=False)
			self.enable_autoAdjust = ConfigYesNo(default=False)

		self.changedEntry()
		ConfigListScreen.__init__(self, self.list)
		self.setInfoText()
		self['config_information_text'].setText(self.HilfeTexte[self.enable_margin_before])
		self.onLayoutFinish.append(self.setSkinProperties)
예제 #60
0
 def __init__(self,
              session,
              text,
              type=TYPE_YESNO,
              timeout=0,
              close_on_any_key=False,
              default=True,
              enable_input=True,
              msgBoxID=None,
              picon=True,
              simple=False,
              wizard=False,
              list=None,
              skin_name=None,
              timeout_default=None,
              title=None):
     Screen.__init__(self, session)
     HelpableScreen.__init__(self)
     if text:
         self.text = _(text)
     else:
         self.text = text
     if type in range(self.TYPE_MESSAGE + 1):
         self.type = type
     else:
         self.type = self.TYPE_MESSAGE
     self.timeout = int(timeout)
     self.close_on_any_key = close_on_any_key
     if enable_input:
         self["actions"] = HelpableActionMap(
             self,
             ["MsgBoxActions", "DirectionActions"],
             {
                 "cancel": (self.cancel, _("Cancel the selection")),
                 "ok": (self.ok, _("Accept the current selection")),
                 "alwaysOK": (self.alwaysOK, _("Always select OK")),
                 "up": (self.up, _("Move up a line")),
                 "down": (self.down, _("Move down a line")),
                 "left": (self.left, _("Move up a page")),
                 "right": (self.right, _("Move down a page"))
                 # These actions are *ONLY* defined on OpenPLi!
                 # I don't believe thay add any functionality even for OpenPLi.
                 # "upRepeated": (self.up, _("Move up a line repeatedly")),
                 # "downRepeated": (self.down, _("Move down a line repeatedly")),
                 # "leftRepeated": (self.left, _("Move up a page repeatedly")),
                 # "rightRepeated": (self.right, _("Move down a page repeatedly"))
             },
             prio=-1,
             description=_("MessageBox Functions"))
     self.msgBoxID = msgBoxID
     # These six lines can go with new skins that only use self["icon"]...
     self["icon"] = MultiPixmap()
     self["icon"].hide()
     self.picon = picon
     if picon:
         # These five lines can go with new skins that only use self["icon"]...
         if self.type == self.TYPE_YESNO:
             self["icon"].show()
         elif self.type == self.TYPE_INFO:
             self["icon"].show()
         elif self.type == self.TYPE_ERROR:
             self["icon"].show()
     self.skinName = ["MessageBox"]
     if simple:
         self.skinName = ["MessageBoxSimple"] + self.skinName
     if wizard:
         self["rc"] = MultiPixmap()
         self["rc"].setPixmapNum(config.misc.rcused.value)
         self.skinName = ["MessageBoxWizard"]
     if isinstance(skin_name, str):
         self.skinName = [skin_name] + self.skinName
     if not list:
         list = []
     if type == self.TYPE_YESNO:
         if list:
             self.list = list
         elif default:
             self.list = [(_("Yes"), True), (_("No"), False)]
         else:
             self.list = [(_("No"), False), (_("Yes"), True)]
     else:
         self.list = []
     self.timeout_default = timeout_default
     self.baseTitle = title
     self.activeTitle = None
     self.timerRunning = False
     if timeout > 0:
         self.timerRunning = True
     self["text"] = Label(self.text)
     self["Text"] = StaticText(self.text)  # What is self["Text"] for?
     self["selectedChoice"] = StaticText()
     self["list"] = MenuList(self.list)
     if self.list:
         self["selectedChoice"].setText(self.list[0][0])
     else:
         self["list"].hide()
     self["key_help"] = StaticText(_("HELP"))
     self.timer = eTimer()
     self.timer.callback.append(self.processTimer)
     if self.layoutFinished not in self.onLayoutFinish:
         self.onLayoutFinish.append(self.layoutFinished)