commit-gnue
[Top][All Lists]
Advanced

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

gnue/forms/src/uidrivers/win32 MenuBar.py ToolB...


From: Bajusz Tamás
Subject: gnue/forms/src/uidrivers/win32 MenuBar.py ToolB...
Date: Sun, 09 Mar 2003 18:08:48 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Bajusz Tamás <address@hidden>   03/03/09 18:08:47

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

Log message:
        * more work on tabbed pages
        * button events
        * applying _commonGuiToolkit.UIdriver

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/win32/MenuBar.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/ToolBar.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/UIdriver.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/common.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/_base.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/widgets/box.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/button.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/entry.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/widgets/label.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/page.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/form/widget.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/form/wrappers.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: gnue/forms/src/uidrivers/win32/MenuBar.py
diff -c gnue/forms/src/uidrivers/win32/MenuBar.py:1.2 
gnue/forms/src/uidrivers/win32/MenuBar.py:1.3
*** gnue/forms/src/uidrivers/win32/MenuBar.py:1.2       Tue Mar  4 07:49:36 2003
--- gnue/forms/src/uidrivers/win32/MenuBar.py   Sun Mar  9 18:08:46 2003
***************
*** 49,55 ****
      win32gui.AppendMenu( parent, _menustyle, menu, name )
      # One would think this would go in init(),
      # but, no... win32 has to be a jerkoff.
!     win32gui.SetMenu(self.container.GetId(), self.menu )
      return menu
  
    # Add a menu item (action)
--- 49,55 ----
      win32gui.AppendMenu( parent, _menustyle, menu, name )
      # One would think this would go in init(),
      # but, no... win32 has to be a jerkoff.
!     win32gui.SetMenu(self.container.GetHwnd(), self.menu )
      return menu
  
    # Add a menu item (action)
Index: gnue/forms/src/uidrivers/win32/ToolBar.py
diff -c gnue/forms/src/uidrivers/win32/ToolBar.py:1.4 
gnue/forms/src/uidrivers/win32/ToolBar.py:1.5
*** gnue/forms/src/uidrivers/win32/ToolBar.py:1.4       Sat Mar  8 14:59:05 2003
--- gnue/forms/src/uidrivers/win32/ToolBar.py   Sun Mar  9 18:08:46 2003
***************
*** 44,57 ****
      styleEx = 0
      self.toolbar = mainToolBar = Win32Window(self.driver, styleEx, 
commctrl.TOOLBARCLASSNAME, "GNUe toolbar",
        style, 0, 0, 0, 0,
!       self.container, 8002, hinst)
  
!     win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_BUTTONSTRUCTSIZE, 
12, 0);
! ##    win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_SETBITMAPSIZE, 0, 
0x00200020); # 32x32
! ##    win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_SETBUTTONSIZE, 0, 
0x00200020);  # 32x32
!     win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_SETBITMAPSIZE, 0, 
0x00180018); # 24x24
!     win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_SETBUTTONSIZE, 0, 
0x00180018);  # 24x24
!     win32gui.SendMessage(mainToolBar.GetId(), commctrl.TB_AUTOSIZE, 0, 0)
  
      self.toolbar.Show()
  
--- 44,57 ----
      styleEx = 0
      self.toolbar = mainToolBar = Win32Window(self.driver, styleEx, 
commctrl.TOOLBARCLASSNAME, "GNUe toolbar",
        style, 0, 0, 0, 0,
!       self.container, getNextId(), hinst)
  
!     win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_BUTTONSTRUCTSIZE, 
12, 0);
! ##    win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_SETBITMAPSIZE, 
0, 0x00200020); # 32x32
! ##    win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_SETBUTTONSIZE, 
0, 0x00200020);  # 32x32
!     win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_SETBITMAPSIZE, 0, 
0x00180018); # 24x24
!     win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_SETBUTTONSIZE, 0, 
0x00180018);  # 24x24
!     win32gui.SendMessage(mainToolBar.GetHwnd(), commctrl.TB_AUTOSIZE, 0, 0)
  
      self.toolbar.Show()
  
***************
*** 88,100 ****
  
      # Pack up the image
      tbab = struct.pack("ii", 0, hIcon)
!     iBitmap = win32gui.SendMessage(parent.GetId(), commctrl.TB_ADDBITMAP, 1, 
tbab)
  
  #    TBBUTTON stru (iBitmap, idCommand, fsState, fsStyle, dwData, iString)
      tbb=struct.pack("iiiili", iBitmap, id, commctrl.TBSTATE_ENABLED, 
commctrl.TBSTYLE_BUTTON, 0, 0)
!     win32gui.SendMessage(parent.GetId(), commctrl.TB_ADDBUTTONS, 1, tbb)
  
!     win32gui.SendMessage(parent.GetId(), commctrl.TB_ADDSTRING, 0, 
userAction.description or '');
  
      return (parent, id)
  
--- 88,100 ----
  
      # Pack up the image
      tbab = struct.pack("ii", 0, hIcon)
!     iBitmap = win32gui.SendMessage(parent.GetHwnd(), commctrl.TB_ADDBITMAP, 
1, tbab)
  
  #    TBBUTTON stru (iBitmap, idCommand, fsState, fsStyle, dwData, iString)
      tbb=struct.pack("iiiili", iBitmap, id, commctrl.TBSTATE_ENABLED, 
commctrl.TBSTYLE_BUTTON, 0, 0)
!     win32gui.SendMessage(parent.GetHwnd(), commctrl.TB_ADDBUTTONS, 1, tbb)
  
!     win32gui.SendMessage(parent.GetHwnd(), commctrl.TB_ADDSTRING, 0, 
userAction.description or '');
  
      return (parent, id)
  
***************
*** 103,109 ****
    def addSeparator(self):
  # TODO: this doesn't work
  #      tbb=struct.pack("iiiili", -1, 0, commctrl.TBSTATE_ENABLED, 
commctrl.TBSTYLE_SEP, 0, 0)
! #      win32gui.SendMessage(self.toolbar.GetId(), commctrl.TB_ADDBUTTONS, 1, 
tbb)
      return
      self.toolbar.AddSeparator()
  
