commit-gnue
[Top][All Lists]
Advanced

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

gnue/forms/src/uidrivers/win32 ErrorHandler.py ...


From: Bajusz Tamás
Subject: gnue/forms/src/uidrivers/win32 ErrorHandler.py ...
Date: Thu, 08 May 2003 16:14:08 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Bajusz Tamás <address@hidden>   03/05/08 16:14:08

Modified files:
        forms/src/uidrivers/win32: ErrorHandler.py GFwin32App.py 
                                   MenuBar.py TODO ToolBar.py 
                                   UILoginHandler.py UIdriver.py 
                                   common.py 
        forms/src/uidrivers/win32/widgets: _base.py box.py button.py 
                                           entry.py image.py label.py 
                                           page.py 
        forms/src/uidrivers/win32/widgets/form: widget.py wrappers.py 

Log message:
        * center dialogs
        * cleanup

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/ErrorHandler.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/GFwin32App.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/MenuBar.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/TODO.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/ToolBar.py.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/UILoginHandler.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/UIdriver.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/common.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/_base.py.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/box.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/button.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/entry.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/image.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/label.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/page.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/form/widget.py.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text

Patches:
Index: gnue/forms/src/uidrivers/win32/ErrorHandler.py
diff -c gnue/forms/src/uidrivers/win32/ErrorHandler.py:1.1 
gnue/forms/src/uidrivers/win32/ErrorHandler.py:1.2
*** gnue/forms/src/uidrivers/win32/ErrorHandler.py:1.1  Thu May  1 08:58:18 2003
--- gnue/forms/src/uidrivers/win32/ErrorHandler.py      Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/ErrorHandler.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/GFwin32App.py
diff -c gnue/forms/src/uidrivers/win32/GFwin32App.py:1.3 
gnue/forms/src/uidrivers/win32/GFwin32App.py:1.4
*** gnue/forms/src/uidrivers/win32/GFwin32App.py:1.3    Tue Apr 15 18:21:03 2003
--- gnue/forms/src/uidrivers/win32/GFwin32App.py        Thu May  8 16:14:07 2003
***************
*** 1,3 ****
--- 1,32 ----
+ #
+ # This file is part of GNU Enterprise.
+ #
+ # GNU Enterprise is free software; you can redistribute it
+ # and/or modify it under the terms of the GNU General Public
+ # License as published by the Free Software Foundation; either
+ # version 2, or (at your option) any later version.
+ #
+ # GNU Enterprise is distributed in the hope that it will be
+ # useful, but WITHOUT ANY WARRANTY; without even the implied
+ # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ # PURPOSE. See the GNU General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public
+ # License along with program; see the file COPYING. If not,
+ # write to the Free Software Foundation, Inc., 59 Temple Place
+ # - Suite 330, Boston, MA 02111-1307, USA.
+ #
+ # Copyright 2000-2003 Free Software Foundation
+ #
+ # FILE:
+ # win32/GFwin32App.py
+ #
+ # DESCRIPTION:
+ # A PyWin32 based user interface driver for GNUe forms.
+ #
+ # NOTES:
+ #
+ 
  import win32gui, win32con
  from gnue.common.apps import GDebug
  
Index: gnue/forms/src/uidrivers/win32/MenuBar.py
diff -c gnue/forms/src/uidrivers/win32/MenuBar.py:1.5 
gnue/forms/src/uidrivers/win32/MenuBar.py:1.6
*** gnue/forms/src/uidrivers/win32/MenuBar.py:1.5       Sun Apr 27 17:04:30 2003
--- gnue/forms/src/uidrivers/win32/MenuBar.py   Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # wx/MenuBar.py
  #
  # DESCRIPTION:
! # A generic UIdriver base for common message-based GUI toolkits.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/MenuBar.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/TODO
diff -c gnue/forms/src/uidrivers/win32/TODO:1.2 
gnue/forms/src/uidrivers/win32/TODO:1.3
*** gnue/forms/src/uidrivers/win32/TODO:1.2     Thu May  1 08:58:18 2003
--- gnue/forms/src/uidrivers/win32/TODO Thu May  8 16:14:07 2003
***************
*** 1,10 ****
! * image widget
  * scrollbar widget
  * splash screen
! * cut/copy/paste support
  * textencoding support
  
  * handle key events when no entry in focus
- * refresh dropdown when foreign key changes
  * multi-line edit CR/LF issues
  * remove all hardcoded positioning/sizeing
--- 1,9 ----
! * scrollable windows for image widgets
  * scrollbar widget
  * splash screen
