[meld] Use paths module to define icon and UIManger/glade directories



commit 94ac439aee8bc35ca424410d4175e3de861eb70d
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Sun Jul 5 10:32:25 2009 +1000

    Use paths module to define icon and UIManger/glade directories
    
    Having the icon and glade/UIManager directories defined in the paths module
    makes it easier to reorganise the directory structure in the future.

 dirdiff.py       |    6 +++---
 filediff.py      |   10 +++++-----
 findbar.py       |    2 +-
 meldapp.py       |   14 +++++++-------
 notebooklabel.py |    2 +-
 paths.py         |    7 +++++--
 tree.py          |    2 +-
 vcview.py        |    6 +++---
 8 files changed, 26 insertions(+), 23 deletions(-)
---
diff --git a/dirdiff.py b/dirdiff.py
index 5fd471f..00d4d5f 100644
--- a/dirdiff.py
+++ b/dirdiff.py
@@ -89,7 +89,7 @@ def _files_same(lof, regexes):
     return result
 
 COL_EMBLEM = tree.COL_END + 1
-pixbuf_newer = gnomeglade.load_pixbuf( paths.share_dir("glade2/pixmaps/tree-file-newer.png"), 14)
+pixbuf_newer = gnomeglade.load_pixbuf(paths.icon_dir("tree-file-newer.png"), 14)
 TYPE_PIXBUF = type(pixbuf_newer)
 
 ################################################################################
@@ -167,7 +167,7 @@ class DirDiff(melddoc.MeldDoc, gnomeglade.Component):
 
     def __init__(self, prefs, num_panes):
         melddoc.MeldDoc.__init__(self, prefs)
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/dirdiff.glade"), "dirdiff")
+        gnomeglade.Component.__init__(self, paths.ui_dir("dirdiff.glade"), "dirdiff")
 
         actions = (
             ("DirCompare",   gtk.STOCK_DIALOG_INFO,  _("_Compare"), None, _("Compare selected"), self.on_button_diff_clicked),
@@ -187,7 +187,7 @@ class DirDiff(melddoc.MeldDoc, gnomeglade.Component):
 
             ("CustomFilterMenu", None, _("Filters"), None, _("Set active filters"), self.on_custom_filter_menu_toggled, False),
         )
-        self.ui_file = paths.share_dir("glade2/dirdiff-ui.xml")
+        self.ui_file = paths.ui_dir("dirdiff-ui.xml")
         self.actiongroup = gtk.ActionGroup('DirdiffToolbarActions')
         self.actiongroup.set_translation_domain("meld")
         self.actiongroup.add_actions(actions)
diff --git a/filediff.py b/filediff.py
index 1e62eea..0167032 100644
--- a/filediff.py
+++ b/filediff.py
@@ -64,7 +64,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
         """Start up an filediff with num_panes empty contents.
         """
         melddoc.MeldDoc.__init__(self, prefs)
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/filediff.glade"), "filediff", srcviewer.override)
+        gnomeglade.Component.__init__(self, paths.ui_dir("filediff.glade"), "filediff", srcviewer.override)
         self.map_widgets_into_lists( ["textview", "fileentry", "diffmap", "scrolledwindow", "linkmap", "statusimage", "msgarea_mgr"] )
         self._update_regexes()
         self.warned_bad_comparison = False
@@ -127,7 +127,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
             ("CopyAllRight",      gtk.STOCK_GOTO_LAST,  _("Copy To Right"), None, _("Copy all changes from left pane to right pane"), lambda x: self.copy_selected(1)),
         )
 
-        self.ui_file = paths.share_dir("glade2/filediff-ui.xml")
+        self.ui_file = paths.ui_dir("filediff-ui.xml")
         self.actiongroup = gtk.ActionGroup('FilediffPopupActions')
         self.actiongroup.set_translation_domain("meld")
         self.actiongroup.add_actions(actions)
@@ -267,7 +267,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
             self.textview[i].set_tabs(tabs)
         for i in range(2):
             self.linkmap[i].queue_draw()
-        load = lambda x: gnomeglade.load_pixbuf( paths.share_dir("glade2/pixmaps/"+x), self.pixels_per_line)
+        load = lambda x: gnomeglade.load_pixbuf(paths.icon_dir(x), self.pixels_per_line)
         self.pixbuf_apply0 = load("button_apply0.xpm")
         self.pixbuf_apply1 = load("button_apply1.xpm")
         self.pixbuf_delete = load("button_delete.xpm")
@@ -339,7 +339,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
         response = gtk.RESPONSE_OK
         modified = [b.modified for b in self.bufferdata]
         if 1 in modified:
-            dialog = gnomeglade.Component( paths.share_dir("glade2/filediff.glade"), "closedialog")
+            dialog = gnomeglade.Component(paths.ui_dir("filediff.glade"), "closedialog")
             dialog.widget.set_transient_for(self.widget.get_toplevel())
             buttons = []
             for i in range(self.num_panes):
@@ -799,7 +799,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
 
     def make_patch(self, *extra):
         fontdesc = pango.FontDescription(self.prefs.get_current_font())
-        dialog = gnomeglade.Component(paths.share_dir("glade2/filediff.glade"), "patchdialog", srcviewer.override)
+        dialog = gnomeglade.Component(paths.ui_dir("filediff.glade"), "patchdialog", srcviewer.override)
         dialog.widget.set_transient_for( self.widget.get_toplevel() )
         texts = [b.get_text(*b.get_bounds()).split("\n") for b in self.textbuffer]
         texts[0] = [l+"\n" for l in texts[0]]
diff --git a/findbar.py b/findbar.py
index 794ef3c..f425684 100644
--- a/findbar.py
+++ b/findbar.py
@@ -23,7 +23,7 @@ from gettext import gettext as _
 
 class FindBar(gnomeglade.Component):
     def __init__(self):
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/findbar.glade"), "findbar")
+        gnomeglade.Component.__init__(self, paths.ui_dir("findbar.glade"), "findbar")
         gnomeglade.connect_signal_handlers(self)
         self.textview = None
         self.orig_base_color = self.find_entry.get_style().base[0]
diff --git a/meldapp.py b/meldapp.py
index 2909781..e09c1e2 100644
--- a/meldapp.py
+++ b/meldapp.py
@@ -57,7 +57,7 @@ version = "1.3.0"
 
 class NewDocDialog(gnomeglade.Component):
     def __init__(self, parentapp):
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/meldapp.glade"), "newdialog")
+        gnomeglade.Component.__init__(self, paths.ui_dir("meldapp.glade"), "newdialog")
         self.map_widgets_into_lists(["fileentry", "direntry", "vcentry", "three_way_compare"])
         self.entrylists = self.fileentry, self.direntry, self.vcentry
         self.widget.set_transient_for(parentapp.widget)
@@ -100,7 +100,7 @@ class NewDocDialog(gnomeglade.Component):
 ################################################################################
 class ListWidget(gnomeglade.Component):
     def __init__(self, columns, prefs, key):
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/meldapp.glade"), "listwidget")
+        gnomeglade.Component.__init__(self, paths.ui_dir("meldapp.glade"), "listwidget")
         self.prefs = prefs
         self.key = key
         self.treeview.set_model( gtk.ListStore( *[c[1] for c in columns] ) )
@@ -196,7 +196,7 @@ class PreferencesDialog(gnomeglade.Component):
     editor_radio_values = {"internal":0, "gnome":1, "custom":2}
 
     def __init__(self, parentapp):
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/meldapp.glade"), "preferencesdialog")
+        gnomeglade.Component.__init__(self, paths.ui_dir("meldapp.glade"), "preferencesdialog")
         self.widget.set_transient_for(parentapp.widget)
         self.prefs = parentapp.prefs
         # editor
@@ -417,7 +417,7 @@ class MeldApp(gnomeglade.Component):
     # init
     #
     def __init__(self):
-        gladefile = paths.share_dir("glade2/meldapp.glade")
+        gladefile = paths.ui_dir("meldapp.glade")
         gtk.window_set_default_icon_name("icon")
         if gobject.pygobject_version >= (2, 16, 0):
             gobject.set_application_name("Meld")
@@ -463,7 +463,7 @@ class MeldApp(gnomeglade.Component):
             ("ToolbarVisible",   None, _("_Toolbar"),   None, _("Show or hide the toolbar"),   self.on_menu_toolbar_toggled,   self.prefs.toolbar_visible),
             ("StatusbarVisible", None, _("_Statusbar"), None, _("Show or hide the statusbar"), self.on_menu_statusbar_toggled, self.prefs.statusbar_visible)
         )
-        ui_file = paths.share_dir("glade2/meldapp-ui.xml")
+        ui_file = paths.ui_dir("meldapp-ui.xml")
         self.actiongroup = gtk.ActionGroup('MainActions')
         self.actiongroup.set_translation_domain("meld")
         self.actiongroup.add_actions(actions)
@@ -720,7 +720,7 @@ class MeldApp(gnomeglade.Component):
 
     def on_menu_about_activate(self, *extra):
         gtk.about_dialog_set_url_hook(lambda dialog, uri: misc.open_uri(uri))