--- 103,109 ----
    def addSeparator(self):
  # TODO: this doesn't work
  #      tbb=struct.pack("iiiili", -1, 0, commctrl.TBSTATE_ENABLED, 
commctrl.TBSTYLE_SEP, 0, 0)
! #      win32gui.SendMessage(self.toolbar.GetHwnd(), commctrl.TB_ADDBUTTONS, 
1, tbb)
      return
      self.toolbar.AddSeparator()
  
Index: gnue/forms/src/uidrivers/win32/UIdriver.py
diff -c gnue/forms/src/uidrivers/win32/UIdriver.py:1.3 
gnue/forms/src/uidrivers/win32/UIdriver.py:1.4
*** gnue/forms/src/uidrivers/win32/UIdriver.py:1.3      Wed Mar  5 16:10:37 2003
--- gnue/forms/src/uidrivers/win32/UIdriver.py  Sun Mar  9 18:08:46 2003
***************
*** 38,53 ****
  
  from gnue.forms import VERSION
  from gnue.forms.GFForm import *
! from gnue.forms.uidrivers._base.UIdriver import *
  
  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
! from common import *
  
  
- _PROMPTFORRECORD = None
  def treeShow(object, uiDriver):
    try: 
      print "Object ",object, object.Show(), object.GetParent(), 
uiDriver._IdToGFObj[object.GetId()]
--- 38,53 ----
  
  from gnue.forms import VERSION
  from gnue.forms.GFForm import *
! from gnue.forms.uidrivers._commonGuiToolkit import UIdriver as commonToolkit
  
  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
! 
! #from common import *
  
  
  def treeShow(object, uiDriver):
    try: 
      print "Object ",object, object.Show(), object.GetParent(), 
uiDriver._IdToGFObj[object.GetId()]
***************
*** 62,76 ****
    print "OnWMLButtonDown hwnd,widget=",hwnd,widget
    return win32gui.DefWindowProc(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 OnWMPaint(hwnd, msg, wParam, lParam, widget):
- #  return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
- 
  #def OnWMSize(hwnd, msg, wParam, lParam, widget):
  #  return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
--- 62,76 ----
    print "OnWMLButtonDown hwnd,widget=",hwnd,widget
    return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
+ def OnWMNotify(hwnd, msg, wParam, lParam, widget):
+   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 win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
***************
*** 87,119 ****
  # The public interface to the User Interface
  # All UIs must provide this class
  #
! class GFUserInterface(GFUserInterfaceBase):
    _wndclass = None
    
    _message_map = {
      win32con.WM_LBUTTONDOWN : OnWMLButtonDown,
      win32con.WM_DESTROY : OnWMDestroy,
      win32con.WM_CLOSE : OnWMClose,
  #    win32con.WM_SIZE : OnWMSize,
      win32con.WM_COMMAND : OnWMCommand,
- #    win32con.WM_PAINT : OnWMPaint,
      }
  
    def __init__(self, eventController, disableSplash = None):
!     GFUserInterfaceBase.__init__(self,eventController)
! 
!     self._disableSplash = disableSplash
!     
!     self._DIALOGS = {'about'       :UIAbout,
!                      'messageBox'  :UIMessageBox,
!                      }
!     # Shortcut
!     self.images_dir = 
GConfig.getInstalledBase('forms_images','common_images') + '/'
! 
!     self._IdToWin32Obj = {}
!     self._IdToGFObj = {}
!     self._IdToUIObj = {}
! 
      self._disabledColour = afxres.AFX_IDC_COLOR_LIGHTGRAY
  
      ################################################################
--- 87,106 ----
  # The public interface to the User Interface
  # All UIs must provide this class
  #
! class GFUserInterface(commonToolkit.GFUserInterface):
    _wndclass = None
    
    _message_map = {
      win32con.WM_LBUTTONDOWN : OnWMLButtonDown,
+     win32con.WM_NOTIFY : OnWMNotify,
      win32con.WM_DESTROY : OnWMDestroy,
      win32con.WM_CLOSE : OnWMClose,
  #    win32con.WM_SIZE : OnWMSize,
      win32con.WM_COMMAND : OnWMCommand,
      }
  
    def __init__(self, eventController, disableSplash = None):
!     commonToolkit.GFUserInterface.__init__(self,eventController,disableSplash)
      self._disabledColour = afxres.AFX_IDC_COLOR_LIGHTGRAY
  
      ################################################################
***************
*** 132,138 ****
  
    def _wndproc(self, hwnd, msg, wParam, lParam):
      try:
!       widget = self._IdToWin32Obj[hwnd]
        #print "idget calling _wndproc", widget, hwnd
      except:
        return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
--- 119,125 ----
  
    def _wndproc(self, hwnd, msg, wParam, lParam):
      try:
!       widget = self._IdToTkObj[hwnd]
        #print "idget calling _wndproc", widget, hwnd
      except:
        return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
***************
*** 153,160 ****
  #    if not self._disableSplash:
  #      self.splash = UIWXSplashScreen()
  
-     global _PROMPTFORRECORD
-     _PROMPTFORRECORD = self.promptForRecordNumber
  
      #
      # Create a dummy window used to compute sizes 
--- 140,145 ----
***************
*** 185,208 ****
  
  
  
-   def _activateForm(self, form, modal=0):
- 
- 
-     # Go ahead and display
- 
-     # TODO : hack!!!!!!!!!!!!!!
-     for key in self._formNameToUIForm.keys():
-       if self._formNameToUIForm[key]._form == form:
-         break
- 
- ##    self._formNameToUIForm[key].mainWindow.Raise()
-     self._formNameToUIForm[key].mainWindow.Show()
-   
-     self._formNameToUIForm[key].show()
- 
-     treeShow(self._formNameToUIForm[key].mainWindow, self)
-     
- 
    
#############################################################################
    #
    # Private UIBase support functions
--- 170,175 ----
***************
*** 216,231 ****
    #
    # Tells the application to close it's main window
    #
!   def _exit(self):
!     #TODO
!     self._children[0].mainWindow.Close(true)
! 
!   # Can be used by UI drivers to add more attributes to the creation event.
!   def _updateCreateEvent(self, event):
!     event.eventHandler = self.dispatchEvent
!     event.ui = self
!     return event
  
  
    
#############################################################################
    #
--- 183,203 ----
    #
    # Tells the application to close it's main window
    #
!   def _exit(self,formName):
!     exitApp = 1
!     for child in self._children:
!       if child._form.name == formName:
!         child.mainWindow.Hide()
! 
!       exitApp = exitApp and not child.mainWindow.IsShown()
! 
!     if exitApp:
!       for child in self._children:
!         child.mainWindow.Close(true)
  
+   def _beep(self):
+     pass
+     #wxBell()
  
    
#############################################################################
    #
***************
*** 252,258 ****
    def formAlert(self, event):
      pass
  #    wxBell()
! #    self.statusBar.SetStatusText(event.data,0)
  
    #
    # Called whenever forms goes into a "wait" state in which user cannot
--- 224,230 ----
    def formAlert(self, event):
      pass
  #    wxBell()
!     self.statusBar.SetStatusText(event.data,0)
  
    #
    # Called whenever forms goes into a "wait" state in which user cannot
***************
*** 292,304 ****
  
  
    #
-   # promptForRecordNumber
-   #
-   # Presents a dialog to user asking for the record number to jump to
-   #
-   def promptForRecordNumber(self, event=None):
-     print "promptForRecordNumber"
-   #
    # closeTrap
    #
    # intercepts the applications closure and generates an event to the form 
requesting
--- 264,269 ----
***************
*** 312,354 ****
        object = _eventObjToWin32Window(event)
        object.Destroy()
        # wxExit() TODO: Try and work this into navigator or here if it still 
hangs
- 
- #####################################################################
- ##
- ## Required Dialog box support
- ##
- #####################################################################
- 
- #
- # UIAbout
- #
- # A dialog box providing about info
- #
- #class UIAbout(wxMessageDialog, UIHelper):
- class UIAbout(UIHelper):
-   def __init__(self, interface, programVersion, formName, formVersion, 
author, description):
-     text = _("GNUE Forms")+"\n"+      \
-     _("  Version : ")+"%s\n"+         \
-     _("  Driver  : UIwxpython")+"\n"+ \
-     _("-= Form Info =-")+"\n"+        \
-     _("  Name   : ")+"%s\n"+          \
-     _("  Version: ")+"%s\n"+          \
-     _("  Author : ")+"%s\n"+          \
-     _("  Description:")+"%s\n"
- #    wxMessageDialog.__init__(self, interface,
- #                             text % (programVersion, formName 
,formVersion,author,description),
- #                             _("About"), wxOK | wxICON_INFORMATION)
-     win32api.MessageBox(None,
-         text % (programVersion, formName ,formVersion,author,description),
-         _("About"), win32con.MB_OK)
- #
- # UImessageBox
- #
- # A dialog box providing basic message info
- #
- #class UIMessageBox(wxMessageDialog, UIHelper):
- class UIMessageBox(UIHelper):
-   def __init__(self, interface, message, caption):
-     message = lineWrap(message,60)
- #    wxMessageDialog.__init__(self, interface, message, caption, 
style=wxOK|wxICON_EXCLAMATION)
-     win32api.MessageBox(None, message, caption, win32con.MB_OK)
--- 277,279 ----
Index: gnue/forms/src/uidrivers/win32/common.py
diff -c gnue/forms/src/uidrivers/win32/common.py:1.4 
gnue/forms/src/uidrivers/win32/common.py:1.5
*** gnue/forms/src/uidrivers/win32/common.py:1.4        Sat Mar  8 23:08:50 2003
--- gnue/forms/src/uidrivers/win32/common.py    Sun Mar  9 18:08:46 2003
***************
*** 51,72 ****
  # TODO: Not completed
  #
  def initFont(widget, affectsLayout=1):
