Plugin permission additions
This commit is contained in:
@@ -3,7 +3,7 @@ Copy the example and rename it to your desired name. Plugins define a ui target
|
||||
Plugins must have a run method defined; though, you do not need to necessarily do anything within it. The run method implies that the passed in event system or other data is ready for the plugin to use.
|
||||
|
||||
|
||||
### Manifest
|
||||
### Manifest Example (All are required.)
|
||||
```
|
||||
class Manifest:
|
||||
path: str = os.path.dirname(os.path.realpath(__file__))
|
||||
@@ -23,8 +23,11 @@ class Manifest:
|
||||
```
|
||||
permissions: {} = {
|
||||
'ui_target': "plugin_control_list",
|
||||
'ui_target_id': "<some other Gtk Glade ID>" # Only needed if using "other" in "ui_target". See below for predefined "ui_target" options...
|
||||
'pass_fm_events': "true" # If empty or undefined will be ignored.
|
||||
'ui_target_id': "<some other Gtk Glade ID>" # Only needed if using "other" in "ui_target". See below for predefined "ui_target" options...
|
||||
'pass_fm_events': "true" # If empty or not present will be ignored.
|
||||
'bind_keys': [f"{name}||send_message:<Control>f"],
|
||||
f"{name}||do_save:<Control>s"] # Bind keys with method and key pare using list. Must pass "name" like shown with delimiter to its right.
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
|
@@ -32,8 +32,8 @@ class Manifest:
|
||||
support: str = ""
|
||||
permissions: {} = {
|
||||
'ui_target': "plugin_control_list",
|
||||
'pass_fm_events': "true"
|
||||
|
||||
'pass_fm_events': "true",
|
||||
'bind_keys': [f"{name}||send_message:<Control>f"]
|
||||
}
|
||||
|
||||
|
||||
@@ -58,6 +58,7 @@ class Plugin(Manifest):
|
||||
|
||||
def send_message(self, widget=None, eve=None):
|
||||
message = "Hello, World!"
|
||||
print("here")
|
||||
self._event_system.push_gui_event([self.name, "display_message", ("warning", message, None)])
|
||||
|
||||
|
||||
@@ -68,13 +69,17 @@ class Plugin(Manifest):
|
||||
event = self._event_system.read_module_event()
|
||||
if event:
|
||||
try:
|
||||
if event[0] is self.name:
|
||||
if event[0] == self.name:
|
||||
target_id, method_target, data = self._event_system.consume_module_event()
|
||||
|
||||
if not method_target:
|
||||
self._event_message = data
|
||||
else:
|
||||
method = getattr(self.__class__, f"{method_target}")
|
||||
data = method(*(self, *parameters))
|
||||
if data:
|
||||
data = method(*(self, *data))
|
||||
else:
|
||||
method(*(self,))
|
||||
except Exception as e:
|
||||
print("ewww here")
|
||||
print(repr(e))
|
||||
|
@@ -63,14 +63,17 @@ class Plugin(Manifest):
|
||||
event = self._fm_event_system.read_module_event()
|
||||
if event:
|
||||
try:
|
||||
if event[0] is self.name:
|
||||
if event[0] == self.name:
|
||||
target_id, method_target, data = self._fm_event_system.consume_module_event()
|
||||
|
||||
if not method_target:
|
||||
self._fm_event_message = data
|
||||
else:
|
||||
method = getattr(self.__class__, f"{method_target}")
|
||||
data = method(*(self, *parameters))
|
||||
if data:
|
||||
data = method(*(self, *data))
|
||||
else:
|
||||
method(*(self,))
|
||||
except Exception as e:
|
||||
print(repr(e))
|
||||
|
||||
|
Reference in New Issue
Block a user