! * cut/copy/paste/select all support with Ctrl-X/C/V/A
  * textencoding support
  
  * handle key events when no entry in focus
  * multi-line edit CR/LF issues
  * remove all hardcoded positioning/sizeing
Index: gnue/forms/src/uidrivers/win32/ToolBar.py
diff -c gnue/forms/src/uidrivers/win32/ToolBar.py:1.12 
gnue/forms/src/uidrivers/win32/ToolBar.py:1.13
*** gnue/forms/src/uidrivers/win32/ToolBar.py:1.12      Mon Apr 28 18:06:18 2003
--- gnue/forms/src/uidrivers/win32/ToolBar.py   Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # wx/ToolBar.py
  #
  # DESCRIPTION:
! # A generic UIdriver base for common message-based GUI toolkits.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/ToolBar.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/UILoginHandler.py
diff -c gnue/forms/src/uidrivers/win32/UILoginHandler.py:1.3 
gnue/forms/src/uidrivers/win32/UILoginHandler.py:1.4
*** gnue/forms/src/uidrivers/win32/UILoginHandler.py:1.3        Thu May  1 
05:04:30 2003
--- gnue/forms/src/uidrivers/win32/UILoginHandler.py    Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/UILoginHandler.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
***************
*** 32,38 ****
  
  from gnue.common.datasources import GLoginHandler
  from gnue.common.apps import GConfig
! from gnue.forms.uidrivers.win32.common import getNextId
  
  g_registeredClass = 0
  
--- 32,38 ----
  
  from gnue.common.datasources import GLoginHandler
  from gnue.common.apps import GConfig
! from gnue.forms.uidrivers.win32.common import getNextId, centerWindow
  
  g_registeredClass = 0
  
***************
*** 84,90 ****
              }
        dlgClassName = self._RegisterWndClass()
  
!       style = win32con.WS_POPUP | win32con.WS_VISIBLE | win32con.WS_CAPTION | 
win32con.DS_SETFONT | win32con.WS_SYSMENU
        cs = win32con.WS_CHILD | win32con.WS_VISIBLE
        title = _("GNU Enterprise: Login to %s") % loginData[0]
  
--- 84,92 ----
              }
        dlgClassName = self._RegisterWndClass()
  
!       style = win32con.WS_POPUP | win32con.WS_VISIBLE | win32con.WS_CAPTION | 
\
!                 win32con.DS_SETFONT | win32con.WS_SYSMENU
!               
        cs = win32con.WS_CHILD | win32con.WS_VISIBLE
        title = _("GNU Enterprise: Login to %s") % loginData[0]
  
***************
*** 165,176 ****
          bmCtrl = win32gui.GetDlgItem(self.hwnd, self.ID_BITMAP)
          win32gui.SendMessage(bmCtrl, win32con.STM_SETIMAGE, 
win32con.IMAGE_BITMAP, self._bmp)
  
!         # centre the dialog
!         desktop = win32gui.GetDesktopWindow()
!         l,t,r,b = win32gui.GetWindowRect(hwnd)
!         dt_l, dt_t, dt_r, dt_b = win32gui.GetWindowRect(desktop)
!         centre_x, centre_y = win32gui.ClientToScreen( desktop, ( 
(dt_r-dt_l)/2, (dt_b-dt_t)/2) )
!         win32gui.MoveWindow(hwnd, centre_x-(r/2), centre_y-(b/2), r-l, b-t, 0)
  
    def OnClose(self, hwnd, msg, wparam, lparam):
          win32gui.EndDialog(hwnd, 0)
--- 167,174 ----
          bmCtrl = win32gui.GetDlgItem(self.hwnd, self.ID_BITMAP)
          win32gui.SendMessage(bmCtrl, win32con.STM_SETIMAGE, 
win32con.IMAGE_BITMAP, self._bmp)
  
!         # center the dialog
!         centerWindow(hwnd)
  
    def OnClose(self, hwnd, msg, wparam, lparam):
          win32gui.EndDialog(hwnd, 0)
***************
*** 180,186 ****
          id = win32api.LOWORD(wparam)
          if id == self.ID_Login:
            for i in range(0, len(self._loginData[2])):
!             self._rv[self._loginData[2][i][0]] = 
win32gui.GetWindowText(win32gui.GetDlgItem(self.hwnd, self.textctrlList[i]))
            self._completed = 1
            win32gui.EndDialog(hwnd, 0)
          elif id == self.ID_Cancel:
--- 178,185 ----
          id = win32api.LOWORD(wparam)
          if id == self.ID_Login:
            for i in range(0, len(self._loginData[2])):