- ##    if int(gConfigForms('fixedWidthFont')):
- ##        
widget.SetFont(wxFont(int(gConfigForms('pointSize')),wxMODERN,wxNORMAL,\
- ##                              
wxNORMAL,FALSE,'',encodings[gConfig('textEncoding')]))
    global _font
- #  win32gui.SendMessage(widget.GetId(),
- #                       WM_SETFONT,
- #                       _font,
- #                       0)
    widget.SetFont(_font)
    
  font_spec = {'name':'Courier New', 'height':int(gConfig('pointSize'))}
  _font = win32ui.CreateFont (font_spec)
- 
- #_font = win32gui.GetStockObject(SYSTEM_FIXED_FONT) #ANSI OEM SYSTEM
- #fn = win32gui.GetObject(_font)
- #print fn.lfHeight, fn.lfWidth,fn.lfCharSet,fn.lfPitchAndFamily
  
  def setWidgetBaseFont(font):
    global _font
--- 51,61 ----
Index: gnue/forms/src/uidrivers/win32/widgets/_base.py
diff -c gnue/forms/src/uidrivers/win32/widgets/_base.py:1.3 
gnue/forms/src/uidrivers/win32/widgets/_base.py:1.4
*** gnue/forms/src/uidrivers/win32/widgets/_base.py:1.3 Wed Mar  5 16:10:37 2003
--- gnue/forms/src/uidrivers/win32/widgets/_base.py     Sun Mar  9 18:08:46 2003
***************
*** 27,33 ****
  # NOTES:
  #
  
! import win32gui, win32con, win32ui
  
  from gnue.common import events
  
--- 27,35 ----
  # NOTES:
  #
  
! from types import StringType
! import win32api, win32gui, win32con, win32ui, commctrl
! import struct
  
  from gnue.common import events
  
***************
*** 36,75 ****
  from gnue.forms.uidrivers.win32.common import *
  
  
  class Win32Base:
    _connectTable = {}
  
!   def Create(self, styleEx, className, windowTitle, style, x,y, width,height, 
parent,menu=0,instance=0):
      if parent == 0:
        hparent = 0
      else:
!       hparent = parent.GetId()
  
      self._parent = parent
      self._children = []
      if parent:
        parent._children.append(self)
  
!     self._whnd = win32gui.CreateWindowEx(styleEx, className, windowTitle, 
style, x,y, width,height, hparent, menu, instance, None)
!     self._PyCWnd = win32ui.CreateWindowFromHandle(self._whnd)
      
