e7ec004895fcbe3e8ae1fb688012d41008ccab4c
[electrum-nvc.git] / gui / plugins.py
1
2
3 class BasePlugin:
4
5     def get_info(self):
6         return self.fullname, self.description
7
8     def __init__(self, gui, name, fullname, description):
9         self.name = name
10         self.fullname = fullname
11         self.description = description
12         self.gui = gui
13         self.config = gui.config
14
15     def requires_settings(self):
16         return False
17
18     def toggle(self):
19         enabled = not self.is_enabled()
20         self.set_enabled(enabled)
21         self.init_gui()
22         return enabled
23     
24     def init_gui(self):
25         pass
26
27     def is_enabled(self):
28         return self.is_available() and self.config.get('use_'+self.name) is True
29
30     def is_available(self):
31         return True
32
33     def set_enabled(self, enabled):
34         self.config.set_key('use_'+self.name, enabled, True)
35
36     def settings_dialog(self):
37         pass