!             dlgItem = win32gui.GetDlgItem(self.hwnd, self.textctrlList[i])
!             self._rv[self._loginData[2][i][0]] = 
win32gui.GetWindowText(dlgItem)
            self._completed = 1
            win32gui.EndDialog(hwnd, 0)
          elif id == self.ID_Cancel:
Index: gnue/forms/src/uidrivers/win32/UIdriver.py
diff -c gnue/forms/src/uidrivers/win32/UIdriver.py:1.13 
gnue/forms/src/uidrivers/win32/UIdriver.py:1.14
*** gnue/forms/src/uidrivers/win32/UIdriver.py:1.13     Tue May  6 17:29:02 2003
--- gnue/forms/src/uidrivers/win32/UIdriver.py  Thu May  8 16:14:07 2003
***************
*** 19,31 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
  import sys
  import string
  
--- 19,32 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/UIdriver.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
+ 
  import sys
  import string
  
***************
*** 43,49 ****
  from gnue.forms.uidrivers.win32.GFwin32App import *
  #from gnue.forms.uidrivers.wx.UIWXSplashScreen import *
  from gnue.forms.uidrivers.win32.widgets._base  import *
! from gnue.forms.uidrivers.win32.common import _eventObjToWin32Window, 
setWidgetBaseFont
  
  
  def OnWMMenuselect(hwnd, msg, wParam, lParam, widget):
--- 44,50 ----
  from gnue.forms.uidrivers.win32.GFwin32App import *
  #from gnue.forms.uidrivers.wx.UIWXSplashScreen import *
  from gnue.forms.uidrivers.win32.widgets._base  import *
! from gnue.forms.uidrivers.win32.common import setWidgetBaseFont
  
  
  def OnWMMenuselect(hwnd, msg, wParam, lParam, widget):
***************
*** 288,293 ****
      if event.CanVeto():
        self.dispatchEvent('requestEXIT',_form=self._form)
      else:
!       object = _eventObjToWin32Window(event)
!       object.Destroy()
        # wxExit() TODO: Try and work this into navigator or here if it still 
hangs
--- 289,293 ----
      if event.CanVeto():
        self.dispatchEvent('requestEXIT',_form=self._form)
      else:
!       event.Destroy()
        # wxExit() TODO: Try and work this into navigator or here if it still 
hangs
Index: gnue/forms/src/uidrivers/win32/common.py
diff -c gnue/forms/src/uidrivers/win32/common.py:1.6 
gnue/forms/src/uidrivers/win32/common.py:1.7
*** gnue/forms/src/uidrivers/win32/common.py:1.6        Sun Mar 16 18:57:28 2003
--- gnue/forms/src/uidrivers/win32/common.py    Thu May  8 16:14:07 2003
***************
*** 1,3 ****
--- 1,32 ----
+ #
+ # This file is part of GNU Enterprise.
+ #
+ # GNU Enterprise is free software; you can redistribute it
+ # and/or modify it under the terms of the GNU General Public
+ # License as published by the Free Software Foundation; either
+ # version 2, or (at your option) any later version.
+ #
+ # GNU Enterprise is distributed in the hope that it will be
+ # useful, but WITHOUT ANY WARRANTY; without even the implied
+ # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ # PURPOSE. See the GNU General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public
+ # License along with program; see the file COPYING. If not,
+ # write to the Free Software Foundation, Inc., 59 Temple Place
+ # - Suite 330, Boston, MA 02111-1307, USA.
+ #
+ # Copyright 2000-2003 Free Software Foundation
+ #
+ # FILE:
+ # win32/common.py
+ #
+ # DESCRIPTION:
+ # A PyWin32 based user interface driver for GNUe forms.
+ #
+ # NOTES:
+ #
+ 
  import string
  import win32gui, win32con, win32ui
  from win32con import *
***************
*** 36,50 ****
    _idPos += 1
    return _idPos
  
- 
- 
- # hack for wxPython 2.2 (2.3+ doesn't need this)
- def _eventObjToWin32Window(event):
- #FIX#    eo = event.GetEventObject()
- #FIX#    return wxPyTypeCast(eo, 'wxWindow')
-   return event
-     
- 
  #
  # Little global helper routine to set font according to options
  #
--- 65,70 ----
***************
*** 61,222 ****
    global _font
    _font = font
  