!     return self._whnd
  
    def SetFont(self,font):
      self._PyCWnd.SetFont(font,1)
  
    def GetId(self):
!     return self._whnd
  
    def Show(self):
!     try:
!       win32gui.ShowWindow(self._whnd, win32con.SW_SHOWNORMAL)
!     except:
!       print "Show failed"
  
    def Hide(self):
      try:
!       win32gui.ShowWindow(self._whnd, win32con.SW_HIDE)
      except:
        pass
  
--- 38,87 ----
  from gnue.forms.uidrivers.win32.common import *
  
  
+ #TCN_SELCHANGE = (commctrl.TCN_FIRST - 1)
+ #TCN_SELCHANGING = (commctrl.TCN_FIRST - 2)
+ 
  class Win32Base:
    _connectTable = {}
  
!   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
      if parent == 0:
        hparent = 0
      else:
!       hparent = parent.GetHwnd()
  
+     self._id = menu
+     
      self._parent = parent
      self._children = []
      if parent:
        parent._children.append(self)
  
!     self._hwnd = win32gui.CreateWindowEx(styleEx, className, windowTitle, 
style, x,y, width,height, hparent, menu, instance, None)
!     self._PyCWnd = win32ui.CreateWindowFromHandle(self._hwnd)
      
!     self._uiDriver = uidriver
!     uidriver._IdToTkObj[self._hwnd] = self
  
+     if type(className) == StringType: # STATIC BUTTON COMBOBOX EDIT
+       self.Show()
+     print windowTitle,className,self._id,self._hwnd
+     
    def SetFont(self,font):
      self._PyCWnd.SetFont(font,1)
  
    def GetId(self):
!     return self._id
! 
!   def GetHwnd(self):
!     return self._hwnd
  
    def Show(self):
!     win32gui.ShowWindow(self._hwnd, win32con.SW_SHOWNORMAL)
  
    def Hide(self):
      try:
!       win32gui.ShowWindow(self._hwnd, win32con.SW_HIDE)
      except:
        pass
  
***************
*** 80,189 ****
      return self._children
  
    def SetFocus(self):
!     win32gui.SendMessage(self._whnd, win32con.WM_SETFOCUS, 0, 0)
  
    def Enable(self, enabled):
      if enabled:
!       win32gui.EnableWindow(self._whnd, 1)
      else:
!       win32gui.EnableWindow(self._whnd, 0)
  
    def Destroy(self):
!     win32gui.DestroyWindow(self._whnd)
  
    def Connect(self, id, func):
      self._connectTable[id] = func
-     
- 
- class Win32Window(Win32Base):
-   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
-     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
-     uidriver._IdToWin32Obj[whnd] = self
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Window hwnd=", hwnd
!     self._connectTable[wParam]()
! 
! 
! class Win32Box(Win32Base):
!   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
!     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
!     uidriver._IdToWin32Obj[whnd] = self
  
!   def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Box"
      return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
  
! class Win32Label(Win32Base):
!   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
!     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
!     uidriver._IdToWin32Obj[whnd] = self
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Label"
!     return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
  
  class Win32Entry(Win32Base):
-   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
-     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
-     uidriver._IdToWin32Obj[whnd] = self
-     self._uiDriver = uidriver
      
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Entry"
      return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
    def SetValue(self, value):
!       object = self._uiDriver._IdToGFObj[self._whnd]
!       if object.style == 'checkbox':
!         if value:
!           val = win32con.BST_CHECKED
          else:
!           val = win32con.BST_UNCHECKED
!         win32gui.SendMessage(self._whnd, win32con.BM_SETCHECK, val, 0)
!       elif object.style == 'dropdown':
!         win32gui.SendMessage(self._whnd, win32con.CB_SELECTSTRING, -1, value) 
# CB_SETCURSEL, value, 0)
!       else:
!         win32gui.SetWindowText(self._whnd, str(value))
  
    def GetValue(self):
!       object = self._uiDriver._IdToGFObj[self._whnd]
        if object.style == 'checkbox':
!         val = win32gui.SendMessage(self._whnd, win32con.BM_GETCHECK, 0, 0) & 
win32con.BST_CHECKED
          if val:
            return 1
          else:
            return 0
        elif object.style == 'dropdown':
!         return win32gui.SendMessage(self._whnd, win32con.CB_GETCURSEL, 0, 0)
        else:
!         return win32gui.GetWindowText(self._whnd)
  
  
  class Win32Button(Win32Base):
-   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
-     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
-     uidriver._IdToWin32Obj[whnd] = self
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print 'OnWMCommand in Win32Button', hwnd, wParam
!     if win32api.LOWORD(wParam) == win32con.BN_CLICKED:
!       print "button clicked"
!       gfObject = self._uiDriver._IdToGFObj[hwnd]
!       action = events.Event('buttonActivated',gfObject)
!       self._eventHandler(action)
  
  
  class Win32Page(Win32Base):
-   def __init__(self, uidriver, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0):
-     whnd=Win32Base.Create(self, styleEx, className, windowTitle, style, x,y, 
width,height, parent,menu=0,instance=0)
-     uidriver._IdToWin32Obj[whnd] = self
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Page", hwnd
!     return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
  #
  # UIHelper
--- 92,196 ----
      return self._children
  
    def SetFocus(self):
!     win32gui.SendMessage(self._hwnd, win32con.WM_SETFOCUS, 0, 0)
  
    def Enable(self, enabled):
      if enabled:
!       win32gui.EnableWindow(self._hwnd, 1)
      else:
!       win32gui.EnableWindow(self._hwnd, 0)
  
    def Destroy(self):
!     win32gui.DestroyWindow(self._hwnd)
  
    def Connect(self, id, func):
      self._connectTable[id] = func
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
!   def OnWMNotify(self, hwnd, msg, wParam, lParam):
      return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
  
