meld r1307 - trunk
- From: kaiw svn gnome org
- To: svn-commits-list gnome org
- Subject: meld r1307 - trunk
- Date: Sun, 29 Mar 2009 10:30:47 +0000 (UTC)
Author: kaiw
Date: Sun Mar 29 10:30:47 2009
New Revision: 1307
URL: http://svn.gnome.org/viewvc/meld?rev=1307&view=rev
Log:
Move to old-style gobject properties for compatibility
Modified:
trunk/changelog
trunk/historyentry.py
Modified: trunk/changelog
==============================================================================
--- trunk/changelog (original)
+++ trunk/changelog Sun Mar 29 10:30:47 2009
@@ -1,6 +1,8 @@
2008-xx-xx meld-1.x.x
=====================
+ * pygobject 2.8 now required
+
* Remove gnome.ui dependency (Kai Willadsen)
2008-11-23 meld-1.2.1
Modified: trunk/historyentry.py
==============================================================================
--- trunk/historyentry.py (original)
+++ trunk/historyentry.py Sun Mar 29 10:30:47 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 2008 Kai Willadsen <kai willadsen gmail com>
+# Copyright (C) 2008-2009 Kai Willadsen <kai willadsen gmail com>
#
# 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
@@ -207,6 +207,22 @@
"activate" : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, [])
}
+ __gproperties__ = {
+ "default-path": (str, "Default path",
+ "Default path for file chooser",
+ "~", gobject.PARAM_READWRITE),
+ "directory-entry": (bool, "File or directory entry",
+ "Whether the created file chooser should select directories instead of files",
+ False, gobject.PARAM_READWRITE),
+ "filename": (str, "Filename",
+ "Filename of the selected file",
+ "", gobject.PARAM_READWRITE),
+ "modal": (bool, "File chooser modality",
+ "Whether the created file chooser is modal",
+ False, gobject.PARAM_READWRITE),
+ }
+
+
def __init__(self, history_id=None, browse_dialog_title=None, **kwargs):
super(HistoryFileEntry, self).__init__(**kwargs)
@@ -214,8 +230,8 @@
self.browse_dialog_title = browse_dialog_title
self.__filechooser_action = gtk.FILE_CHOOSER_ACTION_OPEN
self.__default_path = "~"
- self.directory_entry = False
- self.modal = False
+ self.__directory_entry = False
+ self.__modal = False
self.set_spacing(3)
@@ -242,6 +258,33 @@
access_button.add_relationship(atk.RELATION_CONTROLLER_FOR, access_entry)
access_entry.add_relationship(atk.RELATION_CONTROLLED_BY, access_button)
+ def do_get_property(self, pspec):
+ if pspec.name == "default-path":
+ return self.__default_path
+ elif pspec.name == "directory-entry":
+ return self.__directory_entry
+ elif pspec.name == "filename":
+ return self.get_full_path()
+ elif pspec.name == "modal":
+ return self.__modal
+ else:
+ raise AttributeError("Unknown property: %s" % pspec.name)
+
+ def do_set_property(self, pspec, value):
+ if pspec.name == "default-path":
+ if value:
+ self.__default_path = os.path.abspath(value)
+ else:
+ self.__default_path = None
+ elif pspec.name == "directory-entry":
+ self.__directory_entry = value
+ elif pspec.name == "filename":
+ self.set_filename(value)
+ elif pspec.name == "modal":
+ self.__modal = value
+ else:
+ raise AttributeError("Unknown property: %s" % pspec.name)
+
def _setup_dnd(self):
# we must get rid of gtk's drop site on the entry else weird stuff can happen
self.__gentry.get_entry().drag_dest_unset()
@@ -274,7 +317,7 @@
return self.directory_entry
def get_full_path(self):
- text = self.__gentry.child.get_text()
+ text = self.__gentry.get_entry().get_text()
if not text:
return None
sys_text = gobject.filename_from_utf8(text)
@@ -284,7 +327,7 @@
return filename
def set_filename(self, filename):
- self.__gentry.child.set_text(filename)
+ self.__gentry.get_entry().set_text(filename)
def __browse_dialog_ok(self, filewidget):
locale_filename = filewidget.get_filename()
@@ -317,7 +360,7 @@
if not filename:
return self.__default_path + os.sep
- if not filename.endswith(os.sep) and (self.directory_entry or os.path.isdir(filename)):
+ if not filename.endswith(os.sep) and (self.__directory_entry or os.path.isdir(filename)):
filename += os.sep
return filename
@@ -328,7 +371,7 @@
self.fsw.window.raise_()
return
- if self.directory_entry:
+ if self.__directory_entry:
action = gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER
filefilter = gtk.FileFilter()
filefilter.add_mime_type("x-directory/normal")
@@ -354,7 +397,7 @@
if toplevel.flags() & gtk.TOPLEVEL:
self.fsw.set_transient_for(toplevel)
modal_fentry = toplevel.get_modal()
- if self.modal or modal_fentry:
+ if self.__modal or modal_fentry:
self.fsw.set_modal(True)
self.fsw.show()
@@ -378,11 +421,6 @@
context.finish(True, False, time)
entry.activate()
- default_path = gobject.property(lambda self: self.__default_path, set_default_path, type=str)
- directory_entry = gobject.property(type=bool, default=False)
- filename = gobject.property(get_full_path, set_filename, type=str)
- modal = gobject.property(type=bool, default=False)
-
try:
import gnomevfs
except ImportError:
@@ -391,7 +429,7 @@
def create_fileentry( history_id, dialog_title, is_directory_entry, int2):
w = HistoryFileEntry(history_id, dialog_title)
- w.directory_entry = is_directory_entry
+ w.props.directory_entry = is_directory_entry
return w
def create_entry( history_id, str2, int1, int2):
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]