! 
! #####################################################################
! ##
! ## Basic Event Processing
! ##
! #####################################################################
! 
! def _setDefaultEventHandlers(newWidget, eventHandler, initialize, uiDriver):
!     if initialize:
!       pass
!         # TODO: this should use one instance
! #FIX#        
newWidget.PushEventHandler(mouseEvtHandler(eventHandler,uiDriver))
! #FIX#        
newWidget.PushEventHandler(keyboardEvtHandler(eventHandler,uiDriver))
!       pass
!         
! #FIX#class uiBaseEvtHandler(wxEvtHandler):
! #FIX#    def __init__(self,eventList,eventProcessor, uiDriver):
! #FIX#        wxEvtHandler.__init__(self)
! #FIX#        self._eventProcessor = eventProcessor
! #FIX#        self._uiDriver = uiDriver
! #FIX#        for eventType in eventList:
! #FIX#            self.Connect(-1, -1, eventType,self._processEvent)
!         
! 
! #FIX#    def _processEvent(self,event):
! #FIX#        GDebug.printMesg(0,"uiBaseEvtHandler _processEvent was 
called?!?")
!       
! #
! # mouseEvtHandler
! #
! # Traps most mouse events and translates them into
! # GNUe events passed back to the form
! #
! #FIX#class mouseEvtHandler(uiBaseEvtHandler):
! #FIX#  def __init__(self,eventProcessor, uiDriver):
! #FIX#    eventList = [wxEVT_LEFT_DOWN]
! #FIX#    uiBaseEvtHandler.__init__(self, eventList, eventProcessor, uiDriver)
! 
!   #
!   # The putzing about with the event timestamp is to
!   # allow us to process mouse click events twice. 
!   # The mouse handler is called before the cursor 
!   # position is updated so GetInsertionPoint returns 
!   # the position from the widget losing focus.
!   # setting the timestamp to zero is a flag to prevent
!   # infinate loops and allow us to avoid process that does 
!   # not need done twice.
! 
! #FIX#  def _processEvent(self,event):
! #FIX#    object = _eventObjTowxWindow(event)
! #FIX#
! #FIX#    id = object.GetId()
! #FIX#    gfObject     = self._uiDriver._IdToGFObj[id]
! #FIX#    screenWidget = self._uiDriver._IdToQtObj[id]
! #FIX#    count        = 
self._uiDriver._IdToUIObj[id].widgets.index(screenWidget)
! #FIX#
! #FIX#    if event.GetTimestamp():
! #FIX#      self._eventProcessor('requestFOCUS',gfObject,_form=gfObject._form)
! #FIX#      self._eventProcessor('requestJUMPRECORD',count - 
gfObject._visibleIndex,_form=gfObject._form)
! #FIX#
! #FIX#      if isinstance(screenWidget,wxTextCtrl):
! #FIX#        event.SetTimestamp(0)
! #FIX#        self.AddPendingEvent(event)
! #FIX#
! #FIX#    else:
! #FIX#      textObject= wxPyTypeCast(object, 'wxTextCtrl')
! #FIX#      cursorPosition = textObject.GetInsertionPoint()
! #FIX#      
self._eventProcessor('requestCURSORMOVE',position=cursorPosition,_form=gfObject._form)
! #FIX#
! #FIX#    event.Skip()
! 
! 
! #
! # keyboardEvtHandler
! #
! # Traps most keypress events and translates them into
! # GNUe events passed back to the form
! #
! # Note: wxEVT_KEY_DOWN event seems to only return uppercase chars so
! #       i don't trap it.
! #
! 
! #FIX#class keyboardEvtHandler(uiBaseEvtHandler):
! #FIX#  def __init__(self, eventProcessor, uiDriver):
! #FIX#    eventList = [wxEVT_CHAR]
! #FIX#    uiBaseEvtHandler.__init__(self, eventList, eventProcessor, uiDriver)
! #FIX#
! #FIX#  def _processEvent(self,event):
! #FIX#    action = None
! #FIX#    # hack for swig shortcomming needed by wxPython 2.2.x (2.3 does not 
need this)
! #FIX#    # compute the location of the character in the widget
! #FIX#    object = 
self._uiDriver._IdToGFObj[_eventObjTowxWindow(event).GetId()]
! #FIX#
! #FIX#    keycode = event.KeyCode()
! #FIX#
! #FIX#    #
! #FIX#    # Sigh... a hack for using <enter> in multiline entries
! #FIX#    #
! #FIX#    if  keycode == 13 and \
! #FIX#        not event.ShiftDown() and \
! #FIX#        not event.ControlDown() and \
! #FIX#        not event.AltDown() and \
! #FIX#        int (gConfigForms('enterIsNewLine')) and \
! #FIX#        (hasattr(object,'Char__height') and object.Char__height) > 1:
! #FIX#
! #FIX#      command = 'NEWLINE'
! #FIX#
! #FIX#    else:
! #FIX#
! #FIX#
! #FIX#      #
! #FIX#      # Get the event to process from the KeyMapper
! #FIX#      #
! #FIX#      command = GFKeyMapper.KeyMapper.getEvent(
! #FIX#        keycode,
! #FIX#        event.ShiftDown(),
! #FIX#        event.ControlDown(),
! #FIX#        event.AltDown())
! #FIX#
! #FIX#    if command == 'JUMPRECORD':
! #FIX#      global _PROMPTFORRECORD
! #FIX#      action = _PROMPTFORRECORD()
! #FIX#
! #FIX#    elif command == 'NEWLINE':
! #FIX#      action = events.Event('requestKEYPRESS', '\n',
! #FIX#                     text='\n',
! #FIX#                     code=10)
! #FIX#
! #FIX#    elif command:
! #FIX#      action = events.Event('request%s' % command)
! #FIX#
! #FIX#    elif object._type == 'GFButton':
! #FIX#      action = events.Event('buttonActivated',object)
! #FIX#
! #FIX#    elif object.style == 'checkbox' and object._type == 'GFEntry':
! #FIX#      # <space> <=> <click>
! #FIX#      if keycode == 32:
! #FIX#          action = events.Event('requestTOGGLECHKBOX')
! #FIX#      else:
! #FIX#          # maybe some background error message here
! #FIX#          pass
! #FIX#    else:
! #FIX#      try:
! #FIX#        char = chr(keycode)
! #FIX#        if char in string.printable or char == "\n" or \
! #FIX#           128 <= keycode <= 255:
! #FIX#          action = events.Event('requestKEYPRESS', char,
! #FIX#                         text=char,
! #FIX#                         code=keycode)
! #FIX#      except ValueError:
! #FIX#        pass 
! #FIX#
! #FIX#    if action:
! #FIX#      # Add the object's _form to the outgoing event
! #FIX#      # rather than every event in the function
! #FIX#      action.__dict__.update({'_form':object._form})
! #FIX#      self._eventProcessor(action)
! 
!       
--- 81,89 ----
    global _font
    _font = font
  
