add FileList component for browsing files and directories
[vuplus_dvbapp] / lib / python / Plugins / test / plugin.py
1 from enigma import *
2 from Screens.Screen import Screen
3 from Screens.MessageBox import MessageBox
4 from Components.ActionMap import NumberActionMap
5 from Components.Label import Label
6 from Components.Input import Input
7 from Components.GUIComponent import *
8 from Components.FileList import FileEntryComponent, FileList
9 from Plugins.Plugin import PluginDescriptor
10
11 import os
12
13 class Test(Screen):
14         skin = """
15                 <screen position="100,100" size="550,400" title="Test" >
16                         <!--widget name="text" position="0,0" size="550,25" font="Regular;20" /-->
17                         <widget name="list" position="10,0" size="190,250" scrollbarMode="showOnDemand" />
18                 </screen>"""
19         def __init__(self, session, args = None):
20                 self.skin = Test.skin
21                 Screen.__init__(self, session)
22
23                 self["list"] = FileList("/")
24
25                 #self["text"] = Input("1234", maxSize=True, type=Input.NUMBER)
26                                 
27                 self["actions"] = NumberActionMap(["WizardActions", "InputActions"],
28                 {
29                         "ok": self.ok,
30                         "back": self.close,
31 #                       "left": self.keyLeft,
32 #                       "right": self.keyRight,
33                         "1": self.keyNumberGlobal,
34                         "2": self.keyNumberGlobal,
35                         "3": self.keyNumberGlobal,
36                         "4": self.keyNumberGlobal,
37                         "5": self.keyNumberGlobal,
38                         "6": self.keyNumberGlobal,
39                         "7": self.keyNumberGlobal,
40                         "8": self.keyNumberGlobal,
41                         "9": self.keyNumberGlobal,
42                         "0": self.keyNumberGlobal
43                 }, -1)
44                 
45         def keyLeft(self):
46                 self["text"].left()
47         
48         def keyRight(self):
49                 self["text"].right()
50         
51         def ok(self):
52                 selection = self["list"].getSelection()
53                 if selection[1] == True: # isDir
54                         self["list"].changeDir(selection[0])
55         
56         def keyNumberGlobal(self, number):
57                 print "pressed", number
58                 self["text"].number(number)
59
60 def main(session):
61         session.open(Test)
62
63 def Plugins():
64         return PluginDescriptor(name="Test", description="plugin to test some capabilities", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main)