add FileList component for browsing files and directories
[vuplus_dvbapp] / lib / python / Plugins / test / plugin.py
index 90c45e6..0a37533 100644 (file)
@@ -5,27 +5,31 @@ from Components.ActionMap import NumberActionMap
 from Components.Label import Label
 from Components.Input import Input
 from Components.GUIComponent import *
+from Components.FileList import FileEntryComponent, FileList
+from Plugins.Plugin import PluginDescriptor
 
 import os
 
 class Test(Screen):
        skin = """
                <screen position="100,100" size="550,400" title="Test" >
-                       <widget name="text" position="0,0" size="550,25" font="Regular;20" />
+                       <!--widget name="text" position="0,0" size="550,25" font="Regular;20" /-->
+                       <widget name="list" position="10,0" size="190,250" scrollbarMode="showOnDemand" />
                </screen>"""
-               
        def __init__(self, session, args = None):
                self.skin = Test.skin
                Screen.__init__(self, session)
 
-               self["text"] = Input("1234", maxSize=True, type=Input.NUMBER)
+               self["list"] = FileList("/")
+
+               #self["text"] = Input("1234", maxSize=True, type=Input.NUMBER)
                                
-               self["actions"] = NumberActionMap(["WizardActions", "InputActions"], 
+               self["actions"] = NumberActionMap(["WizardActions", "InputActions"],
                {
-                       "ok": self.close,
+                       "ok": self.ok,
                        "back": self.close,
-                       "left": self.keyLeft,
-                       "right": self.keyRight,
+#                      "left": self.keyLeft,
+#                      "right": self.keyRight,
                        "1": self.keyNumberGlobal,
                        "2": self.keyNumberGlobal,
                        "3": self.keyNumberGlobal,
@@ -44,12 +48,17 @@ class Test(Screen):
        def keyRight(self):
                self["text"].right()
        
+       def ok(self):
+               selection = self["list"].getSelection()
+               if selection[1] == True: # isDir
+                       self["list"].changeDir(selection[0])
+       
        def keyNumberGlobal(self, number):
                print "pressed", number
                self["text"].number(number)
 
-def getPicturePaths():
-       return [ "" ]
+def main(session):
+       session.open(Test)
 
-def getPlugins():
-       return [("Test", "plugin to test some capabilities", "screen", "Test")]
+def Plugins():
+       return PluginDescriptor(name="Test", description="plugin to test some capabilities", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main)