! def centerWindow(hwnd):
!   desktop = win32gui.GetDesktopWindow()
!   l,t,r,b = win32gui.GetWindowRect(hwnd)
!   dt_l, dt_t, dt_r, dt_b = win32gui.GetWindowRect(desktop)
!   center_x, center_y = win32gui.ClientToScreen( desktop, ( (dt_r-dt_l)/2, 
(dt_b-dt_t)/2) )
!   win32gui.MoveWindow(hwnd, center_x-(r/2), center_y-(b/2), r-l, b-t, 0)
Index: gnue/forms/src/uidrivers/win32/widgets/_base.py
diff -c gnue/forms/src/uidrivers/win32/widgets/_base.py:1.16 
gnue/forms/src/uidrivers/win32/widgets/_base.py:1.17
*** gnue/forms/src/uidrivers/win32/widgets/_base.py:1.16        Mon May  5 
08:20:33 2003
--- gnue/forms/src/uidrivers/win32/widgets/_base.py     Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/_base.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/widgets/box.py
diff -c gnue/forms/src/uidrivers/win32/widgets/box.py:1.4 
gnue/forms/src/uidrivers/win32/widgets/box.py:1.5
*** gnue/forms/src/uidrivers/win32/widgets/box.py:1.4   Thu Mar 13 16:20:32 2003
--- gnue/forms/src/uidrivers/win32/widgets/box.py       Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/box.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/widgets/button.py
diff -c gnue/forms/src/uidrivers/win32/widgets/button.py:1.5 
gnue/forms/src/uidrivers/win32/widgets/button.py:1.6
*** gnue/forms/src/uidrivers/win32/widgets/button.py:1.5        Tue May  6 
17:29:03 2003
--- gnue/forms/src/uidrivers/win32/widgets/button.py    Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/button.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
***************
*** 31,37 ****
  
  from gnue.common import events
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Button
! from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers, 
getNextId
  
  #
  # UIButton
--- 31,37 ----
  
  from gnue.common import events
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Button
! from gnue.forms.uidrivers.win32.common import getNextId
  
  #
  # UIButton
***************
*** 52,64 ****
      if event.initialize:
        self._eventHandler = event.eventHandler
        event.container.Connect(newWidget.GetId(), self.buttonHandler)
