# servicereference
# reason
+ # you have to ignore unknown kwargs!
+
# argument: session
- WHERE_BLUEMENU = 0
+ WHERE_EXTENSIONSMENU = 0
WHERE_MAINMENU = 1
WHERE_PLUGINMENU = 2
# argument: session, serviceref (currently selected)
# start as wizard. In that case, fnc must be a screen class!
WHERE_WIZARD = 6
+ # like autostart, but for a session. currently, only session starts are
+ # delivered, and only on pre-loaded plugins
+ WHERE_SESSIONSTART = 7
+
+ # start as teletext plugin. arguments: session, serviceref
+ WHERE_TELETEXT = 8
+
def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None):
self.name = name
if type(where) is list:
self.where = [ where ]
self.description = description
- self.iconstr = icon
- self.icon = None
+ if type(icon) is str or icon is None:
+ self.iconstr = icon
+ self.icon = None
+ else:
+ self.icon = icon
self.__call__ = fnc
def updateIcon(self, path):
if type(self.iconstr) is str:
- self.icon = loadPNG(path + self.iconstr)
+ self.icon = loadPNG(path + "/" + self.iconstr)
else:
self.icon = None
+
+ def __eq__(self, other):
+ return self.__call__ == other.__call__