[pygobject] [gi] overrides for treeview Drag and Drop
- From: John Palmieri <johnp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pygobject] [gi] overrides for treeview Drag and Drop
- Date: Mon, 22 Nov 2010 22:17:29 +0000 (UTC)
commit 4cede8f12321bed6c3b71813a62c01b61853ba69
Author: John (J5) Palmieri <johnp redhat com>
Date: Fri Nov 19 16:46:53 2010 -0500
[gi] overrides for treeview Drag and Drop
https://bugzilla.gnome.org/show_bug.cgi?id=627367
gi/overrides/Gdk.py | 7 +++++++
gi/overrides/Gtk.py | 25 +++++++++++++++++++++++++
2 files changed, 32 insertions(+), 0 deletions(-)
---
diff --git a/gi/overrides/Gdk.py b/gi/overrides/Gdk.py
index 08141d7..e98f060 100644
--- a/gi/overrides/Gdk.py
+++ b/gi/overrides/Gdk.py
@@ -117,6 +117,13 @@ class Event(Gdk.Event):
Event = override(Event)
__all__.append('Event')
+class DragContext(Gdk.DragContext):
+ def finish(self, success, del_, time):
+ Gtk = modules['Gtk'].introspection_module
+ Gtk.drag_finish(self, success, del_, time)
+
+DragContext = override(DragContext)
+__all__.append('DragContext')
import sys
diff --git a/gi/overrides/Gtk.py b/gi/overrides/Gtk.py
index a2f38ac..b3ac2c9 100644
--- a/gi/overrides/Gtk.py
+++ b/gi/overrides/Gtk.py
@@ -881,6 +881,31 @@ class TreeView(Gtk.TreeView, Container):
if success:
return (path, pos,)
+ def _construct_target_list(self, targets):
+ # FIXME: this should most likely be part of Widget or a global helper
+ # function
+ target_entries = []
+ for t in targets:
+ entry = Gtk.TargetEntry.new(*t)
+ target_entries.append(entry)
+ print(entry.target, entry.flags, entry.info)
+ return target_entries
+
+ def enable_model_drag_source(self, start_button_mask, targets, actions):
+ target_entries = self._construct_target_list(targets)
+ super(TreeView, self).enable_model_drag_source(start_button_mask,
+ target_entries,
+ len(target_entries),
+ actions)
+
+ def enable_model_drag_dest(self, targets, actions):
+ target_entries = self._construct_target_list(targets)
+ super(TreeView, self).enable_model_drag_dest(target_entries,
+ len(target_entries),
+ actions)
+
+
+
TreeView = override(TreeView)
__all__.append('TreeView')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]