! 
! class Win32Window(Win32Base):
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Window hwnd=", hwnd
!     self._connectTable[wParam]()
! 
!   def OnWMNotify(self, hwnd, msg, wParam, lParam):
!     print "OnWMNotify Win32Window", hwnd, msg, wParam, lParam
!     format = "iiiiiiiiiii"
!     buf = win32gui.PyMakeBuffer(struct.calcsize(format), lParam)
!     hwndFrom, idFrom, code, iItem, iSubItem, uNewState, uOldState, uChanged, 
actionx, actiony, lparam \
!               = struct.unpack(format, buf)
!     if code == -552: # TCN_SELCHANGING
!       window = self._uiDriver._IdToTkObj[hwndFrom]
!       pageId = win32gui.SendMessage(window.GetHwnd(), commctrl.TCM_GETCURSEL, 
0, 0)
!       window._children[pageId].Hide()
!     elif code == -2: # TCN_SELCHANGE
!       window = self._uiDriver._IdToTkObj[hwndFrom]
!       pageId = win32gui.SendMessage(window.GetHwnd(), commctrl.TCM_GETCURSEL, 
0, 0)
!       window._children[pageId].Show()
  
  
  class Win32Entry(Win32Base):
      
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Entry", hwnd, msg, wParam, lParam
      return win32gui.DefWindowProc(hwnd, msg, wParam, lParam)
  
    def SetValue(self, value):
!       object = self._uiDriver._IdToGFObj[self._id]
!       try:
!         if object.style == 'checkbox':
!           if value:
!             val = win32con.BST_CHECKED
!           else:
!             val = win32con.BST_UNCHECKED
!           win32gui.SendMessage(self._hwnd, win32con.BM_SETCHECK, val, 0)
!         elif object.style == 'dropdown':
!           win32gui.SendMessage(self._hwnd, win32con.CB_SELECTSTRING, -1, 
value) # CB_SETCURSEL, value, 0)
          else:
!           win32gui.SetWindowText(self._hwnd, str(value))
!       except:
!         pass
  
    def GetValue(self):
!       object = self._uiDriver._IdToGFObj[self._id]
        if object.style == 'checkbox':
!         val = win32gui.SendMessage(self._hwnd, win32con.BM_GETCHECK, 0, 0) & 
win32con.BST_CHECKED
          if val:
            return 1
          else:
            return 0
        elif object.style == 'dropdown':
!         return win32gui.SendMessage(self._hwnd, win32con.CB_GETCURSEL, 0, 0)
        else:
!         return win32gui.GetWindowText(self._hwnd)
  
  
  class Win32Button(Win32Base):
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print 'OnWMCommand in Win32Button', hwnd, msg, wParam, lParam
!     print self._connectTable[wParam]
!     self._connectTable[wParam](wParam)
  
  
  class Win32Page(Win32Base):
  
    def OnWMCommand(self, hwnd, msg, wParam, lParam):
!     print "OnWMCommand Win32Page", hwnd, msg, wParam, lParam
!     window = self._uiDriver._IdToTkObj[lParam]
!     window.OnWMCommand(hwnd, msg, wParam, lParam)
! 
!   def OnWMNotify(self, hwnd, msg, wParam, lParam):
!     print "OnWMNotify Win32Page", hwnd, msg, wParam, lParam
!     self._uiDriver._IdToTkObj[lParam].Show()
! 
  
  #
  # UIHelper
***************
*** 194,200 ****
  class UIHelper(UIWidget):
    def _addToCrossRef(self, widget, gfobject, uiobject):
      id = widget.GetId()
! #    self._uiDriver._IdToWin32Obj[id]=widget
      self._uiDriver._IdToGFObj[id]=gfobject
      self._uiDriver._IdToUIObj[id]=uiobject
  #    widget.__origBackgroundColor = widget.GetBackgroundColour()
--- 201,207 ----
  class UIHelper(UIWidget):
    def _addToCrossRef(self, widget, gfobject, uiobject):
      id = widget.GetId()
! #    self._uiDriver._IdToTkObj[id]=widget
      self._uiDriver._IdToGFObj[id]=gfobject
      self._uiDriver._IdToUIObj[id]=uiobject
  #    widget.__origBackgroundColor = widget.GetBackgroundColour()
***************
*** 202,216 ****
    def _deleteFromCrossRef(self, widget, object):
      id = widget.GetId()
      try:
! #      del self._uiDriver._IdToWin32Obj[id]
        del self._uiDriver._IdToGFObj[id]
        del self._uiDriver._IdToUIObj[id]
      except:
        pass
  
-   def GetChildren(self):
-     return self.widgets
- 
    #
    # Override the base UIWidget functions
    #
--- 209,220 ----
    def _deleteFromCrossRef(self, widget, object):
      id = widget.GetId()
      try:
! #      del self._uiDriver._IdToTkObj[id]
        del self._uiDriver._IdToGFObj[id]
        del self._uiDriver._IdToUIObj[id]
      except:
        pass
  
    #
    # Override the base UIWidget functions
    #
***************
*** 226,235 ****
  
            
    def showModal(self):
!     pass
  
! #  def destroy(self):
! #    win32gui.DestroyWindow(self)
  
  
    def indexedFocus(self, index):
--- 230,241 ----
  
            
    def showModal(self):
!     for widget in self.widgets:
!       widget.Show()
  
!   def destroy(self):
!     for widget in self.widgets:
!       self.Destroy()
  
  
    def indexedFocus(self, index):
***************
*** 293,299 ****
    def cleanup(self, object):
      for widget in self.widgets[:]:
        id = widget.GetId()
! #      del self._uiDriver._IdToWin32Obj[id]
        del self._uiDriver._IdToGFObj[id]
        del self._uiDriver._IdToUIObj[id]
        self.widgets.pop(0)
--- 299,305 ----
    def cleanup(self, object):
      for widget in self.widgets[:]:
        id = widget.GetId()
! #      del self._uiDriver._IdToTkObj[id]
        del self._uiDriver._IdToGFObj[id]
        del self._uiDriver._IdToUIObj[id]
        self.widgets.pop(0)
