[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/forms/src GFDisplayHandler.py GFInstance.p...
From: |
Bajusz Tamás |
Subject: |
gnue/forms/src GFDisplayHandler.py GFInstance.p... |
Date: |
Thu, 22 May 2003 16:11:03 -0400 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Bajusz Tamás <address@hidden> 03/05/22 16:11:03
Modified files:
forms/src : GFDisplayHandler.py GFInstance.py
forms/src/uidrivers/win32/widgets: _base.py
Log message:
mouse selection support for clipboard routines
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFDisplayHandler.py.diff?tr1=1.55&tr2=1.56&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFInstance.py.diff?tr1=1.112&tr2=1.113&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/_base.py.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
Patches:
Index: gnue/forms/src/GFDisplayHandler.py
diff -c gnue/forms/src/GFDisplayHandler.py:1.55
gnue/forms/src/GFDisplayHandler.py:1.56
*** gnue/forms/src/GFDisplayHandler.py:1.55 Thu May 22 04:48:55 2003
--- gnue/forms/src/GFDisplayHandler.py Thu May 22 16:11:02 2003
***************
*** 340,345 ****
--- 340,357 ----
max(self.selection1, self.selection2) )
+ # Select text with mouse and move the cursor
+ def selectWithMouse(self, event):
+
+ self.selection1 = event.position1
+ self.selection2 = event.position2
+ if self.cursor == self.selection2:
+ event.position = self.selection1
+ else:
+ event.position = self.selection2
+ self.moveCursor(event,1)
+
+
# Select the entire text of the entry and move
# the cursor to the end
def selectAll(self, event):
***************
*** 453,458 ****
--- 465,471 ----
'endEDITMODE' : self.endEdit,
# Selection/clipboard events
+ 'requestSELECTWITHMOUSE' : self.selectWithMouse,
'requestSELECTALL' : self.selectAll,
'requestSELECTTOHOME' : self.selectToBegin,
'requestSELECTTOEND' : self.selectToEnd,
Index: gnue/forms/src/GFInstance.py
diff -c gnue/forms/src/GFInstance.py:1.112 gnue/forms/src/GFInstance.py:1.113
*** gnue/forms/src/GFInstance.py:1.112 Tue May 20 17:42:23 2003
--- gnue/forms/src/GFInstance.py Thu May 22 16:11:02 2003
***************
*** 121,126 ****
--- 121,127 ----
'endEDITMODE' : self.proxyEntryEvent,
# Selection/clipboard events (proxied)
+ 'requestSELECTWITHMOUSE' : self.proxyEntryEvent,
'requestSELECTALL' : self.proxyEntryEvent,
'requestSELECTTOHOME' : self.proxyEntryEvent,
'requestSELECTTOEND' : self.proxyEntryEvent,
Index: gnue/forms/src/uidrivers/win32/widgets/_base.py
diff -c gnue/forms/src/uidrivers/win32/widgets/_base.py:1.18
gnue/forms/src/uidrivers/win32/widgets/_base.py:1.19
*** gnue/forms/src/uidrivers/win32/widgets/_base.py:1.18 Thu May 22
04:53:10 2003
--- gnue/forms/src/uidrivers/win32/widgets/_base.py Thu May 22 16:11:02 2003
***************
*** 95,103 ****
uiObject._eventHandler('requestTOGGLECHKBOX',_form=gfObject._form)
else:
win32gui.CallWindowProc(self._oldWndProc, hwnd, msg, wParam, lParam)
! gs = win32gui.SendMessage(hwnd, win32con.EM_GETSEL, 0, 0)
! cursorPosition = win32api.HIWORD(gs)
!
uiObject._eventHandler('requestCURSORMOVE',position=cursorPosition,_form=gfObject._form)
elif msg == win32con.WM_KEYDOWN:
keycode = wParam
--- 95,113 ----
uiObject._eventHandler('requestTOGGLECHKBOX',_form=gfObject._form)
else:
win32gui.CallWindowProc(self._oldWndProc, hwnd, msg, wParam, lParam)
! cursorPosition = self.getSelectedArea()[1]
! uiObject._eventHandler('requestCURSORMOVE', position=cursorPosition,
_form=gfObject._form)
!
! elif msg == win32con.WM_LBUTTONUP:
! gfObject = self._uiDriver._IdToGFObj[self._id]
! if gfObject._type == 'GFEntry':
! selection1, selection2 = self.getSelectedArea()
! if selection1 != selection2:
! uiObject = self._uiDriver._IdToUIObj[self._id]
! uiObject._eventHandler('requestSELECTWITHMOUSE', \
! position1=selection1,
position2=selection2, _form=gfObject._form)
!
! win32gui.CallWindowProc(self._oldWndProc, hwnd, msg, wParam, lParam)
elif msg == win32con.WM_KEYDOWN:
keycode = wParam
***************
*** 105,111 ****
if (keycode in NOT_WM_CHAR_KEYS):
if gfObject._type == 'GFButton' or (gfObject._type == 'GFEntry' and
gfObject.style != 'dropdown'):
- gfObject = self._uiDriver._IdToGFObj[self._id]
action = None
ShiftDown = (win32api.GetKeyState(win32con.VK_SHIFT) & 0x8000) and
1 or 0
--- 115,120 ----
***************
*** 171,176 ****
--- 180,186 ----
ShiftDown,
ControlDown,
AltDown)
+
if command == 'NEWLINE':
win32gui.SendMessage(hwnd, win32con.EM_LINESCROLL, 1, 0)
action = events.Event('requestKEYPRESS', '\r\n',
***************
*** 375,380 ****
--- 385,393 ----
def setSelectedArea(self, selection1, selection2):
win32gui.SendMessage(self._hwnd, win32con.EM_SETSEL, selection1,
selection2)
+ def getSelectedArea(self):
+ gs = win32gui.SendMessage(self._hwnd, win32con.EM_GETSEL, 0, 0)
+ return (win32api.LOWORD(gs), win32api.HIWORD(gs))
class Win32Button(Win32Base):
pass
***************
*** 511,518 ****
# Translate from Win32 keystrokes to our virtual keystrokes
win32KeyTranslations = {
! vk.C : 3, vk.V : 22,
! vk.X : 24, vk.A : 1,
vk.F1 : win32con.VK_F1, vk.F2 : win32con.VK_F2,
vk.F3 : win32con.VK_F3, vk.F4 : win32con.VK_F4,
vk.F5 : win32con.VK_F5, vk.F6 : win32con.VK_F6,
--- 524,531 ----
# Translate from Win32 keystrokes to our virtual keystrokes
win32KeyTranslations = {
! vk.C : 3, vk.V : 22,
! vk.X : 24, vk.A : 1,
vk.F1 : win32con.VK_F1, vk.F2 : win32con.VK_F2,
vk.F3 : win32con.VK_F3, vk.F4 : win32con.VK_F4,
vk.F5 : win32con.VK_F5, vk.F6 : win32con.VK_F6,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/forms/src GFDisplayHandler.py GFInstance.p...,
Bajusz Tamás <=