add Plugin.py
authorFelix Domke <tmbinc@elitedvb.net>
Sun, 19 Feb 2006 21:43:04 +0000 (21:43 +0000)
committerFelix Domke <tmbinc@elitedvb.net>
Sun, 19 Feb 2006 21:43:04 +0000 (21:43 +0000)
lib/python/Plugins/Plugin.py [new file with mode: 0644]

diff --git a/lib/python/Plugins/Plugin.py b/lib/python/Plugins/Plugin.py
new file mode 100644 (file)
index 0000000..d10a3fb
--- /dev/null
@@ -0,0 +1,35 @@
+class PluginDescriptor:
+       """An object to describe a plugin."""
+       
+       # where to list the plugin. Note that there are different call arguments,
+       # so you might not be able to combine them.
+       
+       # supported arguments are:
+       #   session
+       #   servicereference
+       #   reason
+       
+       # argument: session
+       WHERE_BLUEMENU = 0
+       WHERE_MAINMENU = 1
+       WHERE_PLUGINMENU  = 2
+       # argument: session, serviceref (currently selected)
+       WHERE_MOVIELIST = 3
+       # ...
+       WHERE_SETUP    = 4
+       
+       # reason (0: start, 1: end)
+       WHERE_AUTOSTART = 5
+       
+       def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None):
+               self.name = name
+               if type(where) is list:
+                       self.where = where
+               else:
+                       self.where = [ where ]
+               self.description = description
+               if type(fnc) is str:
+                       self.icon = loadPNG("..")
+               else:
+                       self.icon = icon
+               self.__call__ = fnc