commit-gnue
[Top][All Lists]
Advanced

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

gnue/forms/src/uidrivers/win32 UIdriver.py widg...


From: Bajusz Tamás
Subject: gnue/forms/src/uidrivers/win32 UIdriver.py widg...
Date: Sat, 26 Apr 2003 17:22:45 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Bajusz Tamás <address@hidden>   03/04/26 17:22:45

Modified files:
        forms/src/uidrivers/win32: UIdriver.py 
        forms/src/uidrivers/win32/widgets: _base.py 
        forms/src/uidrivers/win32/widgets/form: widget.py 

Log message:
        modal dialogs

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/UIdriver.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/_base.py.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/widgets/form/widget.py.diff?tr1=1.11&tr2=1.12&r1=text&r2=text

Patches:
Index: gnue/forms/src/uidrivers/win32/UIdriver.py
diff -c gnue/forms/src/uidrivers/win32/UIdriver.py:1.8 
gnue/forms/src/uidrivers/win32/UIdriver.py:1.9
*** gnue/forms/src/uidrivers/win32/UIdriver.py:1.8      Tue Apr 15 18:21:03 2003
--- gnue/forms/src/uidrivers/win32/UIdriver.py  Sat Apr 26 17:22:45 2003
***************
*** 50,59 ****
    return widget.OnWMNotify(hwnd, msg, wParam, lParam)
  
  def OnWMDestroy(hwnd, msg, wParam, lParam, widget):
!   win32gui.PostQuitMessage(0) # Terminate the app.
  
  def OnWMClose(hwnd, msg, wParam, lParam, widget):
!   win32gui.DestroyWindow(hwnd)
  
  def OnWMSize(hwnd, msg, wParam, lParam, widget):
    return widget.OnWMSize(hwnd, msg, wParam, lParam)
--- 50,59 ----
    return widget.OnWMNotify(hwnd, msg, wParam, lParam)
  
  def OnWMDestroy(hwnd, msg, wParam, lParam, widget):
!   win32gui.DestroyWindow(hwnd)
  
  def OnWMClose(hwnd, msg, wParam, lParam, widget):
!   return widget.OnWMClose(hwnd, msg, wParam, lParam)
  
  def OnWMSize(hwnd, msg, wParam, lParam, widget):
    return widget.OnWMSize(hwnd, msg, wParam, lParam)
***************
*** 91,104 ****
      ################################################################
      win32gui.InitCommonControls() 
  
!     # Register the "GNUeWindow" class.
!     wc = win32gui.WNDCLASS()
!     wc.lpszClassName = "GNUeWindow"
!     wc.hCursor = win32gui.LoadCursor( 0, win32con.IDC_ARROW )
!     wc.hIcon = win32gui.LoadIcon(0, win32con.IDI_APPLICATION)
!     wc.hbrBackground = win32con.COLOR_WINDOW
!     wc.lpfnWndProc = self._wndproc
!     self.__class__._wndclass = win32gui.RegisterClass(wc)
  
    def _wndproc(self, hwnd, msg, wParam, lParam):
      try:
--- 91,105 ----
      ################################################################
      win32gui.InitCommonControls() 
  
!     if not self._wndclass:
!       # Register the "GNUeWindow" class.
!       wc = win32gui.WNDCLASS()
!       wc.lpszClassName = "GNUeWindow"
!       wc.hCursor = win32gui.LoadCursor( 0, win32con.IDC_ARROW )
!       wc.hIcon = win32gui.LoadIcon(0, win32con.IDI_APPLICATION)
!       wc.hbrBackground = win32con.COLOR_WINDOW
!       wc.lpfnWndProc = self._wndproc
!       self.__class__._wndclass = win32gui.RegisterClass(wc)
  
    def _wndproc(self, hwnd, msg, wParam, lParam):
      try:
***************
*** 174,179 ****
--- 175,185 ----
      if exitApp:
        for child in self._children:
          child.mainWindow.Destroy()
+ 
+     win32gui.PostQuitMessage(0) # Terminate the app.
+     for child in self._children:
+       if child._form.name != formName:
+         child.mainWindow.Enable(1)
  
    def _beep(self):
      pass
Index: gnue/forms/src/uidrivers/win32/widgets/_base.py
diff -c gnue/forms/src/uidrivers/win32/widgets/_base.py:1.11 
gnue/forms/src/uidrivers/win32/widgets/_base.py:1.12
*** gnue/forms/src/uidrivers/win32/widgets/_base.py:1.11        Wed Apr 16 
13:33:44 2003
--- gnue/forms/src/uidrivers/win32/widgets/_base.py     Sat Apr 26 17:22:45 2003
***************
*** 267,272 ****
--- 267,275 ----
    def Connect(self, id, func):
      self._connectTable[id] = func
  
+   def OnWMClose(self, hwnd, msg, wParam, lParam):
+     return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
+ 
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
      return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
***************
*** 278,283 ****
--- 281,289 ----
  
  
  class Win32Window(Win32Base):
+ 
+   def OnWMClose(self, hwnd, msg, wParam, lParam):
+     self._uiDriver.dispatchEvent('requestEXIT',_form=self._uiDriver._form)
  
    def OnWMSize(self, hwnd, msg, wParam, lParam):
      for child in self._children:
Index: gnue/forms/src/uidrivers/win32/widgets/form/widget.py
diff -c gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.11 
gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.12
*** gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.11  Tue Apr 15 
18:21:04 2003
--- gnue/forms/src/uidrivers/win32/widgets/form/widget.py       Sat Apr 26 
17:22:45 2003
***************
*** 73,79 ****
        buttonbarWidth = 12*(24+8)
  
      if self._form.style == 'dialog':
!       style = win32con.WS_OVERLAPPED | win32con.WS_CAPTION | 
win32con.WS_CLIPCHILDREN | win32con.WS_SYSMENU
      else:
        style = win32con.WS_OVERLAPPEDWINDOW | win32con.WS_CLIPCHILDREN
      styleEx = 0
--- 73,79 ----
        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
      else:
        style = win32con.WS_OVERLAPPEDWINDOW | win32con.WS_CLIPCHILDREN
      styleEx = 0
***************
*** 82,89 ****
        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,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)
***************
*** 130,145 ****
    # 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
                                                  
  
    #
--- 129,144 ----
    # 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
                                                  
  
    #
***************
*** 200,203 ****
--- 199,206 ----
  
    def showModal(self):
      self.mainWindow.Show()
+     for key in self._uiDriver._formNameToUIForm.keys():
+       if self._form.name != key:
+         self._uiDriver._formNameToUIForm[key].mainWindow.Enable(0)
+     win32gui.PumpMessages()
  




reply via email to

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