Index: gnue/forms/src/uidrivers/win32/widgets/box.py
diff -c gnue/forms/src/uidrivers/win32/widgets/box.py:1.2 
gnue/forms/src/uidrivers/win32/widgets/box.py:1.3
*** gnue/forms/src/uidrivers/win32/widgets/box.py:1.2   Sun Mar  2 17:45:12 2003
--- gnue/forms/src/uidrivers/win32/widgets/box.py       Sun Mar  9 18:08:46 2003
***************
*** 28,34 ****
  #
  import win32gui, win32con
  
! from gnue.forms.uidrivers.win32.widgets._base import *
  
  #
  # UIBox
--- 28,34 ----
  #
  import win32gui, win32con
  
! from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Window
  
  #
  # UIBox
***************
*** 42,54 ****
      object = event.object
      style = win32con.WS_CHILD | win32con.SS_ETCHEDFRAME
      styleEx = 0
!     newWidget = Win32Box(self._uiDriver, styleEx, 'STATIC', 
str(object.label), style,
                         object.Char__x*event.widgetWidth+(event.widgetWidth/2),
                         
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight+(event.widgetHeight/2),
                         (object.Char__width-1)*event.widgetWidth,
                         (object.Char__height-1)*event.widgetHeight,
                         event.container)
- 
      return newWidget
  
  
--- 42,53 ----
      object = event.object
      style = win32con.WS_CHILD | win32con.SS_ETCHEDFRAME
      styleEx = 0
!     newWidget = Win32Window(self._uiDriver, styleEx, 'STATIC', 
str(object.label), style,
                         object.Char__x*event.widgetWidth+(event.widgetWidth/2),
                         
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight+(event.widgetHeight/2),
                         (object.Char__width-1)*event.widgetWidth,
                         (object.Char__height-1)*event.widgetHeight,
                         event.container)
      return newWidget
  
  
Index: gnue/forms/src/uidrivers/win32/widgets/button.py
diff -c gnue/forms/src/uidrivers/win32/widgets/button.py:1.2 
gnue/forms/src/uidrivers/win32/widgets/button.py:1.3
*** gnue/forms/src/uidrivers/win32/widgets/button.py:1.2        Sun Mar  2 
17:45:12 2003
--- gnue/forms/src/uidrivers/win32/widgets/button.py    Sun Mar  9 18:08:46 2003
***************
*** 29,37 ****
  
  import win32gui, win32con
  
! from gnue.forms.uidrivers.win32.widgets._base import *
! from gnue.forms.uidrivers.win32.common import _eventObjToWin32Window
! from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers
  
  #
  # UIButton
--- 29,37 ----
  
  import win32gui, win32con
  
! 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
***************
*** 41,50 ****
  class UIButton(UIHelper):
    def _createWidget(self, event, spacer):
      object = event.object
- #    newWidget = wxButton(event.container,-1,str(object.label),
- #                         
wxPoint(object.Char__x*event.widgetWidth,(object.Char__y+spacer)*event.widgetHeight),
- #                         
wxSize(object.Char__width*event.widgetWidth,object.Char__height*event.widgetHeight)
- #                         )
      style = win32con.BS_PUSHBUTTON | win32con.WS_CHILD
      styleEx = 0
      newWidget = Win32Button(self._uiDriver, styleEx, 'BUTTON', 
str(object.label), style,
--- 41,46 ----
***************
*** 52,60 ****
                          
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight, 
                          object.Char__width*event.widgetWidth,
                          object.Char__height*event.widgetHeight,
!                         event.container)
      return newWidget
  
  
  configuration = {
      'baseClass'  : UIButton,
--- 48,68 ----
                          
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight, 
                          object.Char__width*event.widgetWidth,
                          object.Char__height*event.widgetHeight,
!                         event.container, getNextId())
!     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)
+       self._eventHandler(action)
  
  configuration = {
      'baseClass'  : UIButton,
Index: gnue/forms/src/uidrivers/win32/widgets/entry.py
diff -c gnue/forms/src/uidrivers/win32/widgets/entry.py:1.3 
gnue/forms/src/uidrivers/win32/widgets/entry.py:1.4
*** gnue/forms/src/uidrivers/win32/widgets/entry.py:1.3 Wed Mar  5 16:10:37 2003
--- gnue/forms/src/uidrivers/win32/widgets/entry.py     Sun Mar  9 18:08:46 2003
***************
*** 30,38 ****
  import win32gui, win32con
  from gnue.common import events
  
! from gnue.forms.uidrivers.win32.widgets._base import *
! from gnue.forms.uidrivers.win32.common import _eventObjToWin32Window
! from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers
  
  #
  # UIEntry
--- 30,37 ----
  import win32gui, win32con
  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
***************
*** 82,92 ****
                          
(object.Char__y+spacer+(object._gap*spacer))*event.widgetHeight,
                          width,
                          height,
!                         event.container)
  
      if ostyle == 'dropdown':
        for item in object._field.allowedValues()[1]:
!         win32gui.SendMessage(newWidget.GetId(), win32con.CB_ADDSTRING, 0, 
item)
  
      self._eventHandler = event.eventHandler
      if event.initialize:
--- 81,91 ----
                          
(object.Char__y+spacer+(object._gap*spacer))*event.widgetHeight,
                          width,
                          height,
!                         event.container, getNextId())
  
      if ostyle == 'dropdown':
        for item in object._field.allowedValues()[1]:
!         win32gui.SendMessage(newWidget.GetHwnd(), win32con.CB_ADDSTRING, 0, 
item)
  
      self._eventHandler = event.eventHandler
      if event.initialize:
Index: gnue/forms/src/uidrivers/win32/widgets/form/widget.py
diff -c gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.6 
gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.7
*** gnue/forms/src/uidrivers/win32/widgets/form/widget.py:1.6   Sat Mar  8 
23:08:50 2003
--- gnue/forms/src/uidrivers/win32/widgets/form/widget.py       Sun Mar  9 
18:08:46 2003
***************
*** 31,37 ****
  import win32api, win32gui, win32con, commctrl
  
  from gnue.forms.uidrivers.win32.common import *
- from gnue.forms.uidrivers.win32.common import _eventObjToWin32Window
  from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Window
  from gnue.forms.uidrivers.win32.MenuBar import MenuBar
  from gnue.forms.uidrivers.win32.ToolBar import ToolBar