-       _setDefaultEventHandlers(newWidget, event.eventHandler, 
event.initialize, self._uiDriver)
  
      return newWidget
  
- #  def buttonHandler(self,event):
    def buttonHandler(self, id):
-       #print "in buttonHandler id=", id
        action = None
        gfObject = self._uiDriver._IdToGFObj[id]
        action = events.Event('buttonActivated',gfObject)
--- 52,61 ----
Index: gnue/forms/src/uidrivers/win32/widgets/entry.py
diff -c gnue/forms/src/uidrivers/win32/widgets/entry.py:1.7 
gnue/forms/src/uidrivers/win32/widgets/entry.py:1.8
*** gnue/forms/src/uidrivers/win32/widgets/entry.py:1.7 Tue May  6 17:29:03 2003
--- gnue/forms/src/uidrivers/win32/widgets/entry.py     Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/entry.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
***************
*** 31,37 ****
  from gnue.common import events
  
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Entry
! from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers, 
getNextId
  
  #
  # UIEntry
--- 31,37 ----
  from gnue.common import events
  
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Entry
! from gnue.forms.uidrivers.win32.common import getNextId
  
  #
  # UIEntry
***************
*** 95,102 ****
          newWidget.SetValue("")
  
      self._eventHandler = event.eventHandler
-     if event.initialize:
-       _setDefaultEventHandlers(newWidget, event.eventHandler, 
event.initialize,self._uiDriver)
      return newWidget
  
  
--- 95,100 ----
Index: gnue/forms/src/uidrivers/win32/widgets/form/widget.py
diff -c gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.14 
gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.15
*** gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.14  Tue May  6 
17:29:03 2003
--- gnue/forms/src/uidrivers/win32/widgets/form/widget.py       Thu May  8 
16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/form/widget.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
***************
*** 70,76 ****
        buttonbarWidth = 0
      else:
        # TODO: calculate
!       buttonbarWidth = 12*(24+8)
  
      if self._form.style == 'dialog':
        style = win32con.WS_POPUP | win32con.WS_CAPTION | 
win32con.WS_CLIPCHILDREN | win32con.WS_SYSMENU #| win32con.WS_OVERLAPPED
--- 70,76 ----
        buttonbarWidth = 0
      else:
        # TODO: calculate
!       buttonbarWidth = 12*(24+8) + 4*6  #buttons and separators
  
      if self._form.style == 'dialog':
        style = win32con.WS_POPUP | win32con.WS_CAPTION | 
win32con.WS_CLIPCHILDREN | win32con.WS_SYSMENU #| win32con.WS_OVERLAPPED
***************
*** 82,88 ****
        max(formWidth*self._uiDriver.widgetWidth+10, buttonbarWidth)+6, # at 
least buttonbar width
        formHeight*self._uiDriver.widgetHeight+110+20, # TODO: calculate space 
for buttonbar and statusbar and maybe for tabs
        0)
!     
      # The window in which pages will be rendered 
      if object._layout.tabbed:
        self._wrapper = wrappers.TabbedWrapper(self)
--- 82,91 ----
        max(formWidth*self._uiDriver.widgetWidth+10, buttonbarWidth)+6, # at 
least buttonbar width
        formHeight*self._uiDriver.widgetHeight+110+20, # TODO: calculate space 
for buttonbar and statusbar and maybe for tabs
        0)
! 
!     if self._form.style == 'dialog':
!       centerWindow(self.mainWindow.GetHwnd())
! 
      # The window in which pages will be rendered 
      if object._layout.tabbed:
        self._wrapper = wrappers.TabbedWrapper(self)
***************
*** 120,145 ****
  
      return newWidget
  
- 
-   #
-   # closeTrap
-   #
-   # intercepts the applications closure and generates an event to the form 
requesting
-   # closure.  Allows the form to control closure.  If the form approves it'll 
send
-   # back an event closing the application
-   #`
- #  def closeTrap(self,event):
- #    pass
- #    form = self._form 
- #
- #    if event.CanVeto():
- #      self._uiDriver.dispatchEvent('requestEXIT',_form=self._form)
- #    else:
- #      object = _eventObjToWin32Window(event)
- #      object.Destroy()
- #      # wxExit() TODO: Try and work this into navigator or here if it still 
hangs
-                                                 
- 
    #
    # gotoPage
    #
--- 123,128 ----
***************
*** 174,197 ****
        win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 4, 
string.strip("%s/%s" % (currentPage,maxPage)))
  
      return
