[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r6095 - trunk/gnue-forms/src/uidrivers/gtk2/widgets
From: |
johannes |
Subject: |
r6095 - trunk/gnue-forms/src/uidrivers/gtk2/widgets |
Date: |
Wed, 28 Jul 2004 06:43:08 -0500 (CDT) |
Author: johannes
Date: 2004-07-28 06:43:05 -0500 (Wed, 28 Jul 2004)
New Revision: 6095
Modified:
trunk/gnue-forms/src/uidrivers/gtk2/widgets/entry.py
Log:
Selections and positioning via mouse will work now
Modified: trunk/gnue-forms/src/uidrivers/gtk2/widgets/entry.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/gtk2/widgets/entry.py 2004-07-28
06:59:09 UTC (rev 6094)
+++ trunk/gnue-forms/src/uidrivers/gtk2/widgets/entry.py 2004-07-28
11:43:05 UTC (rev 6095)
@@ -93,6 +93,7 @@
entry._delete_handler = entry.connect ('delete-text',
self.deleteTextHandler,
gfObject)
+ entry.connect ('button-release-event', self._buttonRelease)
return newWidget
@@ -159,6 +160,7 @@
newWidget._keypressHandler = newWidget.connect ('key-press-event',
self.textViewKeyPress)
+ newWidget.connect ('button-release-event', self._buttonRelease)
if event.initialize:
self._addFocusHandler (newWidget)
@@ -189,6 +191,8 @@
newWidget._delete_handler = newWidget.connect ('delete-text',
self.deleteTextHandler,
gfObject)
+ newWidget.connect ('button-release-event', self._buttonRelease)
+
if event.initialize:
self._addFocusHandler (newWidget)
self._addDefaultEventHandler (newWidget)
@@ -498,6 +502,39 @@
treeView.grab_focus ()
self._blockHandler (treeView, '_focusHandler', True)
+
+ # ---------------------------------------------------------------------------
+ # Handle the release of a mouse button
+ # ---------------------------------------------------------------------------
+
+ def _buttonRelease (self, widget, event):
+ """
+ This function handles release of the left mouse button. If the current
+ widget has a selection requestSELECTWITHMOUSE otherwise requestCURSORMOVE
+ will be fired.
+ """
+ if isinstance (widget, gtk.TextView):
+ tBuffer = widget.get_buffer ()
+ cPos = tBuffer.get_iter_at_mark (tBuffer.get_insert ()).get_offset ()
+ bMarks = tBuffer.get_selection_bounds ()
+ if len (bMarks):
+ bounds = [it.get_offset () for it in bMarks]
+ else:
+ bounds = []
+
+ elif isinstance (widget, gtk.Entry):
+ cPos = widget.get_position ()
+ bounds = widget.get_selection_bounds ()
+
+ gDebug (1, "Button-Release: %s (%s) %s %s" % (widget, self._gfObject.name,
+ cPos, bounds))
+ if len (bounds):
+ self._request ('SELECTWITHMOUSE', position1 = bounds [0],
+ position2 = bounds [1], cursor = cPos)
+ else:
+ self._request ('CURSORMOVE', position = cPos)
+
+
# -----------------------------------------------------------------------------
# Base configuration data
# -----------------------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r6095 - trunk/gnue-forms/src/uidrivers/gtk2/widgets,
johannes <=