1 from Screens.Screen import Screen
2 from Screens.MessageBox import MessageBox
3 from Components.ActionMap import NumberActionMap
4 from Components.Input import Input
5 from Components.Pixmap import Pixmap
6 from Components.FileList import FileList
7 from Screens.ChoiceBox import ChoiceBox
8 from Plugins.Plugin import PluginDescriptor
12 <screen position="100,100" size="550,400" title="Test" >
13 <!--widget name="text" position="0,0" size="550,25" font="Regular;20" /-->
14 <widget name="list" position="10,0" size="190,250" scrollbarMode="showOnDemand" />
15 <widget name="pixmap" position="200,0" size="190,250" />
17 def __init__(self, session, args = None):
19 Screen.__init__(self, session)
21 self["list"] = FileList("/", matchingPattern = "^.*\.(png|avi|mp3|mpeg|ts)")
22 self["pixmap"] = Pixmap()
24 #self["text"] = Input("1234", maxSize=True, type=Input.NUMBER)
26 self["actions"] = NumberActionMap(["WizardActions", "InputActions"],
30 # "left": self.keyLeft,
31 # "right": self.keyRight,
32 "1": self.keyNumberGlobal,
33 "2": self.keyNumberGlobal,
34 "3": self.keyNumberGlobal,
35 "4": self.keyNumberGlobal,
36 "5": self.keyNumberGlobal,
37 "6": self.keyNumberGlobal,
38 "7": self.keyNumberGlobal,
39 "8": self.keyNumberGlobal,
40 "9": self.keyNumberGlobal,
41 "0": self.keyNumberGlobal
44 #self.onShown.append(self.openTest)
47 self.session.openWithCallback(self.mycallback, MessageBox, _("Test-Messagebox?"))
49 # self.session.open(InputBox)
51 def mycallback(self, answer):
52 print "answer:", answer
54 raise Exception("test-crash")
64 selection = self["list"].getSelection()
65 if selection[1] == True: # isDir
66 self["list"].changeDir(selection[0])
68 self["pixmap"].instance.setPixmapFromFile(selection[0])
70 def keyNumberGlobal(self, number):
71 print "pressed", number
72 self["text"].number(number)
74 def main(session, **kwargs):
76 #session.openWithCallback(test, MessageBox, _("Test-Messagebox?"), timeout = 10)
77 #session.openWithCallback(test, ChoiceBox, title="Delete everything on this Dreambox?", list=[(_("yes"), "yes"), (_("no"), "no"), (_("perhaps"), "perhaps"), (_("ask me tomorrow"), "ask me tomorrow"), (_("leave me alone with this!"), "yes")])
79 def test(returnValue):
80 print "You entered", returnValue
82 def Plugins(**kwargs):
83 return PluginDescriptor(name="Test", description="plugin to test some capabilities", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main)