-     #
-     # Adjust the status fields to reflect width of text in them
-     #
-     # This is a hack
-     #
- #    tipWidth = -1 # Fill whatever remains
- #    statusWidth,unused = 
self.statusBar.GetTextExtent(self.statusBar.GetStatusText(1))
- #    insertWidth,unused = 
self.statusBar.GetTextExtent(self.statusBar.GetStatusText(2))
- #    recordWidth,unused = 
self.statusBar.GetTextExtent(self.statusBar.GetStatusText(3))
- #    pageWidth,unused = 
self.statusBar.GetTextExtent(self.statusBar.GetStatusText(4))
- 
-     # Either double the width if it's set or default to 5
- #    statusWidth = statusWidth and (statusWidth * 2) or 5
- #    insertWidth = insertWidth and (insertWidth * 2) or 5
- #    recordWidth = recordWidth and (recordWidth * 2) or 5
- #    pageWidth   = pageWidth   and (pageWidth   * 2) or 5
- 
- #    
self.statusBar.SetStatusWidths([tipWidth,statusWidth,insertWidth,recordWidth,pageWidth])
  
    def show(self):
      self.mainWindow.Show()
--- 157,162 ----
Index: gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py
diff -c gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.6 
gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.7
*** gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.6 Tue Apr 15 
18:21:04 2003
--- gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py     Thu May  8 
16:14:08 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/form/wrappers.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
***************
*** 56,66 ****
          formHeight*uiform._uiDriver.widgetHeight+24, # TODO
          frame)
  
- #    EVT_SIZE(self.frame, self.OnFrameSize)
- ##    formWidth = int(form._layout.Char__width)
- ##    formHeight = int(form._layout.Char__height)
- ##    self.layoutSize = wxSize(formWidth*uiform._uiDriver.widgetWidth,
- ##                      formHeight*uiform._uiDriver.widgetHeight)
      self._fitted = 0
      self._pageList = []
  
--- 56,61 ----
***************
*** 68,93 ****
    def finalize(self): 
      # This is the initial panel window setup during init
      # not a wxPanel set per page right after this
- ##    self.SetVirtualSize(self.pane.GetSize())
- ##    tempx,tempy =  self.pane.GetSizeTuple()
      self.sw.Show()
- ##    self.fixScrollbars()
      
            
    def OnFrameSize(self, event): 
      pass
- #    self.SetSize(self.frame.GetClientSize())
- #    self.fixScrollbars()
      
    def fixScrollbars(self): 
      pass
- #    x1, y1 = self.frame.GetClientSizeTuple()
- #    x2, y2 = self.pane.GetSizeTuple()
- #    if x1 < x2 or y1 < y2: 
- #      self.SetScrollbars(5, 5, x2, y2)
- #    else: 
- #      self.SetScrollbars(0, 0, 0, 0)
-     
      
       
  #
--- 63,76 ----
***************
*** 109,128 ****
          self.sw, getNextId(), hinst)
  
      self.pane.Show()
- #    pass
- #    ScrollableWrapper.__init__(self, *args, **parms)
- #    tabstyle  = _tabStyles[self.form._layout.tabbed]
- #    self.pane = notebook = wxNotebook(self,-1, #wxPoint(6,6),
- #                                      style=tabstyle)
- #    self.notebooksizer = sizer1 = wxNotebookSizer(notebook)
- #    sizer2 = wxBoxSizer(wxVERTICAL)
- #    sizer2.Add(self.notebooksizer)
- #    self.frame.SetAutoLayout(1)
- #    self.SetSizer(sizer2)
-                              
- #    notebook.Show()
- #    self.__notebookLoopTrap = 0
- #    EVT_NOTEBOOK_PAGE_CHANGING(notebook, notebook.GetId(), 
self.notebookTabHandler)
                               
    def createPage(self, object): 
      pszText = hasattr(object,'caption') and object.caption or object.name
--- 92,97 ----
***************
*** 152,178 ****
      self._pageList.append(newWidget)
      self.fit()
      return newWidget
- #    pass
- #    sizer = wxBoxSizer(wxVERTICAL)  
- #    newWidget = wxPanel(self.pane, -1, size=self.layoutSize)
- #    sizer.Add(newWidget, 0, wxCENTER)
- #    newWidget.SetAutoLayout(1)
- #    newWidget.SetSizer(sizer)
-     
- #    self._pageList.append(newWidget)
- #    self.pane.AddPage(newWidget,hasattr(object,'caption') and object.caption 
or object.name)
- #    self.pane.SetClientSize(self.layoutSize)
- #    self.fit()
- #    return newWidget
  
    def fit(self): 
      if self._fitted: return
