3 from Tools.Directories import *
4 from Screens.Menu import menuupdater
10 self.setPluginPrefix("Plugins.")
13 def setPluginPrefix(self, prefix):
16 def getPluginList(self):
18 dir = os.listdir("/usr/lib/enigma2/python/Plugins/")
22 if x[-3:] == ".py" and x[:-3] != "__init__":
23 print "trying to import " + self.prefix + x[:-3]
24 exec "import " + self.prefix + x[:-3]
25 picturepath = eval(self.prefix + x[:-3]).getPicturePath()
26 pluginname = eval(self.prefix + x[:-3]).getPluginName()
28 for menuEntry in eval(self.prefix + x[:-3]).getMenuRegistrationList():
29 self.menuEntries.append([menuEntry, self.prefix + x[:-3]])
33 list.append((picturepath, pluginname , x[:-3]))
38 for menuEntry in self.menuEntries:
39 menuupdater.delMenuItem(menuEntry[0][0], menuEntry[0][2], menuEntry[1], menuEntry[0][3])
42 for menuEntry in self.menuEntries:
43 menuupdater.addMenuItem(menuEntry[0][0], menuEntry[0][2], menuEntry[1], menuEntry[0][3])
45 def runPlugin(self, plugin, session):
47 exec "import " + self.prefix + plugin[2]
48 eval(self.prefix + plugin[2]).main(session)
50 print "exec of plugin failed!"
52 plugins = PluginComponent()