--- 31,36 ----
***************
*** 111,121 ****
        styleEx = 0
        self.statusBar = Win32Window(self._uiDriver, styleEx, 
commctrl.STATUSCLASSNAME, "",
          style, 0, 0, 0, 0,
!         self.mainWindow, 8001, hinst)
        x=formWidth*self._uiDriver.widgetWidth
        statwidths = 
struct.pack("iiiii",x-75-75-50-50,x-75-75-50,x-75-75,x-75,x)
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETPARTS, 5, 
statwidths)
!       win32gui.SendMessage(self.statusBar.GetId(), win32con.WM_SIZE, 0, 0)
  
  
      self._eventHandler = event.eventHandler
--- 110,120 ----
        styleEx = 0
        self.statusBar = Win32Window(self._uiDriver, styleEx, 
commctrl.STATUSCLASSNAME, "",
          style, 0, 0, 0, 0,
!         self.mainWindow, getNextId(), hinst)
        x=formWidth*self._uiDriver.widgetWidth
        statwidths = 
struct.pack("iiiii",x-75-75-50-50,x-75-75-50,x-75-75,x-75,x)
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETPARTS, 5, 
statwidths)
!       win32gui.SendMessage(self.statusBar.GetHwnd(), win32con.WM_SIZE, 0, 0)
  
  
      self._eventHandler = event.eventHandler
***************
*** 174,192 ****
    #
    def _setStatusBar(self,tip, statusValue, insertValue, currentRecord, 
maxRecord, currentPage, maxPage):
      if tip != None:
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETTEXT, 0, 
str(tip))
  
      if statusValue:
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETTEXT, 1, 
statusValue)
  
      if insertValue:
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETTEXT, 2, 
insertValue)
  
      if currentRecord and  maxRecord:
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETTEXT, 3, 
string.strip("%s/%s" % (currentRecord,maxRecord)))
  
      if currentPage and  maxPage:
!       win32gui.SendMessage(self.statusBar.GetId(), commctrl.SB_SETTEXT, 4, 
string.strip("%s/%s" % (currentPage,maxPage)))
  
      return
      #
--- 173,191 ----
    #
    def _setStatusBar(self,tip, statusValue, insertValue, currentRecord, 
maxRecord, currentPage, maxPage):
      if tip != None:
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 0, 
str(tip))
  
      if statusValue:
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 1, 
statusValue)
  
      if insertValue:
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 2, 
insertValue)
  
      if currentRecord and  maxRecord:
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 3, 
string.strip("%s/%s" % (currentRecord,maxRecord)))
  
      if currentPage and  maxPage:
!       win32gui.SendMessage(self.statusBar.GetHwnd(), commctrl.SB_SETTEXT, 4, 
string.strip("%s/%s" % (currentPage,maxPage)))
  
      return
      #
***************
*** 208,211 ****
--- 207,215 ----
  
  #    
self.statusBar.SetStatusWidths([tipWidth,statusWidth,insertWidth,recordWidth,pageWidth])
  
+   def show(self):
+     self.mainWindow.Show()
+ 
+   def showModal(self):
+     self.mainWindow.Show()
  
Index: gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py
diff -c gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.3 
gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.4
*** gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py:1.3 Sat Mar  8 
14:59:07 2003
--- gnue/forms/src/uidrivers/win32/widgets/form/wrappers.py     Sun Mar  9 
18:08:46 2003
***************
*** 32,38 ****
  
  from gnue.common import events
  from gnue.common.apps import GDebug
! from gnue.forms.uidrivers.win32.widgets._base import *
  from gnue.forms.uidrivers.win32.common import getNextId
  
  class ScrollableWrapper(Win32Window): 
--- 32,38 ----
  
  from gnue.common import events
  from gnue.common.apps import GDebug
! from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Window, 
Win32Page
  from gnue.forms.uidrivers.win32.common import getNextId
  
  class ScrollableWrapper(Win32Window): 
***************
*** 70,76 ****
      # not a wxPanel set per page right after this
  ##    self.SetVirtualSize(self.pane.GetSize())
  ##    tempx,tempy =  self.pane.GetSizeTuple()
!     self.Show()
  ##    self.fixScrollbars()
      
            
--- 70,76 ----
      # not a wxPanel set per page right after this
  ##    self.SetVirtualSize(self.pane.GetSize())
  ##    tempx,tempy =  self.pane.GetSizeTuple()
!     self.sw.Show()
  ##    self.fixScrollbars()
      
            
***************
*** 101,113 ****
      hinst = win32api.GetModuleHandle(None)
      style = win32con.WS_CHILD | commctrl.TCS_TABS #| win32con.WS_BORDER
      styleEx = 0
-     id = getNextId()
      self.pane = Win32Window(self.uiform._uiDriver, styleEx, 
commctrl.WC_TABCONTROL, "tabcontrol", style,
          0, 
          0,
          formWidth*self.uiform._uiDriver.widgetWidth+6, # TODO
          formHeight*self.uiform._uiDriver.widgetHeight+22, # TODO
!         self.sw, id, hinst)
  
      self.pane.Show()
  #    pass
--- 101,112 ----
      hinst = win32api.GetModuleHandle(None)
      style = win32con.WS_CHILD | commctrl.TCS_TABS #| win32con.WS_BORDER
      styleEx = 0
      self.pane = Win32Window(self.uiform._uiDriver, styleEx, 
commctrl.WC_TABCONTROL, "tabcontrol", style,
          0, 
          0,
          formWidth*self.uiform._uiDriver.widgetWidth+6, # TODO
          formHeight*self.uiform._uiDriver.widgetHeight+22, # TODO
!         self.sw, getNextId(), hinst)
  
      self.pane.Show()
  #    pass
***************
*** 130,149 ****
      buff = array.array('c', pszText + "\0")
      addrText = buff.buffer_info()[0]
      tab=struct.pack("iilliii", commctrl.TCIF_TEXT | commctrl.TCIF_STATE, 0, 
0, addrText, 0, 0, -1)
!     icount = win32gui.SendMessage(self.pane.GetId(), 
commctrl.TCM_GETITEMCOUNT, 0, 0)
!     win32gui.SendMessage(self.pane.GetId(), commctrl.TCM_INSERTITEM, icount, 
tab)
  
      formWidth = int(self.form._layout.Char__width)
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
      styleEx = 0