- #    self.notebooksizer.Layout()
- #    self.notebooksizer.SetSizeHints(self.pane)
- #    self.SetClientSize(self.pane.GetSize())    
- #    self.SetClientSize(self.layoutSize)    
- #    self.SetSize(self.pane.GetSize())
- #    self.frame.SetClientSize(self.GetSize())
      self._fitted = 1
    
    def setPage(self, page): 
--- 121,129 ----
***************
*** 191,199 ****
  #
  class PlainWrapper(ScrollableWrapper): 
    def __init__(self, *args, **parms): 
      ScrollableWrapper.__init__(self, *args, **parms)
- #    self.pane = wxPanel(self, -1, size=self.layoutSize)
- #    self.pane.Show()
      formWidth = int(self.form._layout.Char__width)
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
--- 142,149 ----
  #
  class PlainWrapper(ScrollableWrapper): 
    def __init__(self, *args, **parms): 
+ 
      ScrollableWrapper.__init__(self, *args, **parms)
      formWidth = int(self.form._layout.Char__width)
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
***************
*** 208,214 ****
      self.pane.Show()
  
    def createPage(self, object): 
- #    newWidget = wxPanel(self.pane, -1,  size=self.layoutSize)
  
      formWidth = int(self.form._layout.Char__width)
      formHeight = int(self.form._layout.Char__height)
--- 158,163 ----
***************
*** 234,244 ****
  
    def fit(self): 
      if self._fitted: return
- ##    self.pane.SetClientSize(self.layoutSize)
- ##    self.pane.Fit()
- ##    self.SetClientSize(self.pane.GetSize())
- ##    self.SetSize(self.pane.GetSize())
- ##    self.frame.Fit()
      self._fitted = 1
  
    def setPage(self, page):
--- 183,188 ----
***************
*** 247,255 ****
          p.Hide()
        else:
          p.Show()
-         
- #_tabStyles = {'left':wxNB_LEFT,
- #              'right':wxNB_RIGHT,
- #              'bottom':wxNB_BOTTOM,
- #              'top':0,
- #              }
--- 191,193 ----
Index: gnue/forms/src/uidrivers/win32/widgets/image.py
diff -c gnue/forms/src/uidrivers/win32/widgets/image.py:1.1 
gnue/forms/src/uidrivers/win32/widgets/image.py:1.2
*** gnue/forms/src/uidrivers/win32/widgets/image.py:1.1 Fri May  2 18:37:33 2003
--- gnue/forms/src/uidrivers/win32/widgets/image.py     Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/image.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/widgets/label.py
diff -c gnue/forms/src/uidrivers/win32/widgets/label.py:1.4 
gnue/forms/src/uidrivers/win32/widgets/label.py:1.5
*** gnue/forms/src/uidrivers/win32/widgets/label.py:1.4 Tue Apr 15 18:21:04 2003
--- gnue/forms/src/uidrivers/win32/widgets/label.py     Thu May  8 16:14:07 2003
***************
*** 19,28 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
--- 19,28 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/label.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
Index: gnue/forms/src/uidrivers/win32/widgets/page.py
diff -c gnue/forms/src/uidrivers/win32/widgets/page.py:1.2 
gnue/forms/src/uidrivers/win32/widgets/page.py:1.3
*** gnue/forms/src/uidrivers/win32/widgets/page.py:1.2  Sun Mar  9 18:08:46 2003
--- gnue/forms/src/uidrivers/win32/widgets/page.py      Thu May  8 16:14:07 2003
***************
*** 19,35 ****
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # UIwxpython.py
  #
  # DESCRIPTION:
! # A wxPython based user interface driver for GNUe forms.
  #
  # NOTES:
  #
  
  import win32gui, win32con
  
- from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper
  
  #
--- 19,34 ----
  # Copyright 2000-2003 Free Software Foundation
  #
  # FILE:
! # win32/widgets/page.py
  #
  # DESCRIPTION:
! # A PyWin32 based user interface driver for GNUe forms.
  #
  # NOTES:
  #
  
  import win32gui, win32con
  
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper
  
  #
***************
*** 45,51 ****
      object = event.object
  
      newWidget = self._uiForm._wrapper.createPage(object)  
-     _setDefaultEventHandlers(newWidget, event.eventHandler, event.initialize, 
self._uiDriver)
      self._containerToolkitWidget = newWidget
      return newWidget
  
--- 44,49 ----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]