Refactor plugin event API: rename message* to emit* and requests_ui_element to request_ui_element
This commit is contained in:
@@ -37,7 +37,7 @@ class Plugin(PluginCode):
|
||||
]
|
||||
)
|
||||
|
||||
self.message_to("source_views", event)
|
||||
self.emit_to("source_views", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -25,7 +25,7 @@ class Plugin(PluginCode):
|
||||
code_minimap.set_smini_view(event.view)
|
||||
|
||||
def load(self):
|
||||
editors_container = self.requests_ui_element("editors-container")
|
||||
editors_container = self.request_ui_element("editors-container")
|
||||
editors_container.add( code_minimap )
|
||||
|
||||
def run(self):
|
||||
|
||||
@@ -33,7 +33,7 @@ class Plugin(PluginCode):
|
||||
provider = self.provider,
|
||||
language_ids = []
|
||||
)
|
||||
self.message_to("completion", event)
|
||||
self.emit_to("completion", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -33,7 +33,7 @@ class Plugin(PluginCode):
|
||||
provider = self.provider,
|
||||
language_ids = []
|
||||
)
|
||||
self.message_to("completion", event)
|
||||
self.emit_to("completion", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -33,7 +33,7 @@ class Plugin(PluginCode):
|
||||
provider = self.provider,
|
||||
language_ids = []
|
||||
)
|
||||
self.message_to("completion", event)
|
||||
self.emit_to("completion", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -33,7 +33,7 @@ class Plugin(PluginCode):
|
||||
provider = self.provider,
|
||||
language_ids = []
|
||||
)
|
||||
self.message_to("completion", event)
|
||||
self.emit_to("completion", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -25,7 +25,7 @@ class Plugin(PluginCode):
|
||||
info_bar_widget._set_info_labels(*event.info)
|
||||
|
||||
def load(self):
|
||||
header = self.requests_ui_element("header-container")
|
||||
header = self.request_ui_element("header-container")
|
||||
header.add( info_bar_widget )
|
||||
|
||||
def run(self):
|
||||
|
||||
@@ -21,7 +21,7 @@ class Plugin(PluginCode):
|
||||
|
||||
def load(self):
|
||||
tabs_controller = TabsController()
|
||||
code_container = self.requests_ui_element("code-container")
|
||||
code_container = self.request_ui_element("code-container")
|
||||
|
||||
self.register_controller("tabs", tabs_controller)
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ class TabsController(ControllerBase):
|
||||
super(TabsController, self).__init__()
|
||||
|
||||
self.tabs_widget: TabsWidget = TabsWidget()
|
||||
self.tabs_widget.message = self.message
|
||||
self.tabs_widget.emit = self.emit
|
||||
|
||||
|
||||
def _controller_message(self, event: Code_Event_Types.CodeEvent):
|
||||
|
||||
@@ -56,7 +56,7 @@ class TabsWidget(Gtk.Notebook):
|
||||
buffer = file.buffer
|
||||
)
|
||||
|
||||
self.message(event)
|
||||
self.emit(event)
|
||||
|
||||
def _switch_page(self, notebook, page_widget, page_num):
|
||||
tab = self.get_tab_label(page_widget)
|
||||
@@ -65,7 +65,7 @@ class TabsWidget(Gtk.Notebook):
|
||||
buffer = tab.file.buffer
|
||||
)
|
||||
|
||||
self.message(event)
|
||||
self.emit(event)
|
||||
|
||||
def _bind_tab_menu(self, tab, page_widget):
|
||||
def do_context_menu(tab, eve, page_widget):
|
||||
|
||||
@@ -24,7 +24,7 @@ class Plugin(PluginCode):
|
||||
binding = "<Shift><Control>h"
|
||||
)
|
||||
|
||||
self.message_to("source_views", event)
|
||||
self.emit_to("source_views", event)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
@@ -21,7 +21,7 @@ class Plugin(PluginUI):
|
||||
...
|
||||
|
||||
def load(self):
|
||||
ui_element = self.requests_ui_element("header-container")
|
||||
ui_element = self.request_ui_element("header-container")
|
||||
ui_element.add( self.generate_plugin_element() )
|
||||
|
||||
def run(self):
|
||||
|
||||
@@ -76,6 +76,8 @@ class Window(Gtk.ApplicationWindow):
|
||||
event_system.subscribe("load-interactive-debug", self._load_interactive_debug)
|
||||
|
||||
def _load_widgets(self):
|
||||
widget_registery.expose_object("main-window", self)
|
||||
|
||||
if settings_manager.is_debug():
|
||||
self.set_interactive_debugging(True)
|
||||
|
||||
|
||||
@@ -24,3 +24,6 @@ class EmitDispatcher:
|
||||
|
||||
def emit_to(self, controller: str, event: BaseEvent):
|
||||
self.message_to(controller, event)
|
||||
|
||||
def emit_to_selected(self, names: list[str], event: BaseEvent):
|
||||
self.message_to_selected(names, event)
|
||||
|
||||
@@ -56,8 +56,8 @@ class PluginsController(ControllerBase, PluginsControllerMixin, PluginReloadMixi
|
||||
locations.append(path)
|
||||
for file in os.listdir(path):
|
||||
_path = os.path.join(path, file)
|
||||
if os.path.isdir(_path):
|
||||
self._collect_search_locations(_path, locations)
|
||||
if not os.path.isdir(_path): continue
|
||||
self._collect_search_locations(_path, locations)
|
||||
|
||||
def _load_plugins(
|
||||
self,
|
||||
@@ -150,12 +150,10 @@ class PluginsController(ControllerBase, PluginsControllerMixin, PluginReloadMixi
|
||||
def create_plugin_context(self):
|
||||
plugin_context: PluginContext = PluginContext()
|
||||
|
||||
plugin_context.requests_ui_element: callable = self.requests_ui_element
|
||||
plugin_context.message: callable = self.message
|
||||
plugin_context.message_to: callable = self.message_to
|
||||
plugin_context.message_to_selected: callable = self.message_to_selected
|
||||
plugin_context.emit: callable = event_system.emit
|
||||
plugin_context.emit_and_await: callable = event_system.emit_and_await
|
||||
plugin_context.request_ui_element: callable = self.request_ui_element
|
||||
plugin_context.emit: callable = self.emit
|
||||
plugin_context.emit_to: callable = self.emit_to
|
||||
plugin_context.emit_to_selected: callable = self.emit_to_selected
|
||||
plugin_context.register_controller: callable = self.register_controller
|
||||
|
||||
return plugin_context
|
||||
|
||||
@@ -18,26 +18,21 @@ class PluginContext:
|
||||
def __init__(self):
|
||||
super(PluginContext, self).__init__()
|
||||
|
||||
def requests_ui_element(self, element_id: str):
|
||||
raise PluginContextException("Plugin Context 'requests_ui_element' must be overridden...")
|
||||
|
||||
def _controller_message(self, event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context '_controller_message' must be overridden...")
|
||||
|
||||
def message(self, event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'message' must be overridden...")
|
||||
def request_ui_element(self, element_id: str):
|
||||
raise PluginContextException("Plugin Context 'request_ui_element' must be overridden...")
|
||||
|
||||
def message_to(self, name: str, event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'message_to' must be overridden...")
|
||||
|
||||
def message_to_selected(self, names: list[str], event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'message_to_selected' must be overridden...")
|
||||
|
||||
def emit(self, event_type: str, data: tuple = ()):
|
||||
def emit(self, event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'emit' must be overridden...")
|
||||
|
||||
def emit_and_await(self, event_type: str, data: tuple = ()):
|
||||
raise PluginContextException("Plugin Context 'emit_and_await' must be overridden...")
|
||||
def emit_to(self, name: str, event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'emit_to' must be overridden...")
|
||||
|
||||
def emit_to_selected(self, names: list[str], event: BaseEvent):
|
||||
raise PluginContextException("Plugin Context 'emit_to_selected' must be overridden...")
|
||||
|
||||
def register_controller(self, name: str, controller):
|
||||
raise PluginContextException("Plugin Context 'register_controller' must be overridden...")
|
||||
|
||||
@@ -30,20 +30,14 @@ class PluginBase:
|
||||
def run(self):
|
||||
raise PluginBaseException("Plugin Base 'run' must be overriden by Plugin")
|
||||
|
||||
def requests_ui_element(self, element_id: str):
|
||||
raise PluginBaseException("Plugin Base 'requests_ui_element' must be overriden by Plugin")
|
||||
def request_ui_element(self, element_id: str):
|
||||
raise PluginBaseException("Plugin Base 'request_ui_element' must be overriden by Plugin")
|
||||
|
||||
def message(self, event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'message' must be overriden by Plugin")
|
||||
|
||||
def message_to(self, name: str, event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'message_to' must be overriden by Plugin")
|
||||
|
||||
def message_to_selected(self, names: list[str], event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'message_to_selected' must be overriden by Plugin")
|
||||
|
||||
def emit(self, event_type: str, data: tuple = ()):
|
||||
def emit(self, event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'emit' must be overriden by Plugin")
|
||||
|
||||
def emit_and_await(self, event_type: str, data: tuple = ()):
|
||||
raise PluginBaseException("Plugin Base 'emit_and_await' must be overriden by Plugin")
|
||||
def emit_to(self, name: str, event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'emit_to' must be overriden by Plugin")
|
||||
|
||||
def emit_to_selected(self, names: list[str], event: BaseEvent):
|
||||
raise PluginBaseException("Plugin Base 'emit_to_selected' must be overriden by Plugin")
|
||||
|
||||
@@ -31,17 +31,17 @@ class PluginCode(PluginBase):
|
||||
def run(self):
|
||||
raise PluginCodeException("Plugin Code 'run' must be overriden by Plugin")
|
||||
|
||||
def requests_ui_element(self, element_id: str):
|
||||
return self.plugin_context.requests_ui_element(element_id)
|
||||
|
||||
def message(self, event: BaseEvent):
|
||||
return self.plugin_context.message(event)
|
||||
|
||||
def message_to(self, name: str, event: BaseEvent):
|
||||
return self.plugin_context.message_to(name, event)
|
||||
|
||||
def message_to_selected(self, names: list[str], event: BaseEvent):
|
||||
return self.plugin_context.message_to_selected(names, event)
|
||||
|
||||
def register_controller(self, name: str, controller):
|
||||
return self.plugin_context.register_controller(name, controller)
|
||||
|
||||
def request_ui_element(self, element_id: str):
|
||||
return self.plugin_context.request_ui_element(element_id)
|
||||
|
||||
def emit(self, event: BaseEvent):
|
||||
return self.plugin_context.emit(event)
|
||||
|
||||
def emit_to(self, name: str, event: BaseEvent):
|
||||
return self.plugin_context.emit_to(name, event)
|
||||
|
||||
def emit_to_selected(self, names: list[str], event: BaseEvent):
|
||||
return self.plugin_context.emit_to_selected(names, event)
|
||||
|
||||
@@ -31,20 +31,14 @@ class PluginUI(PluginBase):
|
||||
def run(self):
|
||||
raise PluginCodeException("Plugin UI 'run' must be overriden by Plugin")
|
||||
|
||||
def requests_ui_element(self, element_id: str):
|
||||
return self.plugin_context.requests_ui_element(element_id)
|
||||
def request_ui_element(self, element_id: str):
|
||||
return self.plugin_context.request_ui_element(element_id)
|
||||
|
||||
def message(self, event: BaseEvent):
|
||||
return self.plugin_context.message(event)
|
||||
def emit(self, event: BaseEvent):
|
||||
return self.plugin_context.emit(event)
|
||||
|
||||
def message_to(self, name: str, event: BaseEvent):
|
||||
return self.plugin_context.message_to(name, event)
|
||||
def emit_to(self, name: str, event: BaseEvent):
|
||||
return self.plugin_context.emit_to(name, event)
|
||||
|
||||
def message_to_selected(self, names: list[str], event: BaseEvent):
|
||||
return self.plugin_context.message_to_selected(names, event)
|
||||
|
||||
def emit(self, event_type: str, data: tuple = ()):
|
||||
self.plugin_context.emit(event_type, data)
|
||||
|
||||
def emit_and_await(self, event_type: str, data: tuple = ()):
|
||||
self.plugin_context.emit_and_await(event_type, data)
|
||||
def emit_to_selected(self, names: list[str], event: BaseEvent):
|
||||
return self.plugin_context.emit_to_selected(names, event)
|
||||
|
||||
@@ -13,7 +13,7 @@ class InvalidPluginException(Exception):
|
||||
|
||||
class PluginsControllerMixin:
|
||||
|
||||
def requests_ui_element(self, target_id: str):
|
||||
def request_ui_element(self, target_id: str):
|
||||
if not target_id in widget_registery.objects:
|
||||
raise InvalidPluginException('Unknown UI "target_id" given in requests.')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user