diff options
Diffstat (limited to 'plugins/python/scripting/panel.py')
-rw-r--r-- | plugins/python/scripting/panel.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/plugins/python/scripting/panel.py b/plugins/python/scripting/panel.py index 75b50e3..9c5d153 100644 --- a/plugins/python/scripting/panel.py +++ b/plugins/python/scripting/panel.py @@ -5,7 +5,6 @@ from pychrysalide.gtkext import BuiltNamedWidget from pychrysalide.gui import core from pychrysalide.gui import PanelItem -from .manager import get_recent_python_script_manager, forget_python_script class ScriptPanel(PanelItem): @@ -35,6 +34,7 @@ class ScriptPanel(PanelItem): GObject.TYPE_NONE, ()) self._last_selected = None + self._manager = None builder = self.named_widget.builder @@ -43,13 +43,15 @@ class ScriptPanel(PanelItem): builder.connect_signals(self) - manager = get_recent_python_script_manager() - if manager: + def attach_manager(self, manager): + """Assign the recent manager to the panel.""" - manager.connect("changed", self._on_recent_list_changed) + self._manager = manager - self._on_recent_list_changed(manager) + manager.connect("changed", self._on_recent_list_changed) + + self._on_recent_list_changed(manager) def _on_row_activated(self, treeview, path, column): @@ -84,7 +86,9 @@ class ScriptPanel(PanelItem): if treeiter: - forget_python_script(model[treeiter][3]) + uri = GLib.filename_to_uri(model[treeiter][3]) + + self._manager.remove_item(uri) elif event.keyval == Gdk.KEY_Insert: |