blob: 0378ce4cc206b72187f266a912047ba98b3d4d7f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
from enigma import loadPNG
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
# start as wizard. In that case, fnc must be a screen class!
WHERE_WIZARD = 6
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
self.iconstr = icon
self.icon = None
self.__call__ = fnc
def updateIcon(self, path):
if type(self.iconstr) is str:
self.icon = loadPNG(path + self.iconstr)
else:
self.icon = None
|