X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/5db2dc5c63948651b3e4b337d7057cd940ccc644..17a005241a08d3ee1cb8f6f9fed68e4b3201e41c:/lib/python/Plugins/Plugin.py diff --git a/lib/python/Plugins/Plugin.py b/lib/python/Plugins/Plugin.py index f6f9b481..a0db1d66 100644 --- a/lib/python/Plugins/Plugin.py +++ b/lib/python/Plugins/Plugin.py @@ -28,7 +28,7 @@ class PluginDescriptor: # reason (0: start, 1: end) WHERE_AUTOSTART = 5 - # start as wizard. In that case, fnc must be a screen class! + # start as wizard. In that case, fnc must be tuple (priority,class) with class being a screen class! WHERE_WIZARD = 6 # like autostart, but for a session. currently, only session starts are @@ -45,8 +45,9 @@ class PluginDescriptor: # or return a function which is called with session and the interface name for extended setup of this interface WHERE_NETWORKSETUP = 10 - def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None): + def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None, wakeupfnc = None, internal = False): self.name = name + self.internal = internal if type(where) is list: self.where = where else: @@ -59,6 +60,8 @@ class PluginDescriptor: else: self.icon = icon + self.wakeupfnc = wakeupfnc + self.__call__ = fnc def updateIcon(self, path): @@ -67,5 +70,8 @@ class PluginDescriptor: else: self.icon = None + def getWakeupTime(self): + return self.wakeupfnc and self.wakeupfnc() or -1 + def __eq__(self, other): return self.__call__ == other.__call__