-        about = gtk.glade.XML(paths.share_dir("glade2/meldapp.glade"),"about").get_widget("about")
+        about = gtk.glade.XML(paths.ui_dir("meldapp.glade"), "about").get_widget("about")
         about.props.version = version
         about.set_transient_for(self.widget)
         about.run()
@@ -917,7 +917,7 @@ def main():
             return getattr(self.file, attr)
     sys.stdout = Unbuffered(sys.stdout)
 
-    gtk.icon_theme_get_default().append_search_path(paths.share_dir("glade2/pixmaps/"))
+    gtk.icon_theme_get_default().append_search_path(paths.icon_dir())
     app = MeldApp()
     app.parse_args(sys.argv[1:])
     gtk.main()
diff --git a/notebooklabel.py b/notebooklabel.py
index 722ecca..bc37474 100644
--- a/notebooklabel.py
+++ b/notebooklabel.py
@@ -67,7 +67,7 @@ class NotebookLabel(gtk.HBox):
         button.connect("clicked", onclose)
 
         icon = gtk.Image()
-        icon.set_from_file(paths.share_dir("glade2/pixmaps/%s" % iconname))
+        icon.set_from_file(paths.icon_dir(iconname))
         icon.set_from_pixbuf(icon.get_pixbuf().scale_simple(16, 16, 2)) #TODO stock image
 
         label_box = gtk.EventBox()
diff --git a/paths.py b/paths.py
index 0653324..fe6f78d 100644
--- a/paths.py
+++ b/paths.py
@@ -35,6 +35,9 @@ def locale_dir(*args): # i18n files
 def help_dir(*args): # help
     return os.path.join(_help_dir, *args)
 
-def share_dir(*args): # glade + pixmaps
-    return os.path.join(_share_dir, *args)
+def ui_dir(*args):
+    return os.path.join(_share_dir, "glade2", *args)
+
+def icon_dir(*args):
+    return os.path.join(_share_dir, "glade2", "pixmaps", *args)
 
diff --git a/tree.py b/tree.py
index 01394d7..7c36dbf 100644
--- a/tree.py
+++ b/tree.py
@@ -27,7 +27,7 @@ from vc._vc import STATE_IGNORED, STATE_NONE, STATE_NORMAL, STATE_NOCHANGE, \
     STATE_MODIFIED, STATE_CONFLICT, STATE_REMOVED, \
     STATE_MISSING, STATE_MAX
 
-load = lambda x,s=14: gnomeglade.load_pixbuf( paths.share_dir("glade2/pixmaps",x), s)
+load = lambda x,s=14: gnomeglade.load_pixbuf(paths.icon_dir(x), s)
 pixbuf_folder = load("tree-folder-normal.png", 20)
 pixbuf_folder_new = load("tree-folder-new.png", 20)
 pixbuf_folder_changed = load("tree-folder-changed.png", 20)
diff --git a/vcview.py b/vcview.py
index 3f63928..b4c6070 100644
--- a/vcview.py
+++ b/vcview.py
@@ -57,7 +57,7 @@ def _commonprefix(files):
 ################################################################################
 class CommitDialog(gnomeglade.Component):
     def __init__(self, parent):
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/vcview.glade"), "commitdialog")
+        gnomeglade.Component.__init__(self, paths.ui_dir("vcview.glade"), "commitdialog")
         self.parent = parent
         self.widget.set_transient_for( parent.widget.get_toplevel() )
         selected = parent._get_selected_files()
@@ -119,7 +119,7 @@ class VcView(melddoc.MeldDoc, gnomeglade.Component):
 
     def __init__(self, prefs):
         melddoc.MeldDoc.__init__(self, prefs)
-        gnomeglade.Component.__init__(self, paths.share_dir("glade2/vcview.glade"), "vcview")
+        gnomeglade.Component.__init__(self, paths.ui_dir("vcview.glade"), "vcview")
 
         actions = (
             ("VcCompare",       gtk.STOCK_DIALOG_INFO,      _("_Compare"),      None, _("Compare selected"), self.on_button_diff_clicked),
@@ -142,7 +142,7 @@ class VcView(melddoc.MeldDoc, gnomeglade.Component):
             ("VcShowIgnored", "filter-ignored-24",   _("Ignored"),   None, _("Show ignored files"), self.on_button_filter_toggled, False),
         )
 
-        self.ui_file = paths.share_dir("glade2/vcview-ui.xml")
+        self.ui_file = paths.ui_dir("vcview-ui.xml")
         self.actiongroup = gtk.ActionGroup('VcviewActions')
         self.actiongroup.set_translation_domain("meld")
         self.actiongroup.add_actions(actions)



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