So sieht mein Versuch aus:
gedit.py
Code: Alles auswählen
plugins = []
instances = []
class PluginMeta(type):
def __new__(mcs, name, bases, dct):
plugin = type.__new__(mcs, name, bases, dct)
plugins.append(plugin)
return plugin
class Plugin(object):
__metaclass__ = PluginMeta
def activate(self):
raise NotImplementedError
if __name__ == '__main__':
__import__('plugin')
for plugin in plugins:
if plugin != Plugin:
instance = plugin()
instance.activate()
instances.append(instance)
Code: Alles auswählen
import gedit
class MyPlugin(gedit.Plugin):
def __init__(self):
gedit.Plugin.__init__(self)
def activate(self):
print 'Hello World'
Wie kann ich Variablen "modul-übergreifend" definieren?