!     newWidget = Win32Page(self.uiform._uiDriver, styleEx, 
self.uiform._uiDriver._wndclass, "createPage", style,
          2, # TODO
          28, # TODO
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight-10, # TODO
!         self.pane)
      self._pageList.append(newWidget)
      return newWidget
  #    pass
  #    sizer = wxBoxSizer(wxVERTICAL)  
--- 129,156 ----
      buff = array.array('c', pszText + "\0")
      addrText = buff.buffer_info()[0]
      tab=struct.pack("iilliii", commctrl.TCIF_TEXT | commctrl.TCIF_STATE, 0, 
0, addrText, 0, 0, -1)
!     icount = win32gui.SendMessage(self.pane.GetHwnd(), 
commctrl.TCM_GETITEMCOUNT, 0, 0)
!     win32gui.SendMessage(self.pane.GetHwnd(), commctrl.TCM_INSERTITEM, 
icount, tab)
  
      formWidth = int(self.form._layout.Char__width)
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
      styleEx = 0
!     newWidget = Win32Page(self.uiform._uiDriver, styleEx, 
self.uiform._uiDriver._wndclass, "tabbedPage", style,
          2, # TODO
          28, # TODO
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight-10, # TODO
!         self.pane, getNextId())
! 
!     # Only show first page
!     if not self._fitted:
!       newWidget.Show()
!     else:
!       newWidget.Hide()
! 
      self._pageList.append(newWidget)
+     self.fit()
      return newWidget
  #    pass
  #    sizer = wxBoxSizer(wxVERTICAL)  
***************
*** 160,171 ****
  
    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 notebookTabHandler(self,event):
--- 167,178 ----
  
    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 notebookTabHandler(self,event):
***************
*** 183,189 ****
    
    def setPage(self, page): 
      pageId = self._pageList.index(page)
!     win32gui.SendMessage(self.pane.GetId(), commctrl.TCM_SETCURFOCUS, pageId, 
0)
  #    self.pane.SetSelection(pageId)
      
                                       
--- 190,196 ----
    
    def setPage(self, page): 
      pageId = self._pageList.index(page)
!     win32gui.SendMessage(self.pane.GetHwnd(), commctrl.TCM_SETCURSEL, pageId, 
0)
  #    self.pane.SetSelection(pageId)
      
                                       
***************
*** 204,210 ****
          0,
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight,
!         self.sw)
  
      self.pane.Show()
  
--- 211,217 ----
          0,
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight,
!         self.sw, getNextId())
  
      self.pane.Show()
  
***************
*** 215,226 ****
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
      styleEx = 0
!     newWidget = Win32Page(self.uiform._uiDriver, styleEx, 
self.uiform._uiDriver._wndclass, "createPage", style,
          0, 
          0,
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight,
!         self.pane)
  
      # Only show first page
      if not self._fitted:
--- 222,233 ----
      formHeight = int(self.form._layout.Char__height)
      style = win32con.WS_OVERLAPPED | win32con.WS_CHILD #| win32con.WS_BORDER
      styleEx = 0
!     newWidget = Win32Page(self.uiform._uiDriver, styleEx, 
self.uiform._uiDriver._wndclass, "plainPage", style,
          0, 
          0,
          formWidth*self.uiform._uiDriver.widgetWidth,
          formHeight*self.uiform._uiDriver.widgetHeight,
!         self.pane, getNextId())
  
      # Only show first page
      if not self._fitted:
***************
*** 229,235 ****
        newWidget.Hide()
        
      self._pageList.append(newWidget)
-     print "createPage.self._pageList=",self._pageList
      self.fit()
      return newWidget
  
--- 236,241 ----
Index: gnue/forms/src/uidrivers/win32/widgets/label.py
diff -c gnue/forms/src/uidrivers/win32/widgets/label.py:1.2 
gnue/forms/src/uidrivers/win32/widgets/label.py:1.3
*** gnue/forms/src/uidrivers/win32/widgets/label.py:1.2 Sun Mar  2 17:45:12 2003
--- gnue/forms/src/uidrivers/win32/widgets/label.py     Sun Mar  9 18:08:46 2003
***************
*** 29,35 ****
  
  import win32gui, win32con
  
! from gnue.forms.uidrivers.win32.widgets._base import *
  
  #
  # UILabel
--- 29,35 ----
  
  import win32gui, win32con
  
! from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Window
  
  #
  # UILabel
***************
*** 46,52 ****
      object = event.object
      style = self.alignmentStyle[object.alignment]
      styleEx = 0
!     newWidget = Win32Label(self._uiDriver, styleEx, 'STATIC', 
str(object.text), style,
                          object.Char__x*event.widgetWidth,
                          
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight, 
                          self.itemWidth,
--- 46,52 ----
      object = event.object
      style = self.alignmentStyle[object.alignment]
      styleEx = 0
!     newWidget = Win32Window(self._uiDriver, styleEx, 'STATIC', 
str(object.text), style,
                          object.Char__x*event.widgetWidth,
                          
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight, 
                          self.itemWidth,
Index: gnue/forms/src/uidrivers/win32/widgets/page.py
diff -c gnue/forms/src/uidrivers/win32/widgets/page.py:1.1 
gnue/forms/src/uidrivers/win32/widgets/page.py:1.2
*** gnue/forms/src/uidrivers/win32/widgets/page.py:1.1  Sun Feb 23 18:43:32 2003
--- gnue/forms/src/uidrivers/win32/widgets/page.py      Sun Mar  9 18:08:46 2003
***************
*** 30,36 ****
  import win32gui, win32con
  
  from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers
! from gnue.forms.uidrivers.win32.widgets._base import UIHelper, Win32Window
  
  #
  # UIPage
--- 30,36 ----
  import win32gui, win32con
  
  from gnue.forms.uidrivers.win32.common import _setDefaultEventHandlers
! from gnue.forms.uidrivers.win32.widgets._base import UIHelper
  
  #
  # UIPage




reply via email to

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