[gedit] Add AppActivatable to create the ToolLibrary just once.



commit ad0c2054a31da4aa59648587eb82de0963d2115a
Author: Ignacio Casal Quinteiro <icq gnome org>
Date:   Wed Jan 19 18:10:52 2011 +0100

    Add AppActivatable to create the ToolLibrary just once.

 plugins/externaltools/tools/__init__.py          |   34 ++++++++++++++++++++++
 plugins/externaltools/tools/windowactivatable.py |    1 -
 2 files changed, 34 insertions(+), 1 deletions(-)
---
diff --git a/plugins/externaltools/tools/__init__.py b/plugins/externaltools/tools/__init__.py
index 8399c66..721fd85 100644
--- a/plugins/externaltools/tools/__init__.py
+++ b/plugins/externaltools/tools/__init__.py
@@ -1 +1,35 @@
+# -*- coding: UTF-8 -*-
+#    Gedit External Tools plugin
+#    Copyright (C) 2010 Ignacio Casal Quinteiro <icq gnome org>
+#
+#    This program is free software; you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation; either version 2 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program; if not, write to the Free Software
+#    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+from gi.repository import GObject, Gedit
 from windowactivatable import WindowActivatable
+from library import ToolLibrary
+import os
+
+class AppActivatable(GObject.Object, Gedit.AppActivatable):
+    __gtype_name__ = "ExternalToolsAppActivatable"
+
+    app = GObject.property(type=Gedit.App)
+
+    def __init__(self):
+        GObject.Object.__init__(self)
+
+    def do_activate(self):
+        ToolLibrary().set_locations(os.path.join(self.plugin_info.get_data_dir(), 'tools'))
+
+# ex:ts=4:et:
diff --git a/plugins/externaltools/tools/windowactivatable.py b/plugins/externaltools/tools/windowactivatable.py
index d389ed3..94a3e14 100644
--- a/plugins/externaltools/tools/windowactivatable.py
+++ b/plugins/externaltools/tools/windowactivatable.py
@@ -166,7 +166,6 @@ class WindowActivatable(GObject.Object, Gedit.WindowActivatable, PeasGtk.Configu
 
     def do_activate(self):
         self._library = ToolLibrary()
-        self._library.set_locations(os.path.join(self.plugin_info.get_data_dir(), 'tools'))
 
         ui_manager = self.window.get_ui_manager()
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]