]> git.saurik.com Git - wxWidgets.git/commitdiff
Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
authorRobin Dunn <robin@alldunn.com>
Sat, 30 Jan 1999 07:31:33 +0000 (07:31 +0000)
committerRobin Dunn <robin@alldunn.com>
Sat, 30 Jan 1999 07:31:33 +0000 (07:31 +0000)
Various cleanup, tweaks, minor additions, etc. to maintain
compatibility with the current wxWindows.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

28 files changed:
utils/wxPython/README.txt
utils/wxPython/src/Makefile.pre.in
utils/wxPython/src/Setup [deleted file]
utils/wxPython/src/Setup.in
utils/wxPython/src/Setup.in.linux
utils/wxPython/src/Setup.in.solaris
utils/wxPython/src/_defs.i
utils/wxPython/src/_extras.py
utils/wxPython/src/controls2.i
utils/wxPython/src/gdi.i
utils/wxPython/src/helpers.cpp
utils/wxPython/src/makefile.nt
utils/wxPython/src/misc.i
utils/wxPython/src/msw/controls2.cpp
utils/wxPython/src/msw/controls2.py
utils/wxPython/src/msw/gdi.cpp
utils/wxPython/src/msw/misc.cpp
utils/wxPython/src/msw/stattool.cpp
utils/wxPython/src/msw/stattool.py
utils/wxPython/src/msw/windows2.cpp
utils/wxPython/src/msw/windows3.cpp [new file with mode: 0644]
utils/wxPython/src/msw/windows3.py [new file with mode: 0644]
utils/wxPython/src/msw/wx.cpp
utils/wxPython/src/msw/wx.py
utils/wxPython/src/stattool.i
utils/wxPython/src/windows3.i [new file with mode: 0644]
utils/wxPython/src/wx.i
utils/wxPython/tests/test4.py

index 6ab54cdad197a243f3bbf07299608b947c6f6f63..a43350f9a7ed6c2c5c60243e6a19684ce4810951 100644 (file)
@@ -42,6 +42,15 @@ application will cause problems.  However there is a plan to support
 this in the future.
 
 
+What's new in 0.5.3
+-------------------
+Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+
+Various cleanup, tweaks, minor additions, etc. to maintain
+compatibility with the current wxWindows.
+
+
+
 What's new in 0.5.0
 -------------------
 Changed the import semantics from "from wxPython import *" to "from
@@ -55,7 +64,7 @@ Made the events work for wxGrid.
 
 Added wxConfig.
 
-Added wxMiniFrame for wxGTK, (untested.)
+Added wxMiniFrame for wxGTK.
 
 Changed many of the args and return values that were pointers to gdi
 objects to references to reflect changes in the wxWindows API.
index 293791062c9c2f047324c8176caa357a1f2926ba..22a18a2af9be220b208de2361b28baf70067c2a3 100644 (file)
@@ -334,7 +334,7 @@ PYMODULES = $(GENCODEDIR)/wx.py        $(GENCODEDIR)/events.py    \
            $(GENCODEDIR)/controls.py  $(GENCODEDIR)/controls2.py \
             $(GENCODEDIR)/windows2.py  $(GENCODEDIR)/cmndlgs.py   \
             $(GENCODEDIR)/frames.py    $(GENCODEDIR)/stattool.py   \
-           $(GENCODEDIR)/utils.py    \
+           $(GENCODEDIR)/utils.py     $(GENCODEDIR)/windows3.py  \
            __init__.py
 
 
@@ -354,6 +354,7 @@ $(GENCODEDIR)/wx.cpp $(GENCODEDIR)/wx.py : wx.i my_typemaps.i _defs.i _extras.py
 # define some dependencies
 $(GENCODEDIR)/windows.cpp   $(GENCODEDIR)/windows.py   : windows.i    my_typemaps.i _defs.i
 $(GENCODEDIR)/windows2.cpp  $(GENCODEDIR)/windows2.py  : windows2.i   my_typemaps.i _defs.i
+$(GENCODEDIR)/windows3.cpp  $(GENCODEDIR)/windows3.py  : windows3.i   my_typemaps.i _defs.i
 $(GENCODEDIR)/events.cpp    $(GENCODEDIR)/events.py    : events.i     my_typemaps.i _defs.i
 $(GENCODEDIR)/misc.cpp      $(GENCODEDIR)/misc.py      : misc.i       my_typemaps.i _defs.i
 $(GENCODEDIR)/gdi.cpp       $(GENCODEDIR)/gdi.py       : gdi.i        my_typemaps.i _defs.i
@@ -373,7 +374,7 @@ wxInstall : sharedmods $(PYMODULES)
        if test ! -d $(TARGETDIR) ; then \
                mkdir $(TARGETDIR) ; else true ; fi
        if [ "$(SHAREDMODS)" != "" ]; then \
-               -chmod 755 $(SHAREDMODS); \
+                chmod 755 $(SHAREDMODS); \
                 cp $(SHAREDMODS) $(TARGETDIR); fi
        -for i in $(PYMODULES); do \
                cp $$i $(TARGETDIR); \
diff --git a/utils/wxPython/src/Setup b/utils/wxPython/src/Setup
deleted file mode 100644 (file)
index f009589..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-# This file gives the details of what is needed to build this extension
-# module so the Makefile can be created.
-
-###
-### This file should be created by configure.  Currently it is tweaked by hand.
-###
-
-*shared*
-
-CCC=g++
-WXWIN=~/wxWindows
-GENCODEDIR=gtk
-srcdir=$(GENCODEDIR)
-WX_CONFIG_CFLAGS=`wx-config --cflags`
-WX_CONFIG_LIBS=`wx-config --libs`
-
-# Depending on how your Python was built, you may have to set this
-# value to use the C++ driver to link with instead of the default
-# C driver.  For example:
-MY_LDSHARED=$(CCC) -shared $(WX_CONFIG_LIBS)
-
-# Same as above, but for statically linking Python and wxPython together,
-# in other words, if you comment out the *shared* above.  If this is the
-# case then you should ensure that the main() function is Python's, not
-# wxWindows'.  You can rebuild $(WXWIN)/src/gtk/app.cpp with NOMAIN defined
-# to force this...
-MY_LINKCC=$(CCC)
-
-
-## Pick one of these, or set your own.  This is where the
-## wxPython module should be installed.  It should be a
-## subdirectory named wxPython.
-#TARGETDIR=..
-#TARGETDIR=$(BINLIBDEST)/site-packages/wxPython
-TARGETDIR=$(BINLIBDEST)/wxPython
-
-
-wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
-       mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
-       frames.cpp stattool.cpp utils.cpp \
-       -I. $(WX_CONFIG_CFLAGS) -DSWIG_GLOBAL
-       
index 66f164a26417157deee68b498141cb70fadc4b23..079d0b8b031f799920ad2742aa0e43f084c8d66e 100644 (file)
@@ -5,7 +5,7 @@
 ### This file should be created by configure.  Currently it is tweaked by hand.
 ###
 
-#*shared*
+*shared*
 
 CCC=c++
 WXWIN=../../..
@@ -15,7 +15,7 @@ srcdir=$(GENCODEDIR)
 # Depending on how your Python was built, you may have to set this
 # value to use the C++ driver to link with instead of the default
 # C driver.  For example:
-#MY_LDSHARED=$(CCC) -shared
+MY_LDSHARED=$(CCC) -shared
 
 # Same as above, but for statically linking Python and wxPython together,
 # in other words, if you comment out the *shared* above.  If this is the
@@ -32,14 +32,13 @@ TARGETDIR=..
 #TARGETDIR=$(BINLIBDEST)/site-packages/wxPython
 
 
-wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
+wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
        mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
-       frames.cpp stattool.cpp utils.cpp \
+       frames.cpp stattool.cpp utils.cpp windows3.cpp \
        # CFLAGS
-       -I. -I$(WXWIN)/include -I/usr/local/lib/glib/include -I$(WXWIN)/src \
-       -I/usr/X/include -DSWIG_GLOBAL -D__WXGTK__ \
+       -I. -I$(WXWIN)/include -I/usr/lib/glib/include -I$(WXWIN)/src \
+       -I/usr/X11R6/include -DSWIG_GLOBAL -D__WXGTK__ \
        #-D__WXDEBUG__ \
        # LFLAGS
-       -L$(WXWIN)/lib/solaris2.6 -L/usr/X/lib \
-       -L/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.8.1 \
-       -lwx_gtk -lgtk -lgdk -lglib -lXext -lX11 -lstdc++ -lgcc
+       -L$(WXWIN)/lib/Linux -L/usr/X11R6/lib \
+       -lwx_gtk2 -lgtk -lgdk -lglib -lXext -lX11
index c5a39b3d64e34f7c2bde79e321c829f3b6532e03..079d0b8b031f799920ad2742aa0e43f084c8d66e 100644 (file)
@@ -34,11 +34,11 @@ TARGETDIR=..
 
 wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
        mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
-       frames.cpp stattool.cpp utils.cpp \
+       frames.cpp stattool.cpp utils.cpp windows3.cpp \
        # CFLAGS
        -I. -I$(WXWIN)/include -I/usr/lib/glib/include -I$(WXWIN)/src \
        -I/usr/X11R6/include -DSWIG_GLOBAL -D__WXGTK__ \
        #-D__WXDEBUG__ \
        # LFLAGS
        -L$(WXWIN)/lib/Linux -L/usr/X11R6/lib \
-       -lwx_gtk -lgtk -lgdk -lglib -lXext -lX11
+       -lwx_gtk2 -lgtk -lgdk -lglib -lXext -lX11
index 66f164a26417157deee68b498141cb70fadc4b23..d4c3d651afacb77c512eb58135f620d9b4b9c046 100644 (file)
@@ -34,7 +34,7 @@ TARGETDIR=..
 
 wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
        mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
-       frames.cpp stattool.cpp utils.cpp \
+       frames.cpp stattool.cpp utils.cpp windows3.cpp \
        # CFLAGS
        -I. -I$(WXWIN)/include -I/usr/local/lib/glib/include -I$(WXWIN)/src \
        -I/usr/X/include -DSWIG_GLOBAL -D__WXGTK__ \
@@ -42,4 +42,4 @@ wxc   wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
        # LFLAGS
        -L$(WXWIN)/lib/solaris2.6 -L/usr/X/lib \
        -L/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.8.1 \
-       -lwx_gtk -lgtk -lgdk -lglib -lXext -lX11 -lstdc++ -lgcc
+       -lwx_gtk2 -lgtk -lgdk -lglib -lXext -lX11 -lstdc++ -lgcc
index 1db1acc6ad1b3ee9135b7860931f16f78a1a7144..b6f1c1141b7ee25097c7b5f6f00a55d18298f301 100644 (file)
@@ -115,7 +115,7 @@ enum {
     wxMINOR_VERSION,
     wxRELEASE_NUMBER,
 
-    NOT_FOUND,
+    wxNOT_FOUND,
 
     wxVSCROLL,
     wxHSCROLL,
@@ -154,6 +154,7 @@ enum {
     wxDEFAULT_DIALOG_STYLE,
 
     wxFRAME_TOOL_WINDOW,
+    wxCLIP_CHILDREN,
 
     wxRETAINED,
     wxBACKINGSTORE,
@@ -264,12 +265,14 @@ enum {
     wxSIZE_AUTO,
     wxSIZE_USE_EXISTING,
     wxSIZE_ALLOW_MINUS_ONE,
+#ifndef __WXGTK__
     wxDF_TEXT,
     wxDF_BITMAP,
     wxDF_METAFILE,
     wxDF_DIB,
     wxDF_OEMTEXT,
     wxDF_FILENAME,
+#endif
     wxPORTRAIT,
     wxLANDSCAPE,
     wxID_OPEN,
@@ -693,6 +696,7 @@ enum wxEventType {
  wxEVT_COMMAND_TAB_SEL_CHANGING,
  wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED,
  wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING
+
 };
 
 
@@ -701,6 +705,12 @@ enum wxEventType {
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.10  1999/01/30 07:30:08  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.9  1998/12/15 20:41:13  RD
 // Changed the import semantics from "from wxPython import *" to "from
 // wxPython.wx import *"  This is for people who are worried about
index 0e160137d8c8347a3f334cffd02f4d711dc25a64..2c9749c0c81e56f017dcb57ef990ac95c7c943d6 100644 (file)
@@ -462,6 +462,20 @@ def EVT_GRID_LABEL_RCLICK(win, fn):
     win.Connect(-1, -1, wxEVT_GRID_LABEL_RCLICK, fn)
 
 
+# wxSashWindow
+def EVT_SASH_DRAGGED(win, id, func):
+    win.Connect(id, -1, wxEVT_SASH_DRAGGED, func)
+
+def EVT_SASH_DRAGGED_RANGE(win, id1, id2, func):
+    win.Connect(id1, id2, wxEVT_SASH_DRAGGED, func)
+
+def EVT_QUERY_LAYOUT_INFO(win, func):
+    win.Connect(-1, -1, wxEVT_EVT_QUERY_LAYOUT_INFO, func)
+
+def EVT_CALCULATE_LAYOUT(win, func):
+    win.Connect(-1, -1, wxEVT_EVT_CALCULATE_LAYOUT, func)
+
+
 
 
 #----------------------------------------------------------------------
@@ -490,9 +504,11 @@ wxNamedColor = wxNamedColour
 
 wxPyDefaultPosition.Set(-1,-1)
 wxPyDefaultSize.Set(-1,-1)
+
 # aliases so that C++ documentation applies:
 wxDefaultPosition = wxPyDefaultPosition
-wxDefaultSize = wxPyDefaultSize
+wxDefaultSize     = wxPyDefaultSize
+
 #----------------------------------------------------------------------
 
 ## class wxPyStdOutWindow(wxFrame):
@@ -560,6 +576,12 @@ class wxApp(wxPyApp):
 #----------------------------------------------------------------------------
 #
 # $Log$
+# Revision 1.9  1999/01/30 07:30:09  RD
+# Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+#
+# Various cleanup, tweaks, minor additions, etc. to maintain
+# compatibility with the current wxWindows.
+#
 # Revision 1.8  1999/01/29 21:13:42  HH
 # Added aliases for wxDefaultPosition and wxDefaultSize (from wxPy..) in _extras,
 # so that C++ documentation applies.
index bd3ea2da4e7a39ad470676f3b762226837fb4081..17906593c008987651e5e67bef755753d94f4927 100644 (file)
@@ -244,6 +244,7 @@ public:
     void SetItemImage(const wxTreeItemId& item, int image);
     void SetItemSelectedImage(const wxTreeItemId& item, int image);
     void SetItemData(const wxTreeItemId& item, wxTreeItemData *data);
+    void SetItemHasChildren(const wxTreeItemId& item, bool hasChildren = TRUE);
 
     bool IsVisible(const wxTreeItemId& item);
     bool ItemHasChildren(const wxTreeItemId& item);
@@ -281,6 +282,7 @@ public:
                             wxTreeItemData *data = NULL);
 
     void Delete(const wxTreeItemId& item);
+    void DeleteChildren(const wxTreeItemId& item);
     void DeleteAllItems();
 
     void Expand(const wxTreeItemId& item);
@@ -369,7 +371,14 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.14  1999/01/30 07:30:10  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.13  1998/12/17 14:07:34  RR
+//
 //   Removed minor differences between wxMSW and wxGTK
 //
 // Revision 1.12  1998/12/16 22:10:52  RD
index ee3afcb66014b6925704b899b207270b393c54f8..88c48fe92de3ed26ea107c61d2bf50d880216194 100644 (file)
@@ -17,7 +17,7 @@
 #include "helpers.h"
 #include <wx/metafile.h>
 #ifndef __WXMSW__
-#include <wx/postscrp.h>
+#include <wx/dcps.h>
 #endif
 %}
 
@@ -147,7 +147,9 @@ public:
 
     wxString GetFaceName();
     int GetFamily();
+#ifdef __WXMSW__
     int GetFontId();
+#endif
     int GetPointSize();
     int GetStyle();
     bool GetUnderlined();
@@ -217,7 +219,7 @@ public:
     void SetJoin(int join_style);
     void SetStyle(int style);
     void SetWidth(int width);
-    
+
 #ifdef __WXMSW__
             // **** This one needs to return a list of ints (wxDash)
     int GetDashes(wxDash **dashes);
@@ -502,7 +504,14 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.12  1999/01/30 07:30:11  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.11  1998/12/18 15:49:05  RR
+//
 //   wxClipboard now serves the primary selection as well
 //   wxPython fixes
 //   warning mesages
index 834319f0376cc3531539120102437ffedaa859a2..2f8867bed4f6e6efc851a27d38a6221b7caf5aad 100644 (file)
 #undef LoadAccelerators
 #endif
 
+#ifdef __WXGTK__
+#include "gtk/gtk.h"
+#endif
+
 #undef DEBUG
 #include <Python.h>
 #include "helpers.h"
@@ -71,7 +75,6 @@ int  wxPyApp::MainLoop(void) {
 void wxPyApp::AfterMainLoop(void) {
     // more stuff from wxEntry...
 
-#ifdef __WXMSW__
     if (wxPythonApp->GetTopWindow()) {
         // Forcibly delete the window.
         if (wxPythonApp->GetTopWindow()->IsKindOf(CLASSINFO(wxFrame)) ||
@@ -85,18 +88,12 @@ void wxPyApp::AfterMainLoop(void) {
             wxPythonApp->SetTopWindow(NULL);
         }
     }
-#endif
 #ifdef __WXGTK__
       wxPythonApp->DeletePendingObjects();
 #endif
 
     wxPythonApp->OnExit();
-#ifdef __WXMSW__
     wxApp::CleanUp();
-#endif
-#ifdef __WXGTK__
-    wxApp::CommonCleanUp();
-#endif
 //    delete wxPythonApp;
 }
 
@@ -120,9 +117,8 @@ void __wxPreStart()
 #ifdef __WXMSW__
     wxApp::Initialize();
 #endif
-#ifdef __WXGTK__
-    wxClassInfo::InitializeClasses();
 
+#ifdef __WXGTK__
     PyObject* sysargv = PySys_GetObject("argv");
     int argc = PyList_Size(sysargv);
     char** argv = new char*[argc+1];
@@ -131,10 +127,11 @@ void __wxPreStart()
         argv[x] = PyString_AsString(PyList_GetItem(sysargv, x));
     argv[argc] = NULL;
 
+    gtk_set_locale();
     gtk_init( &argc, &argv );
     delete [] argv;
 
-    wxApp::CommonInit();
+    wxApp::Initialize();     // may return FALSE. Should we check?
 #endif
 
 }
@@ -183,12 +180,7 @@ PyObject* __wxStart(PyObject* /* self */, PyObject* args)
     if (! bResult) {
         wxPythonApp->DeletePendingObjects();
         wxPythonApp->OnExit();
-#ifdef __WXMSW__
         wxApp::CleanUp();
-#endif
-#ifdef __WXGTK__
-        wxApp::CommonCleanUp();
-#endif
         PyErr_SetString(PyExc_SystemExit, "OnInit returned false, exiting...");
         return NULL;
     }
@@ -590,7 +582,14 @@ wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source) {
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.17  1999/01/30 07:30:12  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.16  1998/12/17 14:07:39  RR
+//
 //   Removed minor differences between wxMSW and wxGTK
 //
 // Revision 1.15  1998/12/15 20:41:19  RD
index 5bdbf2fb7fb6bd1834f959bcb6ffa97ab3182ede..a6f514d091621088efd6841bcd39e610917a1b20 100644 (file)
@@ -56,7 +56,7 @@ TARGET = wxc
 OBJECTS = wx.obj         helpers.obj    windows.obj    events.obj     \
          misc.obj       gdi.obj        mdi.obj        controls.obj   \
          controls2.obj  windows2.obj   cmndlgs.obj    stattool.obj   \
-         frames.obj \
+         frames.obj     windows3.obj \
 !if "$(SEPARATE)" == "0"
          utils.obj
 !else
@@ -72,7 +72,8 @@ PYMODULES = $(TARGETDIR)\wx.py        $(TARGETDIR)\events.py    \
            $(TARGETDIR)\controls.py  $(TARGETDIR)\controls2.py \
             $(TARGETDIR)\windows2.py  $(TARGETDIR)\cmndlgs.py   \
            $(TARGETDIR)\stattool.py  $(TARGETDIR)\frames.py    \
-           $(TARGETDIR)\utils.py     $(TARGETDIR)\__init__.py
+           $(TARGETDIR)\utils.py     $(TARGETDIR)\windows3.py  \
+           $(TARGETDIR)\__init__.py
 
 
 #----------------------------------------------------------------------
@@ -204,6 +205,7 @@ $(GENCODEDIR)\wx.cpp $(GENCODEDIR)\wx.py : wx.i my_typemaps.i _defs.i _extras.py
 # will write the shadow file to the right directory.
 $(GENCODEDIR)/windows.cpp   $(GENCODEDIR)/windows.py   : windows.i    my_typemaps.i _defs.i
 $(GENCODEDIR)/windows2.cpp  $(GENCODEDIR)/windows2.py  : windows2.i   my_typemaps.i _defs.i
+$(GENCODEDIR)/windows3.cpp  $(GENCODEDIR)/windows3.py  : windows3.i   my_typemaps.i _defs.i
 $(GENCODEDIR)/events.cpp    $(GENCODEDIR)/events.py    : events.i     my_typemaps.i _defs.i
 $(GENCODEDIR)/misc.cpp      $(GENCODEDIR)/misc.py      : misc.i       my_typemaps.i _defs.i
 $(GENCODEDIR)/gdi.cpp       $(GENCODEDIR)/gdi.py       : gdi.i        my_typemaps.i _defs.i
@@ -225,6 +227,7 @@ $(GENCODEDIR)/utils.cpp    $(GENCODEDIR)/utils.py    : utils.i     my_typemaps.i
 $(TARGETDIR)\wx.py        : $(GENCODEDIR)\wx.py
 $(TARGETDIR)\windows.py   : $(GENCODEDIR)\windows.py
 $(TARGETDIR)\windows2.py  : $(GENCODEDIR)\windows2.py
+$(TARGETDIR)\windows3.py  : $(GENCODEDIR)\windows3.py
 $(TARGETDIR)\events.py    : $(GENCODEDIR)\events.py
 $(TARGETDIR)\misc.py      : $(GENCODEDIR)\misc.py
 $(TARGETDIR)\gdi.py       : $(GENCODEDIR)\gdi.py
@@ -238,10 +241,35 @@ $(TARGETDIR)\utils.py     : $(GENCODEDIR)\utils.py
 $(TARGETDIR)\__init__.py  : __init__.py
 
 
+SOURCES = $(GENCODEDIR)\wx.cpp        $(GENCODEDIR)\wx.py       \
+         $(GENCODEDIR)/windows.cpp   $(GENCODEDIR)/windows.py  \
+         $(GENCODEDIR)/windows2.cpp  $(GENCODEDIR)/windows2.py \
+         $(GENCODEDIR)/windows3.cpp  $(GENCODEDIR)/windows3.py \
+         $(GENCODEDIR)/events.cpp    $(GENCODEDIR)/events.py   \
+         $(GENCODEDIR)/misc.cpp      $(GENCODEDIR)/misc.py     \
+         $(GENCODEDIR)/gdi.cpp       $(GENCODEDIR)/gdi.py      \
+         $(GENCODEDIR)/mdi.cpp       $(GENCODEDIR)/mdi.py      \
+         $(GENCODEDIR)/controls.cpp  $(GENCODEDIR)/controls.py \
+         $(GENCODEDIR)/controls2.cpp $(GENCODEDIR)/controls2.py\
+         $(GENCODEDIR)/cmndlgs.cpp   $(GENCODEDIR)/cmndlgs.py  \
+         $(GENCODEDIR)/stattool.cpp  $(GENCODEDIR)/stattool.py \
+         $(GENCODEDIR)/frames.cpp    $(GENCODEDIR)/frames.py   \
+         $(GENCODEDIR)/utils.cpp     $(GENCODEDIR)/utils.py    \
+
+
+sources : $(SOURCES)
+
 #------------------------------------------------------------------------
 #
 # $Log$
+# Revision 1.9  1999/01/30 07:30:13  RD
+# Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+#
+# Various cleanup, tweaks, minor additions, etc. to maintain
+# compatibility with the current wxWindows.
+#
 # Revision 1.8  1998/12/21 19:58:06  RD
+#
 # Now compiles with /GX- on MSW.
 #
 # Revision 1.7  1998/12/15 20:41:20  RD
index 652fe6deac5f6ab96a7470fcd57f363488a70492..cededae34a01c1d543656419ad0a996267022da4 100644 (file)
@@ -115,7 +115,7 @@ public:
 //---------------------------------------------------------------------------
 // Dialog Functions
 
-char* wxFileSelector(char* message,
+wxString wxFileSelector(char* message,
                         char* default_path = NULL,
                         char* default_filename = NULL,
                         char* default_extension = NULL,
@@ -251,9 +251,9 @@ public:
 
     void Above(wxWindow *otherWin, int margin=0);
     void Absolute(int value);
-    void AsIs(void);
+    void AsIs();
     void Below(wxWindow *otherWin, int margin=0);
-    void Unconstrained(void);
+    void Unconstrained();
     void LeftOf(wxWindow *otherWin, int margin=0);
     void PercentOf(wxWindow *otherWin, wxEdge edge, int percent);
     void RightOf(wxWindow *otherWin, int margin=0);
@@ -360,7 +360,14 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.10  1999/01/30 07:30:14  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.9  1998/12/16 22:10:55  RD
+//
 // Tweaks needed to be able to build wxPython with wxGTK.
 //
 // Revision 1.8  1998/12/15 20:41:22  RD
index 592585147b536e47748f4ec463678c14e444ec33..9337a9ab191eab23370da03c0f42ed65e5278706 100644 (file)
@@ -2728,6 +2728,38 @@ static PyObject *_wrap_wxTreeCtrl_SetItemData(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
+#define wxTreeCtrl_SetItemHasChildren(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetItemHasChildren(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxTreeCtrl_SetItemHasChildren(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxTreeCtrl * _arg0;
+    wxTreeItemId * _arg1;
+    bool  _arg2 = (1);
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    int tempbool2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss|i:wxTreeCtrl_SetItemHasChildren",&_argc0,&_argc1,&tempbool2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeCtrl_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeItemId_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+    wxTreeCtrl_SetItemHasChildren(_arg0,*_arg1,_arg2);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 #define wxTreeCtrl_IsVisible(_swigobj,_swigarg0)  (_swigobj->IsVisible(_swigarg0))
 static PyObject *_wrap_wxTreeCtrl_IsVisible(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -3399,6 +3431,35 @@ static PyObject *_wrap_wxTreeCtrl_Delete(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
+#define wxTreeCtrl_DeleteChildren(_swigobj,_swigarg0)  (_swigobj->DeleteChildren(_swigarg0))
+static PyObject *_wrap_wxTreeCtrl_DeleteChildren(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxTreeCtrl * _arg0;
+    wxTreeItemId * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxTreeCtrl_DeleteChildren",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_DeleteChildren. Expected _wxTreeCtrl_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_DeleteChildren. Expected _wxTreeItemId_p.");
+        return NULL;
+        }
+    }
+    wxTreeCtrl_DeleteChildren(_arg0,*_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 #define wxTreeCtrl_DeleteAllItems(_swigobj)  (_swigobj->DeleteAllItems())
 static PyObject *_wrap_wxTreeCtrl_DeleteAllItems(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -3838,6 +3899,7 @@ static PyMethodDef controls2cMethods[] = {
         { "wxTreeCtrl_Collapse", _wrap_wxTreeCtrl_Collapse, 1 },
         { "wxTreeCtrl_Expand", _wrap_wxTreeCtrl_Expand, 1 },
         { "wxTreeCtrl_DeleteAllItems", _wrap_wxTreeCtrl_DeleteAllItems, 1 },
+        { "wxTreeCtrl_DeleteChildren", _wrap_wxTreeCtrl_DeleteChildren, 1 },
         { "wxTreeCtrl_Delete", _wrap_wxTreeCtrl_Delete, 1 },
         { "wxTreeCtrl_AppendItem", _wrap_wxTreeCtrl_AppendItem, 1 },
         { "wxTreeCtrl_InsertItem", _wrap_wxTreeCtrl_InsertItem, 1 },
@@ -3857,6 +3919,7 @@ static PyMethodDef controls2cMethods[] = {
         { "wxTreeCtrl_IsExpanded", _wrap_wxTreeCtrl_IsExpanded, 1 },
         { "wxTreeCtrl_ItemHasChildren", _wrap_wxTreeCtrl_ItemHasChildren, 1 },
         { "wxTreeCtrl_IsVisible", _wrap_wxTreeCtrl_IsVisible, 1 },
+        { "wxTreeCtrl_SetItemHasChildren", _wrap_wxTreeCtrl_SetItemHasChildren, 1 },
         { "wxTreeCtrl_SetItemData", _wrap_wxTreeCtrl_SetItemData, 1 },
         { "wxTreeCtrl_SetItemSelectedImage", _wrap_wxTreeCtrl_SetItemSelectedImage, 1 },
         { "wxTreeCtrl_SetItemImage", _wrap_wxTreeCtrl_SetItemImage, 1 },
index 2ec2d3f5161df70cac70669e8e2cdfcf39a5b537..1c90b543c50015a15ffb56d199002bd36b55703d 100644 (file)
@@ -446,6 +446,9 @@ class wxTreeCtrlPtr(wxControlPtr):
     def SetItemData(self,arg0,arg1):
         val = controls2c.wxTreeCtrl_SetItemData(self.this,arg0.this,arg1.this)
         return val
+    def SetItemHasChildren(self,arg0,*args):
+        val = apply(controls2c.wxTreeCtrl_SetItemHasChildren,(self.this,arg0.this,)+args)
+        return val
     def IsVisible(self,arg0):
         val = controls2c.wxTreeCtrl_IsVisible(self.this,arg0.this)
         return val
@@ -543,6 +546,9 @@ class wxTreeCtrlPtr(wxControlPtr):
     def Delete(self,arg0):
         val = controls2c.wxTreeCtrl_Delete(self.this,arg0.this)
         return val
+    def DeleteChildren(self,arg0):
+        val = controls2c.wxTreeCtrl_DeleteChildren(self.this,arg0.this)
+        return val
     def DeleteAllItems(self):
         val = controls2c.wxTreeCtrl_DeleteAllItems(self.this)
         return val
index 0d9db6b569b40e262fd68c39ba3e632eff7325f6..b0308a0834da0ff6b97680983a6b534eb5514d2e 100644 (file)
@@ -56,7 +56,7 @@ extern PyObject *SWIG_newvarlink(void);
 #include "helpers.h"
 #include <wx/metafile.h>
 #ifndef __WXMSW__
-#include <wx/postscrp.h>
+#include <wx/dcps.h>
 #endif
 
 static PyObject* l_output_helper(PyObject* target, PyObject* o) {
index 47344d4033d163789fb7f95be66412a2b5f49ca5..c8acb64549eb39e1d4ab09e6e91f8c4eb8c92f0d 100644 (file)
@@ -122,7 +122,7 @@ static char* wxStringErrorMsg = "string type is required for parameter";
     }
 static PyObject *_wrap_wxFileSelector(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    char * _result;
+    wxString * _result;
     char * _arg0;
     char * _arg1 = NULL;
     char * _arg2 = NULL;
@@ -143,8 +143,13 @@ static PyObject *_wrap_wxFileSelector(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (char *)wxFileSelector(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8);
-    _resultobj = Py_BuildValue("s", _result);
+    _result = new wxString (wxFileSelector(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8));
+{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
     return _resultobj;
 }
 
index f8400f34214fee068410cc7c49b7d0164d1c4911..c2ad2e2fc07aa6ee6904b21e9c314fe84c3367c2 100644 (file)
@@ -1033,6 +1033,70 @@ static PyObject *_wrap_wxToolBar_AddTool(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
+static wxToolBarTool * wxToolBar_AddSimpleTool(wxToolBar *self,int  toolIndex,const wxBitmap & bitmap,const wxString & shortHelpString,const wxString & longHelpString) {
+            return self->AddTool(toolIndex, bitmap, wxNullBitmap,
+                                 FALSE, -1, -1, NULL,
+                                 shortHelpString, longHelpString);
+        }
+static PyObject *_wrap_wxToolBar_AddSimpleTool(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxToolBarTool * _result;
+    wxToolBar * _arg0;
+    int  _arg1;
+    wxBitmap * _arg2;
+    wxString * _arg3 = &wxPyEmptyStr;
+    wxString * _arg4 = &wxPyEmptyStr;
+    char * _argc0 = 0;
+    char * _argc2 = 0;
+    PyObject * _obj3 = 0;
+    PyObject * _obj4 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sis|OO:wxToolBar_AddSimpleTool",&_argc0,&_arg1,&_argc2,&_obj3,&_obj4)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxToolBar_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxToolBar_AddSimpleTool. Expected _wxToolBar_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxBitmap_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxToolBar_AddSimpleTool. Expected _wxBitmap_p.");
+        return NULL;
+        }
+    }
+    if (_obj3)
+{
+    if (!PyString_Check(_obj3)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg3 = new wxString(PyString_AsString(_obj3));
+}
+    if (_obj4)
+{
+    if (!PyString_Check(_obj4)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg4 = new wxString(PyString_AsString(_obj4));
+}
+    _result = (wxToolBarTool *)wxToolBar_AddSimpleTool(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
+    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    if (_obj3)
+        delete _arg3;
+}
+{
+    if (_obj4)
+        delete _arg4;
+}
+    return _resultobj;
+}
+
 #define wxToolBar_EnableTool(_swigobj,_swigarg0,_swigarg1)  (_swigobj->EnableTool(_swigarg0,_swigarg1))
 static PyObject *_wrap_wxToolBar_EnableTool(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -1530,6 +1594,7 @@ static PyMethodDef stattoolcMethods[] = {
         { "wxToolBar_GetToolSize", _wrap_wxToolBar_GetToolSize, 1 },
         { "wxToolBar_FindToolForPosition", _wrap_wxToolBar_FindToolForPosition, 1 },
         { "wxToolBar_EnableTool", _wrap_wxToolBar_EnableTool, 1 },
+        { "wxToolBar_AddSimpleTool", _wrap_wxToolBar_AddSimpleTool, 1 },
         { "wxToolBar_AddTool", _wrap_wxToolBar_AddTool, 1 },
         { "wxToolBar_AddSeparator", _wrap_wxToolBar_AddSeparator, 1 },
         { "new_wxToolBar", _wrap_new_wxToolBar, 1 },
index 3d2b88649a2361a529f2f36d83b9158d9eeb9265..364ce8dda22c36cc41f652996e5f5556db33eb0e 100644 (file)
@@ -186,6 +186,10 @@ class wxToolBarPtr(wxControlPtr):
         val = apply(stattoolc.wxToolBar_AddTool,(self.this,arg0,arg1.this,)+args)
         val = wxToolBarToolPtr(val)
         return val
+    def AddSimpleTool(self,arg0,arg1,*args):
+        val = apply(stattoolc.wxToolBar_AddSimpleTool,(self.this,arg0,arg1.this,)+args)
+        val = wxToolBarToolPtr(val)
+        return val
     def EnableTool(self,arg0,arg1):
         val = stattoolc.wxToolBar_EnableTool(self.this,arg0,arg1)
         return val
index 10f6fbe8a7e52b01ef75fa294f664e9c9066e18e..e28bd783c6a358a54653c2b59d4ae2b8b804a8cb 100644 (file)
@@ -2889,7 +2889,7 @@ static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args) {
     wxWindowID  _arg1;
     wxPoint * _arg2 = &wxPyDefaultPosition;
     wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = (wxSP_3D)|wxCLIP_CHILDREN;
+    long  _arg4 = (wxSP_3D)|(wxCLIP_CHILDREN);
     char * _arg5 = "splitterWindow";
     char * _argc0 = 0;
     char * _argc2 = 0;
diff --git a/utils/wxPython/src/msw/windows3.cpp b/utils/wxPython/src/msw/windows3.cpp
new file mode 100644 (file)
index 0000000..5aaa7a7
--- /dev/null
@@ -0,0 +1,1688 @@
+/*
+ * FILE : msw/windows3.cpp
+ * 
+ * This file was automatically generated by :
+ * Simplified Wrapper and Interface Generator (SWIG)
+ * Version 1.1 (Patch 5)
+ * 
+ * Portions Copyright (c) 1995-1998
+ * The University of Utah and The Regents of the University of California.
+ * Permission is granted to distribute this file in any manner provided
+ * this notice remains intact.
+ * 
+ * Do not make changes to this file--changes will be lost!
+ *
+ */
+
+
+#define SWIGCODE
+/* Implementation : PYTHON */
+
+#define SWIGPYTHON
+#include <string.h>
+#include <stdlib.h>
+/* Definitions for Windows/Unix exporting */
+#if defined(__WIN32__)
+#   if defined(_MSC_VER)
+#      define SWIGEXPORT(a,b) __declspec(dllexport) a b
+#   else
+#      if defined(__BORLANDC__)
+#          define SWIGEXPORT(a,b) a _export b
+#      else
+#          define SWIGEXPORT(a,b) a b
+#      endif
+#   endif
+#else
+#   define SWIGEXPORT(a,b) a b
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include "Python.h"
+extern void SWIG_MakePtr(char *, void *, char *);
+extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
+extern char *SWIG_GetPtr(char *, void **, char *);
+extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
+extern PyObject *SWIG_newvarlink(void);
+#ifdef __cplusplus
+}
+#endif
+
+#define SWIG_init    initwindows3c
+
+#define SWIG_name    "windows3c"
+
+#include "helpers.h"
+#include <wx/sashwin.h>
+#include <wx/laywin.h>
+
+static PyObject* l_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    if (!target) {
+        target = o;
+    } else if (target == Py_None) {
+        Py_DECREF(Py_None);
+        target = o;
+    } else {
+        if (!PyList_Check(target)) {
+            o2 = target;
+            target = PyList_New(0);
+            PyList_Append(target, o2);
+           Py_XDECREF(o2);
+        }
+        PyList_Append(target,o);
+       Py_XDECREF(o);
+    }
+    return target;
+}
+
+static PyObject* t_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    PyObject*   o3;
+
+    if (!target) {
+        target = o;
+    } else if (target == Py_None) {
+        Py_DECREF(Py_None);
+        target = o;
+    } else {
+        if (!PyTuple_Check(target)) {
+            o2 = target;
+            target = PyTuple_New(1);
+            PyTuple_SetItem(target, 0, o2);
+        }
+        o3 = PyTuple_New(1);
+        PyTuple_SetItem(o3, 0, o);
+
+        o2 = target;
+        target = PySequence_Concat(o2, o3);
+        Py_DECREF(o2);
+        Py_DECREF(o3);
+    }
+    return target;
+}
+
+
+extern byte* byte_LIST_helper(PyObject* source);
+extern int* int_LIST_helper(PyObject* source);
+extern long* long_LIST_helper(PyObject* source);
+extern char** string_LIST_helper(PyObject* source);
+extern wxPoint* wxPoint_LIST_helper(PyObject* source);
+extern wxBitmap** wxBitmap_LIST_helper(PyObject* source);
+extern wxString* wxString_LIST_helper(PyObject* source);
+extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
+
+
+static char* wxStringErrorMsg = "string type is required for parameter";
+static void *SwigwxSashEventTowxCommandEvent(void *ptr) {
+    wxSashEvent *src;
+    wxCommandEvent *dest;
+    src = (wxSashEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxSashEventTowxEvent(void *ptr) {
+    wxSashEvent *src;
+    wxEvent *dest;
+    src = (wxSashEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxSashEvent_SetEdge(_swigobj,_swigarg0)  (_swigobj->SetEdge(_swigarg0))
+static PyObject *_wrap_wxSashEvent_SetEdge(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashEvent * _arg0;
+    wxSashEdgePosition  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashEvent_SetEdge",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_SetEdge. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    wxSashEvent_SetEdge(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashEvent_GetEdge(_swigobj)  (_swigobj->GetEdge())
+static PyObject *_wrap_wxSashEvent_GetEdge(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashEdgePosition  _result;
+    wxSashEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashEvent_GetEdge",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_GetEdge. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (wxSashEdgePosition )wxSashEvent_GetEdge(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashEvent_SetDragRect(_swigobj,_swigarg0)  (_swigobj->SetDragRect(_swigarg0))
+static PyObject *_wrap_wxSashEvent_SetDragRect(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashEvent * _arg0;
+    wxRect * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxSashEvent_SetDragRect",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_SetDragRect. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxRect_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSashEvent_SetDragRect. Expected _wxRect_p.");
+        return NULL;
+        }
+    }
+    wxSashEvent_SetDragRect(_arg0,*_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashEvent_GetDragRect(_swigobj)  (_swigobj->GetDragRect())
+static PyObject *_wrap_wxSashEvent_GetDragRect(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxRect * _result;
+    wxSashEvent * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashEvent_GetDragRect",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_GetDragRect. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    _result = new wxRect (wxSashEvent_GetDragRect(_arg0));
+    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxSashEvent_SetDragStatus(_swigobj,_swigarg0)  (_swigobj->SetDragStatus(_swigarg0))
+static PyObject *_wrap_wxSashEvent_SetDragStatus(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashEvent * _arg0;
+    wxSashDragStatus  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashEvent_SetDragStatus",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_SetDragStatus. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    wxSashEvent_SetDragStatus(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashEvent_GetDragStatus(_swigobj)  (_swigobj->GetDragStatus())
+static PyObject *_wrap_wxSashEvent_GetDragStatus(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashDragStatus  _result;
+    wxSashEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashEvent_GetDragStatus",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashEvent_GetDragStatus. Expected _wxSashEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (wxSashDragStatus )wxSashEvent_GetDragStatus(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static void *SwigwxSashWindowTowxWindow(void *ptr) {
+    wxSashWindow *src;
+    wxWindow *dest;
+    src = (wxSashWindow *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxSashWindowTowxEvtHandler(void *ptr) {
+    wxSashWindow *src;
+    wxEvtHandler *dest;
+    src = (wxSashWindow *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxSashWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxSashWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxSashWindow(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1;
+    wxPoint * _arg2 = &wxPyDefaultPosition;
+    wxSize * _arg3 = &wxPyDefaultSize;
+    long  _arg4 = (wxCLIP_CHILDREN)|(wxSW_3D);
+    char * _arg5 = "sashWindow";
+    char * _argc0 = 0;
+    char * _argc2 = 0;
+    char * _argc3 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si|ssls:new_wxSashWindow",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxSashWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxSashWindow. Expected _wxPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxSashWindow. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+    _result = (wxSashWindow *)new_wxSashWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashWindow_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetSashVisible(_swigobj,_swigarg0)  (_swigobj->GetSashVisible(_swigarg0))
+static PyObject *_wrap_wxSashWindow_GetSashVisible(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxSashWindow * _arg0;
+    wxSashEdgePosition  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_GetSashVisible",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetSashVisible. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (bool )wxSashWindow_GetSashVisible(_arg0,_arg1);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetDefaultBorderSize(_swigobj)  (_swigobj->GetDefaultBorderSize())
+static PyObject *_wrap_wxSashWindow_GetDefaultBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetDefaultBorderSize",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetDefaultBorderSize. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetDefaultBorderSize(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetEdgeMargin(_swigobj,_swigarg0)  (_swigobj->GetEdgeMargin(_swigarg0))
+static PyObject *_wrap_wxSashWindow_GetEdgeMargin(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    wxSashEdgePosition  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_GetEdgeMargin",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetEdgeMargin. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetEdgeMargin(_arg0,_arg1);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetExtraBorderSize(_swigobj)  (_swigobj->GetExtraBorderSize())
+static PyObject *_wrap_wxSashWindow_GetExtraBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetExtraBorderSize",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetExtraBorderSize. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetExtraBorderSize(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetMaximumSizeX(_swigobj)  (_swigobj->GetMaximumSizeX())
+static PyObject *_wrap_wxSashWindow_GetMaximumSizeX(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetMaximumSizeX",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetMaximumSizeX. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetMaximumSizeX(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetMaximumSizeY(_swigobj)  (_swigobj->GetMaximumSizeY())
+static PyObject *_wrap_wxSashWindow_GetMaximumSizeY(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetMaximumSizeY",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetMaximumSizeY. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetMaximumSizeY(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetMinimumSizeX(_swigobj)  (_swigobj->GetMinimumSizeX())
+static PyObject *_wrap_wxSashWindow_GetMinimumSizeX(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetMinimumSizeX",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetMinimumSizeX. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetMinimumSizeX(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_GetMinimumSizeY(_swigobj)  (_swigobj->GetMinimumSizeY())
+static PyObject *_wrap_wxSashWindow_GetMinimumSizeY(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSashWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashWindow_GetMinimumSizeY",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_GetMinimumSizeY. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxSashWindow_GetMinimumSizeY(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_HasBorder(_swigobj,_swigarg0)  (_swigobj->HasBorder(_swigarg0))
+static PyObject *_wrap_wxSashWindow_HasBorder(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxSashWindow * _arg0;
+    wxSashEdgePosition  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_HasBorder",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_HasBorder. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (bool )wxSashWindow_HasBorder(_arg0,_arg1);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashWindow_SetDefaultBorderSize(_swigobj,_swigarg0)  (_swigobj->SetDefaultBorderSize(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetDefaultBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetDefaultBorderSize",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetDefaultBorderSize. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetDefaultBorderSize(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetExtraBorderSize(_swigobj,_swigarg0)  (_swigobj->SetExtraBorderSize(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetExtraBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetExtraBorderSize",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetExtraBorderSize. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetExtraBorderSize(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetMaximumSizeX(_swigobj,_swigarg0)  (_swigobj->SetMaximumSizeX(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetMaximumSizeX(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetMaximumSizeX",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetMaximumSizeX. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetMaximumSizeX(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetMaximumSizeY(_swigobj,_swigarg0)  (_swigobj->SetMaximumSizeY(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetMaximumSizeY(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetMaximumSizeY",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetMaximumSizeY. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetMaximumSizeY(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetMinimumSizeX(_swigobj,_swigarg0)  (_swigobj->SetMinimumSizeX(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetMinimumSizeX(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetMinimumSizeX",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetMinimumSizeX. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetMinimumSizeX(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetMinimumSizeY(_swigobj,_swigarg0)  (_swigobj->SetMinimumSizeY(_swigarg0))
+static PyObject *_wrap_wxSashWindow_SetMinimumSizeY(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashWindow_SetMinimumSizeY",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetMinimumSizeY. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashWindow_SetMinimumSizeY(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetSashVisible(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetSashVisible(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxSashWindow_SetSashVisible(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    wxSashEdgePosition  _arg1;
+    bool  _arg2;
+    char * _argc0 = 0;
+    int tempbool2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxSashWindow_SetSashVisible",&_argc0,&_arg1,&tempbool2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetSashVisible. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+    wxSashWindow_SetSashVisible(_arg0,_arg1,_arg2);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashWindow_SetSashBorder(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetSashBorder(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxSashWindow_SetSashBorder(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashWindow * _arg0;
+    wxSashEdgePosition  _arg1;
+    bool  _arg2;
+    char * _argc0 = 0;
+    int tempbool2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxSashWindow_SetSashBorder",&_argc0,&_arg1,&tempbool2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashWindow_SetSashBorder. Expected _wxSashWindow_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+    wxSashWindow_SetSashBorder(_arg0,_arg1,_arg2);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxQueryLayoutInfoEventTowxEvent(void *ptr) {
+    wxQueryLayoutInfoEvent *src;
+    wxEvent *dest;
+    src = (wxQueryLayoutInfoEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxQueryLayoutInfoEvent_SetRequestedLength(_swigobj,_swigarg0)  (_swigobj->SetRequestedLength(_swigarg0))
+static PyObject *_wrap_wxQueryLayoutInfoEvent_SetRequestedLength(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxQueryLayoutInfoEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxQueryLayoutInfoEvent_SetRequestedLength",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_SetRequestedLength. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    wxQueryLayoutInfoEvent_SetRequestedLength(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_GetRequestedLength(_swigobj)  (_swigobj->GetRequestedLength())
+static PyObject *_wrap_wxQueryLayoutInfoEvent_GetRequestedLength(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxQueryLayoutInfoEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxQueryLayoutInfoEvent_GetRequestedLength",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_GetRequestedLength. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxQueryLayoutInfoEvent_GetRequestedLength(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_SetFlags(_swigobj,_swigarg0)  (_swigobj->SetFlags(_swigarg0))
+static PyObject *_wrap_wxQueryLayoutInfoEvent_SetFlags(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxQueryLayoutInfoEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxQueryLayoutInfoEvent_SetFlags",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_SetFlags. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    wxQueryLayoutInfoEvent_SetFlags(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_GetFlags(_swigobj)  (_swigobj->GetFlags())
+static PyObject *_wrap_wxQueryLayoutInfoEvent_GetFlags(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxQueryLayoutInfoEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxQueryLayoutInfoEvent_GetFlags",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_GetFlags. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxQueryLayoutInfoEvent_GetFlags(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_SetSize(_swigobj,_swigarg0)  (_swigobj->SetSize(_swigarg0))
+static PyObject *_wrap_wxQueryLayoutInfoEvent_SetSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxQueryLayoutInfoEvent * _arg0;
+    wxSize * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxQueryLayoutInfoEvent_SetSize",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_SetSize. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxQueryLayoutInfoEvent_SetSize. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+    wxQueryLayoutInfoEvent_SetSize(_arg0,*_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_GetSize(_swigobj)  (_swigobj->GetSize())
+static PyObject *_wrap_wxQueryLayoutInfoEvent_GetSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSize * _result;
+    wxQueryLayoutInfoEvent * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxQueryLayoutInfoEvent_GetSize",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_GetSize. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    _result = new wxSize (wxQueryLayoutInfoEvent_GetSize(_arg0));
+    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_SetOrientation(_swigobj,_swigarg0)  (_swigobj->SetOrientation(_swigarg0))
+static PyObject *_wrap_wxQueryLayoutInfoEvent_SetOrientation(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxQueryLayoutInfoEvent * _arg0;
+    wxLayoutOrientation  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxQueryLayoutInfoEvent_SetOrientation",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_SetOrientation. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    wxQueryLayoutInfoEvent_SetOrientation(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
+static PyObject *_wrap_wxQueryLayoutInfoEvent_GetOrientation(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutOrientation  _result;
+    wxQueryLayoutInfoEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxQueryLayoutInfoEvent_GetOrientation",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_GetOrientation. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (wxLayoutOrientation )wxQueryLayoutInfoEvent_GetOrientation(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_SetAlignment(_swigobj,_swigarg0)  (_swigobj->SetAlignment(_swigarg0))
+static PyObject *_wrap_wxQueryLayoutInfoEvent_SetAlignment(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxQueryLayoutInfoEvent * _arg0;
+    wxLayoutAlignment  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxQueryLayoutInfoEvent_SetAlignment",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_SetAlignment. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    wxQueryLayoutInfoEvent_SetAlignment(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxQueryLayoutInfoEvent_GetAlignment(_swigobj)  (_swigobj->GetAlignment())
+static PyObject *_wrap_wxQueryLayoutInfoEvent_GetAlignment(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutAlignment  _result;
+    wxQueryLayoutInfoEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxQueryLayoutInfoEvent_GetAlignment",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxQueryLayoutInfoEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxQueryLayoutInfoEvent_GetAlignment. Expected _wxQueryLayoutInfoEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (wxLayoutAlignment )wxQueryLayoutInfoEvent_GetAlignment(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static void *SwigwxCalculateLayoutEventTowxEvent(void *ptr) {
+    wxCalculateLayoutEvent *src;
+    wxEvent *dest;
+    src = (wxCalculateLayoutEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxCalculateLayoutEvent_SetFlags(_swigobj,_swigarg0)  (_swigobj->SetFlags(_swigarg0))
+static PyObject *_wrap_wxCalculateLayoutEvent_SetFlags(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxCalculateLayoutEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxCalculateLayoutEvent_SetFlags",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCalculateLayoutEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCalculateLayoutEvent_SetFlags. Expected _wxCalculateLayoutEvent_p.");
+        return NULL;
+        }
+    }
+    wxCalculateLayoutEvent_SetFlags(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxCalculateLayoutEvent_GetFlags(_swigobj)  (_swigobj->GetFlags())
+static PyObject *_wrap_wxCalculateLayoutEvent_GetFlags(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxCalculateLayoutEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxCalculateLayoutEvent_GetFlags",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCalculateLayoutEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCalculateLayoutEvent_GetFlags. Expected _wxCalculateLayoutEvent_p.");
+        return NULL;
+        }
+    }
+    _result = (int )wxCalculateLayoutEvent_GetFlags(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxCalculateLayoutEvent_SetRect(_swigobj,_swigarg0)  (_swigobj->SetRect(_swigarg0))
+static PyObject *_wrap_wxCalculateLayoutEvent_SetRect(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxCalculateLayoutEvent * _arg0;
+    wxRect * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxCalculateLayoutEvent_SetRect",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCalculateLayoutEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCalculateLayoutEvent_SetRect. Expected _wxCalculateLayoutEvent_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxRect_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxCalculateLayoutEvent_SetRect. Expected _wxRect_p.");
+        return NULL;
+        }
+    }
+    wxCalculateLayoutEvent_SetRect(_arg0,*_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxCalculateLayoutEvent_GetRect(_swigobj)  (_swigobj->GetRect())
+static PyObject *_wrap_wxCalculateLayoutEvent_GetRect(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxRect * _result;
+    wxCalculateLayoutEvent * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxCalculateLayoutEvent_GetRect",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCalculateLayoutEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCalculateLayoutEvent_GetRect. Expected _wxCalculateLayoutEvent_p.");
+        return NULL;
+        }
+    }
+    _result = new wxRect (wxCalculateLayoutEvent_GetRect(_arg0));
+    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxSashLayoutWindowTowxSashWindow(void *ptr) {
+    wxSashLayoutWindow *src;
+    wxSashWindow *dest;
+    src = (wxSashLayoutWindow *) ptr;
+    dest = (wxSashWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxSashLayoutWindowTowxWindow(void *ptr) {
+    wxSashLayoutWindow *src;
+    wxWindow *dest;
+    src = (wxSashLayoutWindow *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxSashLayoutWindowTowxEvtHandler(void *ptr) {
+    wxSashLayoutWindow *src;
+    wxEvtHandler *dest;
+    src = (wxSashLayoutWindow *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxSashLayoutWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxSashLayoutWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxSashLayoutWindow(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashLayoutWindow * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1;
+    wxPoint * _arg2 = &wxPyDefaultPosition;
+    wxSize * _arg3 = &wxPyDefaultSize;
+    long  _arg4 = (wxCLIP_CHILDREN)|(wxSW_3D);
+    char * _arg5 = "layoutWindow";
+    char * _argc0 = 0;
+    char * _argc2 = 0;
+    char * _argc3 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si|ssls:new_wxSashLayoutWindow",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxSashLayoutWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxSashLayoutWindow. Expected _wxPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxSashLayoutWindow. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+    _result = (wxSashLayoutWindow *)new_wxSashLayoutWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashLayoutWindow_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxSashLayoutWindow_GetAlignment(_swigobj)  (_swigobj->GetAlignment())
+static PyObject *_wrap_wxSashLayoutWindow_GetAlignment(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutAlignment  _result;
+    wxSashLayoutWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashLayoutWindow_GetAlignment",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashLayoutWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashLayoutWindow_GetAlignment. Expected _wxSashLayoutWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (wxLayoutAlignment )wxSashLayoutWindow_GetAlignment(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashLayoutWindow_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
+static PyObject *_wrap_wxSashLayoutWindow_GetOrientation(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutOrientation  _result;
+    wxSashLayoutWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSashLayoutWindow_GetOrientation",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashLayoutWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashLayoutWindow_GetOrientation. Expected _wxSashLayoutWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (wxLayoutOrientation )wxSashLayoutWindow_GetOrientation(_arg0);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSashLayoutWindow_SetAlignment(_swigobj,_swigarg0)  (_swigobj->SetAlignment(_swigarg0))
+static PyObject *_wrap_wxSashLayoutWindow_SetAlignment(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashLayoutWindow * _arg0;
+    wxLayoutAlignment  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashLayoutWindow_SetAlignment",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashLayoutWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashLayoutWindow_SetAlignment. Expected _wxSashLayoutWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashLayoutWindow_SetAlignment(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashLayoutWindow_SetDefaultSize(_swigobj,_swigarg0)  (_swigobj->SetDefaultSize(_swigarg0))
+static PyObject *_wrap_wxSashLayoutWindow_SetDefaultSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashLayoutWindow * _arg0;
+    wxSize * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxSashLayoutWindow_SetDefaultSize",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashLayoutWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashLayoutWindow_SetDefaultSize. Expected _wxSashLayoutWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSashLayoutWindow_SetDefaultSize. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+    wxSashLayoutWindow_SetDefaultSize(_arg0,*_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSashLayoutWindow_SetOrientation(_swigobj,_swigarg0)  (_swigobj->SetOrientation(_swigarg0))
+static PyObject *_wrap_wxSashLayoutWindow_SetOrientation(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSashLayoutWindow * _arg0;
+    wxLayoutOrientation  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSashLayoutWindow_SetOrientation",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSashLayoutWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSashLayoutWindow_SetOrientation. Expected _wxSashLayoutWindow_p.");
+        return NULL;
+        }
+    }
+    wxSashLayoutWindow_SetOrientation(_arg0,_arg1);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define new_wxLayoutAlgorithm() (new wxLayoutAlgorithm())
+static PyObject *_wrap_new_wxLayoutAlgorithm(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutAlgorithm * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxLayoutAlgorithm")) 
+        return NULL;
+    _result = (wxLayoutAlgorithm *)new_wxLayoutAlgorithm();
+    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutAlgorithm_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define delete_wxLayoutAlgorithm(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxLayoutAlgorithm(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxLayoutAlgorithm * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:delete_wxLayoutAlgorithm",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxLayoutAlgorithm_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxLayoutAlgorithm. Expected _wxLayoutAlgorithm_p.");
+        return NULL;
+        }
+    }
+    delete_wxLayoutAlgorithm(_arg0);
+    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxLayoutAlgorithm_LayoutMDIFrame(_swigobj,_swigarg0,_swigarg1)  (_swigobj->LayoutMDIFrame(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxLayoutAlgorithm_LayoutMDIFrame(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxLayoutAlgorithm * _arg0;
+    wxMDIParentFrame * _arg1;
+    wxRect * _arg2 = NULL;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss|s:wxLayoutAlgorithm_LayoutMDIFrame",&_argc0,&_argc1,&_argc2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxLayoutAlgorithm_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxLayoutAlgorithm_LayoutMDIFrame. Expected _wxLayoutAlgorithm_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxMDIParentFrame_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxLayoutAlgorithm_LayoutMDIFrame. Expected _wxMDIParentFrame_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxRect_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxLayoutAlgorithm_LayoutMDIFrame. Expected _wxRect_p.");
+        return NULL;
+        }
+    }
+    _result = (bool )wxLayoutAlgorithm_LayoutMDIFrame(_arg0,_arg1,_arg2);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxLayoutAlgorithm_LayoutFrame(_swigobj,_swigarg0,_swigarg1)  (_swigobj->LayoutFrame(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxLayoutAlgorithm_LayoutFrame(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxLayoutAlgorithm * _arg0;
+    wxFrame * _arg1;
+    wxWindow * _arg2 = NULL;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss|s:wxLayoutAlgorithm_LayoutFrame",&_argc0,&_argc1,&_argc2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxLayoutAlgorithm_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxLayoutAlgorithm_LayoutFrame. Expected _wxLayoutAlgorithm_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxFrame_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxLayoutAlgorithm_LayoutFrame. Expected _wxFrame_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxLayoutAlgorithm_LayoutFrame. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    _result = (bool )wxLayoutAlgorithm_LayoutFrame(_arg0,_arg1,_arg2);
+    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyMethodDef windows3cMethods[] = {
+        { "wxLayoutAlgorithm_LayoutFrame", _wrap_wxLayoutAlgorithm_LayoutFrame, 1 },
+        { "wxLayoutAlgorithm_LayoutMDIFrame", _wrap_wxLayoutAlgorithm_LayoutMDIFrame, 1 },
+        { "delete_wxLayoutAlgorithm", _wrap_delete_wxLayoutAlgorithm, 1 },
+        { "new_wxLayoutAlgorithm", _wrap_new_wxLayoutAlgorithm, 1 },
+        { "wxSashLayoutWindow_SetOrientation", _wrap_wxSashLayoutWindow_SetOrientation, 1 },
+        { "wxSashLayoutWindow_SetDefaultSize", _wrap_wxSashLayoutWindow_SetDefaultSize, 1 },
+        { "wxSashLayoutWindow_SetAlignment", _wrap_wxSashLayoutWindow_SetAlignment, 1 },
+        { "wxSashLayoutWindow_GetOrientation", _wrap_wxSashLayoutWindow_GetOrientation, 1 },
+        { "wxSashLayoutWindow_GetAlignment", _wrap_wxSashLayoutWindow_GetAlignment, 1 },
+        { "new_wxSashLayoutWindow", _wrap_new_wxSashLayoutWindow, 1 },
+        { "wxCalculateLayoutEvent_GetRect", _wrap_wxCalculateLayoutEvent_GetRect, 1 },
+        { "wxCalculateLayoutEvent_SetRect", _wrap_wxCalculateLayoutEvent_SetRect, 1 },
+        { "wxCalculateLayoutEvent_GetFlags", _wrap_wxCalculateLayoutEvent_GetFlags, 1 },
+        { "wxCalculateLayoutEvent_SetFlags", _wrap_wxCalculateLayoutEvent_SetFlags, 1 },
+        { "wxQueryLayoutInfoEvent_GetAlignment", _wrap_wxQueryLayoutInfoEvent_GetAlignment, 1 },
+        { "wxQueryLayoutInfoEvent_SetAlignment", _wrap_wxQueryLayoutInfoEvent_SetAlignment, 1 },
+        { "wxQueryLayoutInfoEvent_GetOrientation", _wrap_wxQueryLayoutInfoEvent_GetOrientation, 1 },
+        { "wxQueryLayoutInfoEvent_SetOrientation", _wrap_wxQueryLayoutInfoEvent_SetOrientation, 1 },
+        { "wxQueryLayoutInfoEvent_GetSize", _wrap_wxQueryLayoutInfoEvent_GetSize, 1 },
+        { "wxQueryLayoutInfoEvent_SetSize", _wrap_wxQueryLayoutInfoEvent_SetSize, 1 },
+        { "wxQueryLayoutInfoEvent_GetFlags", _wrap_wxQueryLayoutInfoEvent_GetFlags, 1 },
+        { "wxQueryLayoutInfoEvent_SetFlags", _wrap_wxQueryLayoutInfoEvent_SetFlags, 1 },
+        { "wxQueryLayoutInfoEvent_GetRequestedLength", _wrap_wxQueryLayoutInfoEvent_GetRequestedLength, 1 },
+        { "wxQueryLayoutInfoEvent_SetRequestedLength", _wrap_wxQueryLayoutInfoEvent_SetRequestedLength, 1 },
+        { "wxSashWindow_SetSashBorder", _wrap_wxSashWindow_SetSashBorder, 1 },
+        { "wxSashWindow_SetSashVisible", _wrap_wxSashWindow_SetSashVisible, 1 },
+        { "wxSashWindow_SetMinimumSizeY", _wrap_wxSashWindow_SetMinimumSizeY, 1 },
+        { "wxSashWindow_SetMinimumSizeX", _wrap_wxSashWindow_SetMinimumSizeX, 1 },
+        { "wxSashWindow_SetMaximumSizeY", _wrap_wxSashWindow_SetMaximumSizeY, 1 },
+        { "wxSashWindow_SetMaximumSizeX", _wrap_wxSashWindow_SetMaximumSizeX, 1 },
+        { "wxSashWindow_SetExtraBorderSize", _wrap_wxSashWindow_SetExtraBorderSize, 1 },
+        { "wxSashWindow_SetDefaultBorderSize", _wrap_wxSashWindow_SetDefaultBorderSize, 1 },
+        { "wxSashWindow_HasBorder", _wrap_wxSashWindow_HasBorder, 1 },
+        { "wxSashWindow_GetMinimumSizeY", _wrap_wxSashWindow_GetMinimumSizeY, 1 },
+        { "wxSashWindow_GetMinimumSizeX", _wrap_wxSashWindow_GetMinimumSizeX, 1 },
+        { "wxSashWindow_GetMaximumSizeY", _wrap_wxSashWindow_GetMaximumSizeY, 1 },
+        { "wxSashWindow_GetMaximumSizeX", _wrap_wxSashWindow_GetMaximumSizeX, 1 },
+        { "wxSashWindow_GetExtraBorderSize", _wrap_wxSashWindow_GetExtraBorderSize, 1 },
+        { "wxSashWindow_GetEdgeMargin", _wrap_wxSashWindow_GetEdgeMargin, 1 },
+        { "wxSashWindow_GetDefaultBorderSize", _wrap_wxSashWindow_GetDefaultBorderSize, 1 },
+        { "wxSashWindow_GetSashVisible", _wrap_wxSashWindow_GetSashVisible, 1 },
+        { "new_wxSashWindow", _wrap_new_wxSashWindow, 1 },
+        { "wxSashEvent_GetDragStatus", _wrap_wxSashEvent_GetDragStatus, 1 },
+        { "wxSashEvent_SetDragStatus", _wrap_wxSashEvent_SetDragStatus, 1 },
+        { "wxSashEvent_GetDragRect", _wrap_wxSashEvent_GetDragRect, 1 },
+        { "wxSashEvent_SetDragRect", _wrap_wxSashEvent_SetDragRect, 1 },
+        { "wxSashEvent_GetEdge", _wrap_wxSashEvent_GetEdge, 1 },
+        { "wxSashEvent_SetEdge", _wrap_wxSashEvent_SetEdge, 1 },
+        { NULL, NULL }
+};
+static PyObject *SWIG_globals;
+#ifdef __cplusplus
+extern "C" 
+#endif
+SWIGEXPORT(void,initwindows3c)() {
+        PyObject *m, *d;
+        SWIG_globals = SWIG_newvarlink();
+        m = Py_InitModule("windows3c", windows3cMethods);
+        d = PyModule_GetDict(m);
+        PyDict_SetItemString(d,"wxSASH_TOP", PyInt_FromLong((long) wxSASH_TOP));
+        PyDict_SetItemString(d,"wxSASH_RIGHT", PyInt_FromLong((long) wxSASH_RIGHT));
+        PyDict_SetItemString(d,"wxSASH_BOTTOM", PyInt_FromLong((long) wxSASH_BOTTOM));
+        PyDict_SetItemString(d,"wxSASH_LEFT", PyInt_FromLong((long) wxSASH_LEFT));
+        PyDict_SetItemString(d,"wxSASH_NONE", PyInt_FromLong((long) wxSASH_NONE));
+        PyDict_SetItemString(d,"wxEVT_SASH_DRAGGED", PyInt_FromLong((long) wxEVT_SASH_DRAGGED));
+        PyDict_SetItemString(d,"wxSW_3D", PyInt_FromLong((long) wxSW_3D));
+        PyDict_SetItemString(d,"wxSASH_STATUS_OK", PyInt_FromLong((long) wxSASH_STATUS_OK));
+        PyDict_SetItemString(d,"wxSASH_STATUS_OUT_OF_RANGE", PyInt_FromLong((long) wxSASH_STATUS_OUT_OF_RANGE));
+        PyDict_SetItemString(d,"wxLAYOUT_HORIZONTAL", PyInt_FromLong((long) wxLAYOUT_HORIZONTAL));
+        PyDict_SetItemString(d,"wxLAYOUT_VERTICAL", PyInt_FromLong((long) wxLAYOUT_VERTICAL));
+        PyDict_SetItemString(d,"wxLAYOUT_NONE", PyInt_FromLong((long) wxLAYOUT_NONE));
+        PyDict_SetItemString(d,"wxLAYOUT_TOP", PyInt_FromLong((long) wxLAYOUT_TOP));
+        PyDict_SetItemString(d,"wxLAYOUT_LEFT", PyInt_FromLong((long) wxLAYOUT_LEFT));
+        PyDict_SetItemString(d,"wxLAYOUT_RIGHT", PyInt_FromLong((long) wxLAYOUT_RIGHT));
+        PyDict_SetItemString(d,"wxLAYOUT_BOTTOM", PyInt_FromLong((long) wxLAYOUT_BOTTOM));
+        PyDict_SetItemString(d,"wxEVT_QUERY_LAYOUT_INFO", PyInt_FromLong((long) wxEVT_QUERY_LAYOUT_INFO));
+        PyDict_SetItemString(d,"wxEVT_CALCULATE_LAYOUT", PyInt_FromLong((long) wxEVT_CALCULATE_LAYOUT));
+/*
+ * These are the pointer type-equivalency mappings. 
+ * (Used by the SWIG pointer type-checker).
+ */
+        SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_wxEvent","_class_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_class_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_class_wxSashEvent",SwigwxSashEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxSashEvent",SwigwxSashEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_class_wxEvent",0);
+        SWIG_RegisterMapping("_class_wxActivateEvent","_wxActivateEvent",0);
+        SWIG_RegisterMapping("_signed_long","_long",0);
+        SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
+        SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
+        SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxSashWindow",SwigwxSashWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_wxSashWindow",SwigwxSashWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_wxEvtHandler",0);
+        SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
+        SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
+        SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
+        SWIG_RegisterMapping("_wxGrid","_class_wxGrid",0);
+        SWIG_RegisterMapping("_wxPyMenu","_class_wxPyMenu",0);
+        SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
+        SWIG_RegisterMapping("_wxUpdateUIEvent","_class_wxUpdateUIEvent",0);
+        SWIG_RegisterMapping("_byte","_unsigned_char",0);
+        SWIG_RegisterMapping("_wxStaticBox","_class_wxStaticBox",0);
+        SWIG_RegisterMapping("_wxChoice","_class_wxChoice",0);
+        SWIG_RegisterMapping("_wxSlider","_class_wxSlider",0);
+        SWIG_RegisterMapping("_wxNotebookEvent","_class_wxNotebookEvent",0);
+        SWIG_RegisterMapping("_long","_wxDash",0);
+        SWIG_RegisterMapping("_long","_unsigned_long",0);
+        SWIG_RegisterMapping("_long","_signed_long",0);
+        SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
+        SWIG_RegisterMapping("_wxBitmapButton","_class_wxBitmapButton",0);
+        SWIG_RegisterMapping("_wxSashWindow","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow);
+        SWIG_RegisterMapping("_wxSashWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow);
+        SWIG_RegisterMapping("_wxSashWindow","_class_wxSashWindow",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxSashEvent","_wxSashEvent",0);
+        SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
+        SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
+        SWIG_RegisterMapping("_wxSashLayoutWindow","_class_wxSashLayoutWindow",0);
+        SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
+        SWIG_RegisterMapping("_wxPrinterDC","_class_wxPrinterDC",0);
+        SWIG_RegisterMapping("_class_wxMenuItem","_wxMenuItem",0);
+        SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
+        SWIG_RegisterMapping("_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0);
+        SWIG_RegisterMapping("_class_wxStatusBar","_wxStatusBar",0);
+        SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
+        SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
+        SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
+        SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
+        SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
+        SWIG_RegisterMapping("_class_wxGrid","_wxGrid",0);
+        SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
+        SWIG_RegisterMapping("_class_wxDialog","_wxDialog",0);
+        SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
+        SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
+        SWIG_RegisterMapping("_wxToolBar","_class_wxToolBar",0);
+        SWIG_RegisterMapping("_class_wxLayoutAlgorithm","_wxLayoutAlgorithm",0);
+        SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
+        SWIG_RegisterMapping("_class_wxNotebookEvent","_wxNotebookEvent",0);
+        SWIG_RegisterMapping("_wxMiniFrame","_class_wxMiniFrame",0);
+        SWIG_RegisterMapping("_class_wxSashWindow","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow);
+        SWIG_RegisterMapping("_class_wxSashWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow);
+        SWIG_RegisterMapping("_class_wxSashWindow","_wxSashWindow",0);
+        SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
+        SWIG_RegisterMapping("_uint","_unsigned_int",0);
+        SWIG_RegisterMapping("_uint","_int",0);
+        SWIG_RegisterMapping("_uint","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxSashEvent",SwigwxSashEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxSashEvent",SwigwxSashEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
+        SWIG_RegisterMapping("_wxCheckListBox","_class_wxCheckListBox",0);
+        SWIG_RegisterMapping("_wxGridEvent","_class_wxGridEvent",0);
+        SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
+        SWIG_RegisterMapping("_wxCommandEvent","_class_wxSashEvent",SwigwxSashEventTowxCommandEvent);
+        SWIG_RegisterMapping("_wxCommandEvent","_wxSashEvent",SwigwxSashEventTowxCommandEvent);
+        SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
+        SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
+        SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
+        SWIG_RegisterMapping("_class_wxSashLayoutWindow","_wxSashLayoutWindow",0);
+        SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
+        SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
+        SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
+        SWIG_RegisterMapping("_wxTaskBarIcon","_class_wxTaskBarIcon",0);
+        SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
+        SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
+        SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
+        SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
+        SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
+        SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
+        SWIG_RegisterMapping("_wxMDIChildFrame","_class_wxMDIChildFrame",0);
+        SWIG_RegisterMapping("_class_wxToolBar","_wxToolBar",0);
+        SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
+        SWIG_RegisterMapping("_wxCalculateLayoutEvent","_class_wxCalculateLayoutEvent",0);
+        SWIG_RegisterMapping("_EBool","_signed_int",0);
+        SWIG_RegisterMapping("_EBool","_int",0);
+        SWIG_RegisterMapping("_EBool","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxRegion","_wxRegion",0);
+        SWIG_RegisterMapping("_class_wxDropFilesEvent","_wxDropFilesEvent",0);
+        SWIG_RegisterMapping("_wxStaticText","_class_wxStaticText",0);
+        SWIG_RegisterMapping("_wxFont","_class_wxFont",0);
+        SWIG_RegisterMapping("_wxCloseEvent","_class_wxCloseEvent",0);
+        SWIG_RegisterMapping("_wxNotebook","_class_wxNotebook",0);
+        SWIG_RegisterMapping("_unsigned_long","_wxDash",0);
+        SWIG_RegisterMapping("_unsigned_long","_long",0);
+        SWIG_RegisterMapping("_class_wxRect","_wxRect",0);
+        SWIG_RegisterMapping("_class_wxDC","_wxDC",0);
+        SWIG_RegisterMapping("_wxMDIParentFrame","_class_wxMDIParentFrame",0);
+        SWIG_RegisterMapping("_class_wxPyTimer","_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxFocusEvent","_class_wxFocusEvent",0);
+        SWIG_RegisterMapping("_wxMaximizeEvent","_class_wxMaximizeEvent",0);
+        SWIG_RegisterMapping("_class_wxSpinButton","_wxSpinButton",0);
+        SWIG_RegisterMapping("_wxAcceleratorEntry","_class_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_class_wxPanel","_wxPanel",0);
+        SWIG_RegisterMapping("_class_wxCheckBox","_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxComboBox","_class_wxComboBox",0);
+        SWIG_RegisterMapping("_wxRadioButton","_class_wxRadioButton",0);
+        SWIG_RegisterMapping("_signed_int","_EBool",0);
+        SWIG_RegisterMapping("_signed_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_signed_int","_int",0);
+        SWIG_RegisterMapping("_class_wxTextCtrl","_wxTextCtrl",0);
+        SWIG_RegisterMapping("_wxLayoutConstraints","_class_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_wxMetaFileDC","_class_wxMetaFileDC",0);
+        SWIG_RegisterMapping("_wxMenu","_class_wxMenu",0);
+        SWIG_RegisterMapping("_class_wxMoveEvent","_wxMoveEvent",0);
+        SWIG_RegisterMapping("_wxListBox","_class_wxListBox",0);
+        SWIG_RegisterMapping("_wxScreenDC","_class_wxScreenDC",0);
+        SWIG_RegisterMapping("_class_wxMDIChildFrame","_wxMDIChildFrame",0);
+        SWIG_RegisterMapping("_WXTYPE","_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_signed_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_unsigned_short",0);
+        SWIG_RegisterMapping("_class_wxMDIClientWindow","_wxMDIClientWindow",0);
+        SWIG_RegisterMapping("_class_wxBrush","_wxBrush",0);
+        SWIG_RegisterMapping("_unsigned_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_unsigned_short","_short",0);
+        SWIG_RegisterMapping("_class_wxWindow","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_class_wxSashWindow",SwigwxSashWindowTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_wxSashWindow",SwigwxSashWindowTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_wxWindow",0);
+        SWIG_RegisterMapping("_wxSplitterWindow","_class_wxSplitterWindow",0);
+        SWIG_RegisterMapping("_class_wxStaticText","_wxStaticText",0);
+        SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
+        SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
+        SWIG_RegisterMapping("_wxSashEvent","_class_wxSashEvent",0);
+        SWIG_RegisterMapping("_class_wxMenuEvent","_wxMenuEvent",0);
+        SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
+        SWIG_RegisterMapping("_wxMouseEvent","_class_wxMouseEvent",0);
+        SWIG_RegisterMapping("_class_wxPoint","_wxPoint",0);
+        SWIG_RegisterMapping("_wxRealPoint","_class_wxRealPoint",0);
+        SWIG_RegisterMapping("_class_wxRadioBox","_wxRadioBox",0);
+        SWIG_RegisterMapping("_wxGridCell","_class_wxGridCell",0);
+        SWIG_RegisterMapping("_signed_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_signed_short","_short",0);
+        SWIG_RegisterMapping("_wxMemoryDC","_class_wxMemoryDC",0);
+        SWIG_RegisterMapping("_class_wxTaskBarIcon","_wxTaskBarIcon",0);
+        SWIG_RegisterMapping("_wxPaintDC","_class_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxWindowDC","_wxWindowDC",0);
+        SWIG_RegisterMapping("_class_wxFocusEvent","_wxFocusEvent",0);
+        SWIG_RegisterMapping("_class_wxMaximizeEvent","_wxMaximizeEvent",0);
+        SWIG_RegisterMapping("_wxStatusBar","_class_wxStatusBar",0);
+        SWIG_RegisterMapping("_class_wxToolBarTool","_wxToolBarTool",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_class_wxCursor","_wxCursor",0);
+        SWIG_RegisterMapping("_wxScrolledWindow","_class_wxScrolledWindow",0);
+        SWIG_RegisterMapping("_unsigned_char","_byte",0);
+        SWIG_RegisterMapping("_class_wxMetaFileDC","_wxMetaFileDC",0);
+        SWIG_RegisterMapping("_class_wxMenu","_wxMenu",0);
+        SWIG_RegisterMapping("_wxControl","_class_wxControl",0);
+        SWIG_RegisterMapping("_class_wxListBox","_wxListBox",0);
+        SWIG_RegisterMapping("_unsigned_int","_uint",0);
+        SWIG_RegisterMapping("_unsigned_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_unsigned_int","_int",0);
+        SWIG_RegisterMapping("_wxIcon","_class_wxIcon",0);
+        SWIG_RegisterMapping("_wxDialog","_class_wxDialog",0);
+        SWIG_RegisterMapping("_class_wxPyMenu","_wxPyMenu",0);
+        SWIG_RegisterMapping("_class_wxPen","_wxPen",0);
+        SWIG_RegisterMapping("_wxQueryLayoutInfoEvent","_class_wxQueryLayoutInfoEvent",0);
+        SWIG_RegisterMapping("_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_short","_unsigned_short",0);
+        SWIG_RegisterMapping("_short","_signed_short",0);
+        SWIG_RegisterMapping("_class_wxStaticBox","_wxStaticBox",0);
+        SWIG_RegisterMapping("_wxLayoutAlgorithm","_class_wxLayoutAlgorithm",0);
+        SWIG_RegisterMapping("_class_wxScrollEvent","_wxScrollEvent",0);
+        SWIG_RegisterMapping("_wxJoystickEvent","_class_wxJoystickEvent",0);
+        SWIG_RegisterMapping("_class_wxChoice","_wxChoice",0);
+        SWIG_RegisterMapping("_class_wxSlider","_wxSlider",0);
+        SWIG_RegisterMapping("_class_wxCalculateLayoutEvent","_wxCalculateLayoutEvent",0);
+        SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
+        SWIG_RegisterMapping("_wxFrame","_class_wxFrame",0);
+        SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
+        SWIG_RegisterMapping("_wxWindowID","_EBool",0);
+        SWIG_RegisterMapping("_wxWindowID","_uint",0);
+        SWIG_RegisterMapping("_wxWindowID","_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_signed_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_EBool",0);
+        SWIG_RegisterMapping("_int","_uint",0);
+        SWIG_RegisterMapping("_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_int","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_signed_int",0);
+        SWIG_RegisterMapping("_class_wxMouseEvent","_wxMouseEvent",0);
+        SWIG_RegisterMapping("_class_wxSpinEvent","_wxSpinEvent",0);
+        SWIG_RegisterMapping("_wxButton","_class_wxButton",0);
+        SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
+        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
+        SWIG_RegisterMapping("_class_wxPrinterDC","_wxPrinterDC",0);
+        SWIG_RegisterMapping("_class_wxMDIParentFrame","_wxMDIParentFrame",0);
+        SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
+        SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
+        SWIG_RegisterMapping("_class_wxComboBox","_wxComboBox",0);
+        SWIG_RegisterMapping("_class_wxRadioButton","_wxRadioButton",0);
+        SWIG_RegisterMapping("_class_wxLayoutConstraints","_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_wxIconizeEvent","_class_wxIconizeEvent",0);
+        SWIG_RegisterMapping("_class_wxControl","_wxControl",0);
+        SWIG_RegisterMapping("_wxStaticBitmap","_class_wxStaticBitmap",0);
+        SWIG_RegisterMapping("_class_wxIcon","_wxIcon",0);
+        SWIG_RegisterMapping("_class_wxColour","_wxColour",0);
+        SWIG_RegisterMapping("_class_wxScreenDC","_wxScreenDC",0);
+        SWIG_RegisterMapping("_wxPalette","_class_wxPalette",0);
+        SWIG_RegisterMapping("_class_wxIdleEvent","_wxIdleEvent",0);
+        SWIG_RegisterMapping("_wxEraseEvent","_class_wxEraseEvent",0);
+        SWIG_RegisterMapping("_class_wxJoystickEvent","_wxJoystickEvent",0);
+        SWIG_RegisterMapping("_class_wxMiniFrame","_wxMiniFrame",0);
+        SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
+        SWIG_RegisterMapping("_class_wxSplitterWindow","_wxSplitterWindow",0);
+        SWIG_RegisterMapping("_class_wxShowEvent","_wxShowEvent",0);
+        SWIG_RegisterMapping("_wxActivateEvent","_class_wxActivateEvent",0);
+        SWIG_RegisterMapping("_wxGauge","_class_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxCheckListBox","_wxCheckListBox",0);
+        SWIG_RegisterMapping("_class_wxGridEvent","_wxGridEvent",0);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxSashEvent",SwigwxSashEventTowxCommandEvent);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_wxSashEvent",SwigwxSashEventTowxCommandEvent);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_wxCommandEvent",0);
+        SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
+        SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",0);
+        SWIG_RegisterMapping("_class_wxGridCell","_wxGridCell",0);
+        SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
+        SWIG_RegisterMapping("_class_wxBitmap","_wxBitmap",0);
+        SWIG_RegisterMapping("_class_wxMemoryDC","_wxMemoryDC",0);
+        SWIG_RegisterMapping("_wxMenuBar","_class_wxMenuBar",0);
+        SWIG_RegisterMapping("_wxEvtHandler","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_class_wxSashWindow",SwigwxSashWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_wxSashWindow",SwigwxSashWindowTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_class_wxEvtHandler",0);
+        SWIG_RegisterMapping("_wxMenuItem","_class_wxMenuItem",0);
+        SWIG_RegisterMapping("_class_wxScrollBar","_wxScrollBar",0);
+        SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
+        SWIG_RegisterMapping("_wxDash","_long",0);
+        SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
+        SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
+        SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
+        SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
+        SWIG_RegisterMapping("_class_wxQueryLayoutInfoEvent","_wxQueryLayoutInfoEvent",0);
+        SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
+        SWIG_RegisterMapping("_wxMDIClientWindow","_class_wxMDIClientWindow",0);
+        SWIG_RegisterMapping("_wxWindow","_class_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_class_wxSashWindow",SwigwxSashWindowTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_wxSashWindow",SwigwxSashWindowTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_class_wxWindow",0);
+        SWIG_RegisterMapping("_class_wxFrame","_wxFrame",0);
+}
diff --git a/utils/wxPython/src/msw/windows3.py b/utils/wxPython/src/msw/windows3.py
new file mode 100644 (file)
index 0000000..c1b716e
--- /dev/null
@@ -0,0 +1,293 @@
+# This file was created automatically by SWIG.
+import windows3c
+
+from misc import *
+
+from gdi import *
+
+from windows import *
+
+from windows2 import *
+
+from controls import *
+
+from events import *
+
+from mdi import *
+
+from frames import *
+
+from stattool import *
+import wx
+class wxSashEventPtr(wxCommandEventPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def SetEdge(self,arg0):
+        val = windows3c.wxSashEvent_SetEdge(self.this,arg0)
+        return val
+    def GetEdge(self):
+        val = windows3c.wxSashEvent_GetEdge(self.this)
+        return val
+    def SetDragRect(self,arg0):
+        val = windows3c.wxSashEvent_SetDragRect(self.this,arg0.this)
+        return val
+    def GetDragRect(self):
+        val = windows3c.wxSashEvent_GetDragRect(self.this)
+        val = wxRectPtr(val)
+        val.thisown = 1
+        return val
+    def SetDragStatus(self,arg0):
+        val = windows3c.wxSashEvent_SetDragStatus(self.this,arg0)
+        return val
+    def GetDragStatus(self):
+        val = windows3c.wxSashEvent_GetDragStatus(self.this)
+        return val
+    def __repr__(self):
+        return "<C wxSashEvent instance>"
+class wxSashEvent(wxSashEventPtr):
+    def __init__(self,this):
+        self.this = this
+
+
+
+
+class wxSashWindowPtr(wxWindowPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def GetSashVisible(self,arg0):
+        val = windows3c.wxSashWindow_GetSashVisible(self.this,arg0)
+        return val
+    def GetDefaultBorderSize(self):
+        val = windows3c.wxSashWindow_GetDefaultBorderSize(self.this)
+        return val
+    def GetEdgeMargin(self,arg0):
+        val = windows3c.wxSashWindow_GetEdgeMargin(self.this,arg0)
+        return val
+    def GetExtraBorderSize(self):
+        val = windows3c.wxSashWindow_GetExtraBorderSize(self.this)
+        return val
+    def GetMaximumSizeX(self):
+        val = windows3c.wxSashWindow_GetMaximumSizeX(self.this)
+        return val
+    def GetMaximumSizeY(self):
+        val = windows3c.wxSashWindow_GetMaximumSizeY(self.this)
+        return val
+    def GetMinimumSizeX(self):
+        val = windows3c.wxSashWindow_GetMinimumSizeX(self.this)
+        return val
+    def GetMinimumSizeY(self):
+        val = windows3c.wxSashWindow_GetMinimumSizeY(self.this)
+        return val
+    def HasBorder(self,arg0):
+        val = windows3c.wxSashWindow_HasBorder(self.this,arg0)
+        return val
+    def SetDefaultBorderSize(self,arg0):
+        val = windows3c.wxSashWindow_SetDefaultBorderSize(self.this,arg0)
+        return val
+    def SetExtraBorderSize(self,arg0):
+        val = windows3c.wxSashWindow_SetExtraBorderSize(self.this,arg0)
+        return val
+    def SetMaximumSizeX(self,arg0):
+        val = windows3c.wxSashWindow_SetMaximumSizeX(self.this,arg0)
+        return val
+    def SetMaximumSizeY(self,arg0):
+        val = windows3c.wxSashWindow_SetMaximumSizeY(self.this,arg0)
+        return val
+    def SetMinimumSizeX(self,arg0):
+        val = windows3c.wxSashWindow_SetMinimumSizeX(self.this,arg0)
+        return val
+    def SetMinimumSizeY(self,arg0):
+        val = windows3c.wxSashWindow_SetMinimumSizeY(self.this,arg0)
+        return val
+    def SetSashVisible(self,arg0,arg1):
+        val = windows3c.wxSashWindow_SetSashVisible(self.this,arg0,arg1)
+        return val
+    def SetSashBorder(self,arg0,arg1):
+        val = windows3c.wxSashWindow_SetSashBorder(self.this,arg0,arg1)
+        return val
+    def __repr__(self):
+        return "<C wxSashWindow instance>"
+class wxSashWindow(wxSashWindowPtr):
+    def __init__(self,arg0,arg1,*args) :
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        try: argl[1] = argl[1].this
+        except: pass
+        args = tuple(argl)
+        self.this = apply(windows3c.new_wxSashWindow,(arg0.this,arg1,)+args)
+        self.thisown = 1
+        wx._StdWindowCallbacks(self)
+
+
+
+
+class wxQueryLayoutInfoEventPtr(wxEventPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def SetRequestedLength(self,arg0):
+        val = windows3c.wxQueryLayoutInfoEvent_SetRequestedLength(self.this,arg0)
+        return val
+    def GetRequestedLength(self):
+        val = windows3c.wxQueryLayoutInfoEvent_GetRequestedLength(self.this)
+        return val
+    def SetFlags(self,arg0):
+        val = windows3c.wxQueryLayoutInfoEvent_SetFlags(self.this,arg0)
+        return val
+    def GetFlags(self):
+        val = windows3c.wxQueryLayoutInfoEvent_GetFlags(self.this)
+        return val
+    def SetSize(self,arg0):
+        val = windows3c.wxQueryLayoutInfoEvent_SetSize(self.this,arg0.this)
+        return val
+    def GetSize(self):
+        val = windows3c.wxQueryLayoutInfoEvent_GetSize(self.this)
+        val = wxSizePtr(val)
+        val.thisown = 1
+        return val
+    def SetOrientation(self,arg0):
+        val = windows3c.wxQueryLayoutInfoEvent_SetOrientation(self.this,arg0)
+        return val
+    def GetOrientation(self):
+        val = windows3c.wxQueryLayoutInfoEvent_GetOrientation(self.this)
+        return val
+    def SetAlignment(self,arg0):
+        val = windows3c.wxQueryLayoutInfoEvent_SetAlignment(self.this,arg0)
+        return val
+    def GetAlignment(self):
+        val = windows3c.wxQueryLayoutInfoEvent_GetAlignment(self.this)
+        return val
+    def __repr__(self):
+        return "<C wxQueryLayoutInfoEvent instance>"
+class wxQueryLayoutInfoEvent(wxQueryLayoutInfoEventPtr):
+    def __init__(self,this):
+        self.this = this
+
+
+
+
+class wxCalculateLayoutEventPtr(wxEventPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def SetFlags(self,arg0):
+        val = windows3c.wxCalculateLayoutEvent_SetFlags(self.this,arg0)
+        return val
+    def GetFlags(self):
+        val = windows3c.wxCalculateLayoutEvent_GetFlags(self.this)
+        return val
+    def SetRect(self,arg0):
+        val = windows3c.wxCalculateLayoutEvent_SetRect(self.this,arg0.this)
+        return val
+    def GetRect(self):
+        val = windows3c.wxCalculateLayoutEvent_GetRect(self.this)
+        val = wxRectPtr(val)
+        val.thisown = 1
+        return val
+    def __repr__(self):
+        return "<C wxCalculateLayoutEvent instance>"
+class wxCalculateLayoutEvent(wxCalculateLayoutEventPtr):
+    def __init__(self,this):
+        self.this = this
+
+
+
+
+class wxSashLayoutWindowPtr(wxSashWindowPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def GetAlignment(self):
+        val = windows3c.wxSashLayoutWindow_GetAlignment(self.this)
+        return val
+    def GetOrientation(self):
+        val = windows3c.wxSashLayoutWindow_GetOrientation(self.this)
+        return val
+    def SetAlignment(self,arg0):
+        val = windows3c.wxSashLayoutWindow_SetAlignment(self.this,arg0)
+        return val
+    def SetDefaultSize(self,arg0):
+        val = windows3c.wxSashLayoutWindow_SetDefaultSize(self.this,arg0.this)
+        return val
+    def SetOrientation(self,arg0):
+        val = windows3c.wxSashLayoutWindow_SetOrientation(self.this,arg0)
+        return val
+    def __repr__(self):
+        return "<C wxSashLayoutWindow instance>"
+class wxSashLayoutWindow(wxSashLayoutWindowPtr):
+    def __init__(self,arg0,arg1,*args) :
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        try: argl[1] = argl[1].this
+        except: pass
+        args = tuple(argl)
+        self.this = apply(windows3c.new_wxSashLayoutWindow,(arg0.this,arg1,)+args)
+        self.thisown = 1
+        wx._StdWindowCallbacks(self)
+        wx._checkForCallback(self, 'OnCalculateLayout',    wxEVT_CALCULATE_LAYOUT)
+        wx._checkForCallback(self, 'OnQueryLayoutInfo',    wxEVT_QUERY_LAYOUT_INFO)
+
+
+
+
+class wxLayoutAlgorithmPtr :
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __del__(self):
+        if self.thisown == 1 :
+            windows3c.delete_wxLayoutAlgorithm(self.this)
+    def LayoutMDIFrame(self,arg0,*args):
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        args = tuple(argl)
+        val = apply(windows3c.wxLayoutAlgorithm_LayoutMDIFrame,(self.this,arg0.this,)+args)
+        return val
+    def LayoutFrame(self,arg0,*args):
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        args = tuple(argl)
+        val = apply(windows3c.wxLayoutAlgorithm_LayoutFrame,(self.this,arg0.this,)+args)
+        return val
+    def __repr__(self):
+        return "<C wxLayoutAlgorithm instance>"
+class wxLayoutAlgorithm(wxLayoutAlgorithmPtr):
+    def __init__(self) :
+        self.this = windows3c.new_wxLayoutAlgorithm()
+        self.thisown = 1
+
+
+
+
+
+
+#-------------- FUNCTION WRAPPERS ------------------
+
+
+
+#-------------- VARIABLE WRAPPERS ------------------
+
+wxSASH_TOP = windows3c.wxSASH_TOP
+wxSASH_RIGHT = windows3c.wxSASH_RIGHT
+wxSASH_BOTTOM = windows3c.wxSASH_BOTTOM
+wxSASH_LEFT = windows3c.wxSASH_LEFT
+wxSASH_NONE = windows3c.wxSASH_NONE
+wxEVT_SASH_DRAGGED = windows3c.wxEVT_SASH_DRAGGED
+wxSW_3D = windows3c.wxSW_3D
+wxSASH_STATUS_OK = windows3c.wxSASH_STATUS_OK
+wxSASH_STATUS_OUT_OF_RANGE = windows3c.wxSASH_STATUS_OUT_OF_RANGE
+wxLAYOUT_HORIZONTAL = windows3c.wxLAYOUT_HORIZONTAL
+wxLAYOUT_VERTICAL = windows3c.wxLAYOUT_VERTICAL
+wxLAYOUT_NONE = windows3c.wxLAYOUT_NONE
+wxLAYOUT_TOP = windows3c.wxLAYOUT_TOP
+wxLAYOUT_LEFT = windows3c.wxLAYOUT_LEFT
+wxLAYOUT_RIGHT = windows3c.wxLAYOUT_RIGHT
+wxLAYOUT_BOTTOM = windows3c.wxLAYOUT_BOTTOM
+wxEVT_QUERY_LAYOUT_INFO = windows3c.wxEVT_QUERY_LAYOUT_INFO
+wxEVT_CALCULATE_LAYOUT = windows3c.wxEVT_CALCULATE_LAYOUT
index 4e8a78529edbef445cab8b9c0e80dd6fe93bbe01..e1f789b42feabc24796a030bd8dac0582c884444 100644 (file)
  * and things like that.
  *
  * $Log$
- * Revision 1.4  1999/01/14 14:33:56  VZ
- * 1. NOT_FOUND -> wxNOT_FOUND
- * 2. wxString::Left(), Right(), Before(), After() clean up
- * 3. wxLocale updates
+ * Revision 1.5  1999/01/30 07:31:09  RD
+ * Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
  *
- * Revision 1.3  1998/12/21 19:59:01  RD
- *
- * Now compiles with /GX- on MSW.
+ * Various cleanup, tweaks, minor additions, etc. to maintain
+ * compatibility with the current wxWindows.
  *
  ************************************************************************/
 
@@ -635,6 +632,8 @@ extern "C" SWIGEXPORT(void,initcmndlgsc)();
 extern "C" SWIGEXPORT(void,initstattoolc)();
 extern "C" SWIGEXPORT(void,initframesc)();
 extern "C" SWIGEXPORT(void,initutilsc)();
+extern "C" SWIGEXPORT(void,initwindows3c)();
+
 
 static int _wrap_wxPyDefaultPosition_set(PyObject *val) {
 
@@ -1222,7 +1221,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxMAJOR_VERSION", PyInt_FromLong((long) wxMAJOR_VERSION));
         PyDict_SetItemString(d,"wxMINOR_VERSION", PyInt_FromLong((long) wxMINOR_VERSION));
         PyDict_SetItemString(d,"wxRELEASE_NUMBER", PyInt_FromLong((long) wxRELEASE_NUMBER));
-        PyDict_SetItemString(d,"wxNOT_FOUND", PyInt_FromLong((long) NOT_FOUND));
+        PyDict_SetItemString(d,"wxNOT_FOUND", PyInt_FromLong((long) wxNOT_FOUND));
         PyDict_SetItemString(d,"wxVSCROLL", PyInt_FromLong((long) wxVSCROLL));
         PyDict_SetItemString(d,"wxHSCROLL", PyInt_FromLong((long) wxHSCROLL));
         PyDict_SetItemString(d,"wxCAPTION", PyInt_FromLong((long) wxCAPTION));
@@ -1258,6 +1257,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxDEFAULT_FRAME_STYLE", PyInt_FromLong((long) wxDEFAULT_FRAME_STYLE));
         PyDict_SetItemString(d,"wxDEFAULT_DIALOG_STYLE", PyInt_FromLong((long) wxDEFAULT_DIALOG_STYLE));
         PyDict_SetItemString(d,"wxFRAME_TOOL_WINDOW", PyInt_FromLong((long) wxFRAME_TOOL_WINDOW));
+        PyDict_SetItemString(d,"wxCLIP_CHILDREN", PyInt_FromLong((long) wxCLIP_CHILDREN));
         PyDict_SetItemString(d,"wxRETAINED", PyInt_FromLong((long) wxRETAINED));
         PyDict_SetItemString(d,"wxBACKINGSTORE", PyInt_FromLong((long) wxBACKINGSTORE));
         PyDict_SetItemString(d,"wxTB_3DBUTTONS", PyInt_FromLong((long) wxTB_3DBUTTONS));
@@ -1729,7 +1729,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxEVT_COMMAND_TAB_SEL_CHANGING", PyInt_FromLong((long) wxEVT_COMMAND_TAB_SEL_CHANGING));
         PyDict_SetItemString(d,"wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED", PyInt_FromLong((long) wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED));
         PyDict_SetItemString(d,"wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING", PyInt_FromLong((long) wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING));
-        PyDict_SetItemString(d,"__version__", PyString_FromString("0.5.2"));
+        PyDict_SetItemString(d,"__version__", PyString_FromString("0.5.3"));
         PyDict_SetItemString(d,"cvar", SWIG_globals);
         SWIG_addvarlink(SWIG_globals,"wxPyDefaultPosition",_wrap_wxPyDefaultPosition_get, _wrap_wxPyDefaultPosition_set);
         SWIG_addvarlink(SWIG_globals,"wxPyDefaultSize",_wrap_wxPyDefaultSize_get, _wrap_wxPyDefaultSize_set);
@@ -1753,6 +1753,7 @@ SWIGEXPORT(void,initwxc)() {
     initcmndlgsc();
     initstattoolc();
     initframesc();
+    initwindows3c();
 #ifndef SEPARATE
     initutilsc();
 #endif
@@ -1792,12 +1793,15 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_long","_signed_long",0);
         SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
         SWIG_RegisterMapping("_wxBitmapButton","_class_wxBitmapButton",0);
+        SWIG_RegisterMapping("_wxSashWindow","_class_wxSashWindow",0);
         SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
         SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxSashEvent","_wxSashEvent",0);
         SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
         SWIG_RegisterMapping("_wxListEvent","_class_wxListEvent",0);
         SWIG_RegisterMapping("_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0);
         SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
+        SWIG_RegisterMapping("_wxSashLayoutWindow","_class_wxSashLayoutWindow",0);
         SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
         SWIG_RegisterMapping("_wxPrinterDC","_class_wxPrinterDC",0);
         SWIG_RegisterMapping("_class_wxMenuItem","_wxMenuItem",0);
@@ -1818,9 +1822,11 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
         SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
         SWIG_RegisterMapping("_wxToolBar","_class_wxToolBar",0);
+        SWIG_RegisterMapping("_class_wxLayoutAlgorithm","_wxLayoutAlgorithm",0);
         SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
         SWIG_RegisterMapping("_wxMiniFrame","_class_wxMiniFrame",0);
         SWIG_RegisterMapping("_class_wxNotebookEvent","_wxNotebookEvent",0);
+        SWIG_RegisterMapping("_class_wxSashWindow","_wxSashWindow",0);
         SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
         SWIG_RegisterMapping("_uint","_unsigned_int",0);
         SWIG_RegisterMapping("_uint","_int",0);
@@ -1832,6 +1838,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
         SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
         SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
+        SWIG_RegisterMapping("_class_wxSashLayoutWindow","_wxSashLayoutWindow",0);
         SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
         SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
         SWIG_RegisterMapping("_wxTreeItemData","_class_wxTreeItemData",0);
@@ -1856,6 +1863,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxListItem","_class_wxListItem",0);
         SWIG_RegisterMapping("_class_wxToolBar","_wxToolBar",0);
         SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
+        SWIG_RegisterMapping("_wxCalculateLayoutEvent","_class_wxCalculateLayoutEvent",0);
         SWIG_RegisterMapping("_EBool","_signed_int",0);
         SWIG_RegisterMapping("_EBool","_int",0);
         SWIG_RegisterMapping("_EBool","_wxWindowID",0);
@@ -1907,6 +1915,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxStaticText","_wxStaticText",0);
         SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
         SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
+        SWIG_RegisterMapping("_wxSashEvent","_class_wxSashEvent",0);
         SWIG_RegisterMapping("_class_wxMenuEvent","_wxMenuEvent",0);
         SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
         SWIG_RegisterMapping("_wxMouseEvent","_class_wxMouseEvent",0);
@@ -1945,14 +1954,17 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxListItem","_wxListItem",0);
         SWIG_RegisterMapping("_class_wxPen","_wxPen",0);
         SWIG_RegisterMapping("_class_wxFileDialog","_wxFileDialog",0);
+        SWIG_RegisterMapping("_wxQueryLayoutInfoEvent","_class_wxQueryLayoutInfoEvent",0);
         SWIG_RegisterMapping("_short","_WXTYPE",0);
         SWIG_RegisterMapping("_short","_unsigned_short",0);
         SWIG_RegisterMapping("_short","_signed_short",0);
         SWIG_RegisterMapping("_class_wxStaticBox","_wxStaticBox",0);
+        SWIG_RegisterMapping("_wxLayoutAlgorithm","_class_wxLayoutAlgorithm",0);
         SWIG_RegisterMapping("_class_wxScrollEvent","_wxScrollEvent",0);
         SWIG_RegisterMapping("_wxJoystickEvent","_class_wxJoystickEvent",0);
         SWIG_RegisterMapping("_class_wxChoice","_wxChoice",0);
         SWIG_RegisterMapping("_class_wxSlider","_wxSlider",0);
+        SWIG_RegisterMapping("_class_wxCalculateLayoutEvent","_wxCalculateLayoutEvent",0);
         SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
         SWIG_RegisterMapping("_wxFrame","_class_wxFrame",0);
         SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
@@ -2031,6 +2043,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
         SWIG_RegisterMapping("_wxColourData","_class_wxColourData",0);
         SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
+        SWIG_RegisterMapping("_class_wxQueryLayoutInfoEvent","_wxQueryLayoutInfoEvent",0);
         SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
         SWIG_RegisterMapping("_wxMDIClientWindow","_class_wxMDIClientWindow",0);
         SWIG_RegisterMapping("_class_wxFontDialog","_wxFontDialog",0);
index 30c6bf58309bb6ffdd5223dc523667a997607042..de6677ae79a35f5f222ad09e4305d0f2ecb151f0 100644 (file)
@@ -23,6 +23,8 @@ from windows2 import *
 
 from cmndlgs import *
 
+from windows3 import *
+
 from utils import *
 class wxPyAppPtr(wxEvtHandlerPtr):
     def __init__(self,this):
@@ -114,7 +116,7 @@ _wxSetDictionary = wxc._wxSetDictionary
 wxMAJOR_VERSION = wxc.wxMAJOR_VERSION
 wxMINOR_VERSION = wxc.wxMINOR_VERSION
 wxRELEASE_NUMBER = wxc.wxRELEASE_NUMBER
-NOT_FOUND = wxc.NOT_FOUND
+wxNOT_FOUND = wxc.wxNOT_FOUND
 wxVSCROLL = wxc.wxVSCROLL
 wxHSCROLL = wxc.wxHSCROLL
 wxCAPTION = wxc.wxCAPTION
@@ -150,6 +152,7 @@ wxDIALOG_MODELESS = wxc.wxDIALOG_MODELESS
 wxDEFAULT_FRAME_STYLE = wxc.wxDEFAULT_FRAME_STYLE
 wxDEFAULT_DIALOG_STYLE = wxc.wxDEFAULT_DIALOG_STYLE
 wxFRAME_TOOL_WINDOW = wxc.wxFRAME_TOOL_WINDOW
+wxCLIP_CHILDREN = wxc.wxCLIP_CHILDREN
 wxRETAINED = wxc.wxRETAINED
 wxBACKINGSTORE = wxc.wxBACKINGSTORE
 wxTB_3DBUTTONS = wxc.wxTB_3DBUTTONS
@@ -1093,6 +1096,20 @@ def EVT_GRID_LABEL_RCLICK(win, fn):
     win.Connect(-1, -1, wxEVT_GRID_LABEL_RCLICK, fn)
 
 
+# wxSashWindow
+def EVT_SASH_DRAGGED(win, id, func):
+    win.Connect(id, -1, wxEVT_SASH_DRAGGED, func)
+
+def EVT_SASH_DRAGGED_RANGE(win, id1, id2, func):
+    win.Connect(id1, id2, wxEVT_SASH_DRAGGED, func)
+
+def EVT_QUERY_LAYOUT_INFO(win, func):
+    win.Connect(-1, -1, wxEVT_EVT_QUERY_LAYOUT_INFO, func)
+
+def EVT_CALCULATE_LAYOUT(win, func):
+    win.Connect(-1, -1, wxEVT_EVT_CALCULATE_LAYOUT, func)
+
+
 
 
 #----------------------------------------------------------------------
@@ -1122,6 +1139,10 @@ wxNamedColor = wxNamedColour
 wxPyDefaultPosition.Set(-1,-1)
 wxPyDefaultSize.Set(-1,-1)
 
+# aliases so that C++ documentation applies:
+wxDefaultPosition = wxPyDefaultPosition
+wxDefaultSize     = wxPyDefaultSize
+
 #----------------------------------------------------------------------
 
 ## class wxPyStdOutWindow(wxFrame):
@@ -1189,8 +1210,15 @@ class wxApp(wxPyApp):
 #----------------------------------------------------------------------------
 #
 # $Log$
-# Revision 1.3  1998/12/21 19:59:03  RD
-# Now compiles with /GX- on MSW.
+# Revision 1.4  1999/01/30 07:31:12  RD
+# Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+#
+# Various cleanup, tweaks, minor additions, etc. to maintain
+# compatibility with the current wxWindows.
+#
+# Revision 1.8  1999/01/29 21:13:42  HH
+# Added aliases for wxDefaultPosition and wxDefaultSize (from wxPy..) in _extras,
+# so that C++ documentation applies.
 #
 # Revision 1.7  1998/11/25 08:45:21  RD
 #
index f28a74f802156e9c5cc470d5aafac5f81b1aae30..c8742eb5c2eccb1248678371b10e799d5724599a 100644 (file)
@@ -114,7 +114,7 @@ public:
     %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
 
 
-    void AddSeparator(void);
+    void AddSeparator();
 
     // Ignoge the clientData for now...
     %addmethods {
@@ -131,8 +131,18 @@ public:
                                  isToggle, xPos, yPos, NULL,
                                  shortHelpString, longHelpString);
         }
+
+        wxToolBarTool* AddSimpleTool(int toolIndex,
+                               const wxBitmap& bitmap,
+                               const wxString& shortHelpString = wxPyEmptyStr,
+                               const wxString& longHelpString = wxPyEmptyStr) {
+            return self->AddTool(toolIndex, bitmap, wxNullBitmap,
+                                 FALSE, -1, -1, NULL,
+                                 shortHelpString, longHelpString);
+        }
     }
 
+
 //    void DrawTool(wxMemoryDC& memDC, wxToolBarTool* tool);
     void EnableTool(int toolIndex, const bool enable);
 #ifdef __WXMSW__
@@ -157,7 +167,7 @@ public:
     //void OnRightClick(int toolIndex, float x, float y);
 
     bool Realize();
-    
+
     void SetToolLongHelp(int toolIndex, const wxString& helpString);
     void SetToolShortHelp(int toolIndex, const wxString& helpString);
     void SetMargins(const wxSize& size);
@@ -201,7 +211,14 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.5  1999/01/30 07:30:15  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.4  1998/12/17 14:07:43  RR
+//
 //   Removed minor differences between wxMSW and wxGTK
 //
 // Revision 1.3  1998/12/15 20:41:23  RD
diff --git a/utils/wxPython/src/windows3.i b/utils/wxPython/src/windows3.i
new file mode 100644 (file)
index 0000000..c8c038a
--- /dev/null
@@ -0,0 +1,193 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        windows3.i
+// Purpose:     SWIG definitions of MORE window classes
+//
+// Author:      Robin Dunn
+//
+// Created:     22-Dec-1998
+// RCS-ID:      $Id$
+// Copyright:   (c) 1998 by Total Control Software
+// Licence:     wxWindows license
+/////////////////////////////////////////////////////////////////////////////
+
+%module windows3
+
+%{
+#include "helpers.h"
+#include <wx/sashwin.h>
+#include <wx/laywin.h>
+%}
+
+//----------------------------------------------------------------------
+
+%include typemaps.i
+%include my_typemaps.i
+
+// Import some definitions of other classes, etc.
+%import _defs.i
+%import misc.i
+%import gdi.i
+%import windows.i
+%import windows2.i
+%import mdi.i
+%import events.i
+
+%pragma(python) code = "import wx"
+
+//---------------------------------------------------------------------------
+
+enum wxSashEdgePosition {
+    wxSASH_TOP = 0,
+    wxSASH_RIGHT,
+    wxSASH_BOTTOM,
+    wxSASH_LEFT,
+    wxSASH_NONE = 100
+};
+
+enum {
+    wxEVT_SASH_DRAGGED,
+    wxSW_3D,
+};
+
+enum wxSashDragStatus
+{
+    wxSASH_STATUS_OK,
+    wxSASH_STATUS_OUT_OF_RANGE
+};
+
+
+class wxSashEvent : public wxCommandEvent {
+public:
+    void SetEdge(wxSashEdgePosition edge);
+    wxSashEdgePosition GetEdge();
+    void SetDragRect(const wxRect& rect);
+    wxRect GetDragRect();
+    void SetDragStatus(wxSashDragStatus status);
+    wxSashDragStatus GetDragStatus();
+};
+
+
+
+class wxSashWindow: public wxWindow {
+public:
+    wxSashWindow(wxWindow* parent, wxWindowID id,
+                 const wxPoint& pos = wxPyDefaultPosition,
+                 const wxSize& size = wxPyDefaultSize,
+                 long style = wxCLIP_CHILDREN | wxSW_3D,
+                 const char* name = "sashWindow");
+
+    %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
+
+    bool GetSashVisible(wxSashEdgePosition edge);
+    int GetDefaultBorderSize();
+    int GetEdgeMargin(wxSashEdgePosition edge);
+    int GetExtraBorderSize();
+    int GetMaximumSizeX();
+    int GetMaximumSizeY();
+    int GetMinimumSizeX();
+    int GetMinimumSizeY();
+    bool HasBorder(wxSashEdgePosition edge);
+    void SetDefaultBorderSize(int width);
+    void SetExtraBorderSize(int width);
+    void SetMaximumSizeX(int min);
+    void SetMaximumSizeY(int min);
+    void SetMinimumSizeX(int min);
+    void SetMinimumSizeY(int min);
+    void SetSashVisible(wxSashEdgePosition edge, bool visible);
+    void SetSashBorder(wxSashEdgePosition edge, bool hasBorder);
+
+};
+
+
+//---------------------------------------------------------------------------
+
+enum wxLayoutOrientation {
+    wxLAYOUT_HORIZONTAL,
+    wxLAYOUT_VERTICAL
+};
+
+enum wxLayoutAlignment {
+    wxLAYOUT_NONE,
+    wxLAYOUT_TOP,
+    wxLAYOUT_LEFT,
+    wxLAYOUT_RIGHT,
+    wxLAYOUT_BOTTOM,
+};
+
+
+enum {
+     wxEVT_QUERY_LAYOUT_INFO,
+     wxEVT_CALCULATE_LAYOUT,
+};
+
+
+class wxQueryLayoutInfoEvent: public wxEvent {
+public:
+
+    void SetRequestedLength(int length);
+    int GetRequestedLength();
+    void SetFlags(int flags);
+    int GetFlags();
+    void SetSize(const wxSize& size);
+    wxSize GetSize();
+    void SetOrientation(wxLayoutOrientation orient);
+    wxLayoutOrientation GetOrientation();
+    void SetAlignment(wxLayoutAlignment align);
+    wxLayoutAlignment GetAlignment();
+};
+
+
+
+class wxCalculateLayoutEvent: public wxEvent {
+public:
+    void SetFlags(int flags);
+    int GetFlags();
+    void SetRect(const wxRect& rect);
+    wxRect GetRect();
+};
+
+
+class wxSashLayoutWindow: public wxSashWindow {
+public:
+    wxSashLayoutWindow(wxWindow* parent, wxWindowID id,
+                       const wxPoint& pos = wxPyDefaultPosition,
+                       const wxSize& size = wxPyDefaultSize,
+                       long style = wxCLIP_CHILDREN | wxSW_3D,
+                       const char* name = "layoutWindow");
+
+    %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
+    %pragma(python) addtomethod = "__init__:wx._checkForCallback(self, 'OnCalculateLayout',    wxEVT_CALCULATE_LAYOUT)"
+    %pragma(python) addtomethod = "__init__:wx._checkForCallback(self, 'OnQueryLayoutInfo',    wxEVT_QUERY_LAYOUT_INFO)"
+
+
+    wxLayoutAlignment GetAlignment();
+    wxLayoutOrientation GetOrientation();
+    void SetAlignment(wxLayoutAlignment alignment);
+    void SetDefaultSize(const wxSize& size);
+    void SetOrientation(wxLayoutOrientation orientation);
+};
+
+//---------------------------------------------------------------------------
+
+class wxLayoutAlgorithm {
+public:
+    wxLayoutAlgorithm();
+    ~wxLayoutAlgorithm();
+
+    bool LayoutMDIFrame(wxMDIParentFrame* frame, wxRect* rect = NULL);
+    bool LayoutFrame(wxFrame* frame, wxWindow* mainWindow = NULL);
+};
+
+
+//---------------------------------------------------------------------------
+/////////////////////////////////////////////////////////////////////////////
+//
+// $Log$
+// Revision 1.1  1999/01/30 07:30:16  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
+//
+//
index cedd7db22d524ca3da0568d1a8fd80cb147ca2c5..4d4c8f1b51248f5c2ffd3bf4551323dd1c078f24 100644 (file)
@@ -36,6 +36,7 @@
 %import cmndlgs.i
 %import stattool.i
 %import frames.i
+%import windows3.i
 #ifndef SEPARATE
 %import utils.i
 #endif
@@ -46,7 +47,7 @@
 
 //---------------------------------------------------------------------------
 
-#define __version__ "0.5.2"
+#define __version__ "0.5.3"
 
 wxPoint     wxPyDefaultPosition;
 wxSize      wxPyDefaultSize;
@@ -114,6 +115,8 @@ extern "C" SWIGEXPORT(void,initcmndlgsc)();
 extern "C" SWIGEXPORT(void,initstattoolc)();
 extern "C" SWIGEXPORT(void,initframesc)();
 extern "C" SWIGEXPORT(void,initutilsc)();
+extern "C" SWIGEXPORT(void,initwindows3c)();
+
 
 %}
 
@@ -137,6 +140,7 @@ extern "C" SWIGEXPORT(void,initutilsc)();
     initcmndlgsc();
     initstattoolc();
     initframesc();
+    initwindows3c();
 #ifndef SEPARATE
     initutilsc();
 #endif
@@ -152,7 +156,14 @@ extern "C" SWIGEXPORT(void,initutilsc)();
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.4  1999/01/30 07:30:16  RD
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
 // Revision 1.3  1998/12/17 17:52:21  RD
+//
 // wxPython 0.5.2
 // Minor fixes and SWIG code generation for RR's changes.  MSW and GTK
 // versions are much closer now!
index d41551953bee8ccd9b834a53ed189e8cb8967d3c..b4b1238b86ce300a4e9a3187040583fb15298d82 100644 (file)
@@ -22,7 +22,7 @@ class TestSimpleControlsDlg(wxDialog):
     def __init__(self, parent, log):
         self.log = log
         wxDialog.__init__(self, parent, -1, "Test Simple Controls",
-                          wxPyDefaultPosition, wxSize(350, 350))
+                          wxDefaultPosition, wxSize(350, 350))
 
 
         sampleList = ['zero', 'one', 'two', 'three', 'four', 'five',
@@ -40,14 +40,14 @@ class TestSimpleControlsDlg(wxDialog):
         EVT_CHECKBOX(self, 20, self.EvtCheckBox)
         y_pos = y_pos + delta
 
-        rb = wxRadioBox(self, 30, "wxRadioBox", wxPoint(80, y_pos), wxPyDefaultSize,
+        rb = wxRadioBox(self, 30, "wxRadioBox", wxPoint(80, y_pos), wxDefaultSize,
                         sampleList, 3, wxRA_HORIZONTAL| wxNO_BORDER)
         EVT_RADIOBOX(self, 30, self.EvtRadioBox)
         width, height = rb.GetSizeTuple()
         y_pos = y_pos + height + 5
 
         wxStaticText(self, -1, "wxChoice", wxPoint(5, y_pos), wxSize(75, 20))
-        wxChoice(self, 40, wxPoint(80, y_pos), wxSize(95, 20), #wxPyDefaultSize,
+        wxChoice(self, 40, wxPoint(80, y_pos), wxSize(95, 20), #wxDefaultSize,
                  sampleList)
         EVT_CHOICE(self, 40, self.EvtChoice)
         y_pos = y_pos + delta
@@ -59,7 +59,7 @@ class TestSimpleControlsDlg(wxDialog):
         y_pos = y_pos + delta
 
         wxStaticText(self, -1, "wxListBox", wxPoint(5, y_pos), wxSize(75, 18))
-        lb = wxListBox(self, 60, wxPoint(80, y_pos), wxPyDefaultSize,
+        lb = wxListBox(self, 60, wxPoint(80, y_pos), wxDefaultSize,
                        sampleList, wxLB_SINGLE)
         EVT_LISTBOX(self, 60, self.EvtListBox)
         EVT_LISTBOX_DCLICK(self, 60, self.EvtListBoxDClick)
@@ -70,7 +70,7 @@ class TestSimpleControlsDlg(wxDialog):
 
 
         y_pos = y_pos + 15
-        wxButton(self, wxID_OK, ' OK ', wxPoint(80, y_pos), wxPyDefaultSize).SetDefault()
+        wxButton(self, wxID_OK, ' OK ', wxPoint(80, y_pos), wxDefaultSize).SetDefault()
         wxButton(self, wxID_CANCEL, ' Cancel ', wxPoint(140, y_pos))
 
 
@@ -114,12 +114,12 @@ class TestTimer(wxTimer):
 class TestLayoutConstraints(wxFrame):
     def __init__(self, parent):
         wxFrame.__init__(self, parent, -1, 'Test Layout Constraints',
-                         wxPyDefaultPosition, wxSize(500, 300))
+                         wxDefaultPosition, wxSize(500, 300))
 
         self.SetAutoLayout(true)
         EVT_BUTTON(self, 100, self.OnButton)
 
-        self.panelA = wxWindow(self, -1, wxPyDefaultPosition, wxPyDefaultSize,
+        self.panelA = wxWindow(self, -1, wxDefaultPosition, wxDefaultSize,
                                wxSIMPLE_BORDER)
         self.panelA.SetBackgroundColour(wxBLUE)
         lc = wxLayoutConstraints()
@@ -129,7 +129,7 @@ class TestLayoutConstraints(wxFrame):
         lc.right.PercentOf(self, wxRight, 50)
         self.panelA.SetConstraints(lc)
 
-        self.panelB = wxWindow(self, -1, wxPyDefaultPosition, wxPyDefaultSize,
+        self.panelB = wxWindow(self, -1, wxDefaultPosition, wxDefaultSize,
                                wxSIMPLE_BORDER)
         self.panelB.SetBackgroundColour(wxRED)
         lc = wxLayoutConstraints()
@@ -139,7 +139,7 @@ class TestLayoutConstraints(wxFrame):
         lc.left.RightOf(self.panelA, 10)
         self.panelB.SetConstraints(lc)
 
-        self.panelC = wxWindow(self, -1, wxPyDefaultPosition, wxPyDefaultSize,
+        self.panelC = wxWindow(self, -1, wxDefaultPosition, wxDefaultSize,
                                wxSIMPLE_BORDER)
         self.panelC.SetBackgroundColour(wxWHITE)
         lc = wxLayoutConstraints()
@@ -165,7 +165,7 @@ class TestLayoutConstraints(wxFrame):
         lc.width.AsIs       ()
         b.SetConstraints(lc);
 
-        self.panelD = wxWindow(self.panelC, -1, wxPyDefaultPosition, wxPyDefaultSize,
+        self.panelD = wxWindow(self.panelC, -1, wxDefaultPosition, wxDefaultSize,
                             wxSIMPLE_BORDER)
         self.panelD.SetBackgroundColour(wxGREEN)
         wxStaticText(self.panelD, -1, "Panel D", wxPoint(4, 4)).SetBackgroundColour(wxGREEN)
@@ -199,7 +199,7 @@ class TestLayoutConstraints(wxFrame):
 class TestGrid(wxFrame):
     def __init__(self, parent, log):
         wxFrame.__init__(self, parent, -1, 'Test Grid',
-                         wxPyDefaultPosition, wxSize(500, 300))
+                         wxDefaultPosition, wxSize(500, 300))
         self.log = log
 
         grid = wxGrid(self, -1)
@@ -244,14 +244,14 @@ class TestGrid(wxFrame):
 class ColoredPanel(wxWindow):
     def __init__(self, parent, color):
         wxWindow.__init__(self, parent, -1,
-                          wxPyDefaultPosition, wxPyDefaultSize, wxRAISED_BORDER)
+                          wxDefaultPosition, wxDefaultSize, wxRAISED_BORDER)
         self.SetBackgroundColour(color)
 
 
 class TestNotebookWindow(wxFrame):
     def __init__(self, parent, log):
         wxFrame.__init__(self, parent, -1, 'Test wxNotebook',
-                         wxPyDefaultPosition, wxPyDefaultSize)
+                         wxDefaultPosition, wxDefaultSize)
 
         nb = wxNotebook(self, -1)
 
@@ -305,7 +305,7 @@ class TestNotebookWindow(wxFrame):
 class TestSplitterWindow(wxFrame):
     def __init__(self, parent):
         wxFrame.__init__(self, parent, -1, 'Test wxSplitterWindow',
-                         wxPyDefaultPosition, wxSize(500, 300))
+                         wxDefaultPosition, wxSize(500, 300))
 
         splitter = wxSplitterWindow(self, -1)
 
@@ -374,7 +374,7 @@ class CustomStatusBar(wxStatusBar):
 class TestCustomStatusBar(wxFrame):
     def __init__(self, parent):
         wxFrame.__init__(self, parent, -1, 'Test Custom StatusBar',
-                         wxPyDefaultPosition, wxSize(500, 300))
+                         wxDefaultPosition, wxSize(500, 300))
         wxWindow(self, -1).SetBackgroundColour(wxNamedColour("WHITE"))
 
         self.sb = CustomStatusBar(self)
@@ -390,18 +390,20 @@ class TestCustomStatusBar(wxFrame):
 class TestToolBar(wxFrame):
     def __init__(self, parent, log):
         wxFrame.__init__(self, parent, -1, 'Test ToolBar',
-                         wxPyDefaultPosition, wxSize(500, 300))
+                         wxDefaultPosition, wxSize(500, 300))
         self.log = log
 
         wxWindow(self, -1).SetBackgroundColour(wxNamedColour("WHITE"))
 
         tb = self.CreateToolBar(wxTB_HORIZONTAL|wxNO_BORDER)
-        #tb = wxToolBar(self, -1, wxPyDefaultPosition, wxPyDefaultSize,
+        #tb = wxToolBar(self, -1, wxDefaultPosition, wxDefaultSize,
         #               wxTB_HORIZONTAL | wxNO_BORDER | wxTB_FLAT)
         #self.SetToolBar(tb)
 
+        self.CreateStatusBar()
+
         tb.AddTool(10, wxNoRefBitmap('bitmaps/new.bmp',   wxBITMAP_TYPE_BMP),
-                        wxNullBitmap, false, -1, -1, "New")
+                        wxNullBitmap, false, -1, -1, "New", "Long help for 'New'")
         EVT_TOOL(self, 10, self.OnToolClick)
         EVT_TOOL_RCLICKED(self, 10, self.OnToolRClick)
 
@@ -492,18 +494,147 @@ class TestTreeCtrlPanel(wxPanel):
 class TestTreeCtrl(wxFrame):
     def __init__(self, parent, log):
         wxFrame.__init__(self, parent, -1, 'Test TreeCtrl',
-                         wxPyDefaultPosition, wxSize(250, 300))
+                         wxDefaultPosition, wxSize(250, 300))
 
         p = TestTreeCtrlPanel(self, log)
 
 
+#---------------------------------------------------------------------------
+
+class TestSashWindow(wxMDIParentFrame):
+    NEW_WINDOW       = 5000
+    TOGGLE_WINDOW    = 5001
+    QUIT             = 5002
+    ID_WINDOW_TOP    = 5100
+    ID_WINDOW_LEFT1  = 5101
+    ID_WINDOW_LEFT2  = 5102
+    ID_WINDOW_BOTTOM = 5103
+
+
+    def __init__(self, parent, log):
+        wxMDIParentFrame.__init__(self, parent, -1, 'Test Sash Window',
+                                  wxDefaultPosition, wxSize(250, 300))
+
+        self.log = log
+        menu = wxMenu()
+        menu.Append(self.NEW_WINDOW, "&New Window")
+        menu.Append(self.TOGGLE_WINDOW, "&Toggle window")
+        menu.Append(self.QUIT, "E&xit")
+
+        menubar = wxMenuBar()
+        menubar.Append(menu, "&File")
+
+        self.SetMenuBar(menubar)
+        self.CreateStatusBar()
+
+        EVT_MENU(self, self.NEW_WINDOW,    self.OnNewWindow)
+        EVT_MENU(self, self.TOGGLE_WINDOW, self.OnToggleWindow)
+        EVT_MENU(self, self.QUIT,          self.OnQuit)
+
+        EVT_SASH_DRAGGED_RANGE(self, self.ID_WINDOW_TOP,
+                               self.ID_WINDOW_BOTTOM, self.OnSashDrag)
+
+
+        # Create some layout windows
+        # A window like a toolbar
+        win = wxSashLayoutWindow(self, self.ID_WINDOW_TOP, wxDefaultPosition,
+                                 wxSize(200, 30), wxNO_BORDER|wxSW_3D)
+        win.SetDefaultSize(wxSize(1000, 30))
+        win.SetOrientation(wxLAYOUT_HORIZONTAL)
+        win.SetAlignment(wxLAYOUT_TOP)
+        win.SetBackgroundColour(wxColour(255, 0, 0))
+        win.SetSashVisible(wxSASH_BOTTOM, true)
+
+        self.topWindow = win
+
+
+        # A window like a statusbar
+        win = wxSashLayoutWindow(self, self.ID_WINDOW_BOTTOM,
+                                 wxDefaultPosition, wxSize(200, 30),
+                                 wxNO_BORDER|wxSW_3D)
+        win.SetDefaultSize(wxSize(1000, 30))
+        win.SetOrientation(wxLAYOUT_HORIZONTAL)
+        win.SetAlignment(wxLAYOUT_BOTTOM)
+        win.SetBackgroundColour(wxColour(0, 0, 255))
+        win.SetSashVisible(wxSASH_TOP, true)
+
+        self.bottomWindow = win
+
+
+        # A window to the left of the client window
+        win =  wxSashLayoutWindow(self, self.ID_WINDOW_LEFT1,
+                                  wxDefaultPosition, wxSize(200, 30),
+                                  wxNO_BORDER|wxSW_3D)
+        win.SetDefaultSize(wxSize(120, 1000))
+        win.SetOrientation(wxLAYOUT_VERTICAL)
+        win.SetAlignment(wxLAYOUT_LEFT)
+        win.SetBackgroundColour(wxColour(0, 255, 0))
+        win.SetSashVisible(wxSASH_RIGHT, TRUE)
+        win.SetExtraBorderSize(10)
+
+        textWindow = wxTextCtrl(win, -1, "", wxDefaultPosition, wxDefaultSize,
+                                wxTE_MULTILINE|wxSUNKEN_BORDER)
+        textWindow.SetValue("A help window")
+
+        self.leftWindow1 = win
+
+
+        # Another window to the left of the client window
+        win = wxSashLayoutWindow(self, self.ID_WINDOW_LEFT2,
+                                 wxDefaultPosition, wxSize(200, 30),
+                                 wxNO_BORDER|wxSW_3D)
+        win.SetDefaultSize(wxSize(120, 1000))
+        win.SetOrientation(wxLAYOUT_VERTICAL)
+        win.SetAlignment(wxLAYOUT_LEFT)
+        win.SetBackgroundColour(wxColour(0, 255, 255))
+        win.SetSashVisible(wxSASH_RIGHT, TRUE)
+
+        self.leftWindow2 = win
+
+
+    def OnNewWindow(self, event):
+        pass
+
+    def OnToggleWindow(self, event):
+        pass
+
+    def OnQuit(self, event):
+        self.Close(true)
+
+    def OnSashDrag(self, event):
+        if event.GetDragStatus() == wxSASH_STATUS_OUT_OF_RANGE:
+            return
+
+        eID = event.GetId()
+        if eID == self.ID_WINDOW_TOP:
+            self.topWindow.SetDefaultSize(wxSize(1000, event.GetDragRect().height))
+
+        elif eID == self.ID_WINDOW_LEFT1:
+            self.leftWindow1.SetDefaultSize(wxSize(event.GetDragRect().width, 1000))
+
+
+        elif eID == self.ID_WINDOW_LEFT2:
+            self.leftWindow2.SetDefaultSize(wxSize(event.GetDragRect().width, 1000))
+
+        elif eID == self.ID_WINDOW_BOTTOM:
+            self.bottomWindow.SetDefaultSize(wxSize(1000, event.GetDragRect().height))
+
+        wxLayoutAlgorithm().LayoutMDIFrame(self)
+
+        # Leaves bits of itself behind sometimes
+        self.GetClientWindow().Refresh()
+
+
+    def OnSize(self, event):
+        wxLayoutAlgorithm().LayoutMDIFrame(self)
+
 #---------------------------------------------------------------------------
 #---------------------------------------------------------------------------
 #---------------------------------------------------------------------------
 
 class AppFrame(wxFrame):
     def __init__(self, parent, id, title):
-        wxFrame.__init__(self, parent, id, title, wxPyDefaultPosition,
+        wxFrame.__init__(self, parent, id, title, wxDefaultPosition,
                          wxSize(420, 200))
         if wxPlatform == '__WXMSW__':
             self.icon = wxIcon('bitmaps/mondrian.ico', wxBITMAP_TYPE_ICO)
@@ -519,7 +650,7 @@ class AppFrame(wxFrame):
         self.mainmenu.Append(menu, '&Tests')
         self.SetMenuBar(self.mainmenu)
 
-        self.log = wxTextCtrl(self, -1, '', wxPyDefaultPosition, wxPyDefaultSize,
+        self.log = wxTextCtrl(self, -1, '', wxDefaultPosition, wxDefaultSize,
                               wxTE_MULTILINE|wxTE_READONLY)
         self.log.WriteText('Test 4:\n')
         (w, self.charHeight) = self.log.GetTextExtent('X')
@@ -609,6 +740,10 @@ class AppFrame(wxFrame):
         menu.Append(mID, 'T&ree Control')
         EVT_MENU(self, mID, self.OnTestTreeCtrl)
 
+        mID = NewId()
+        menu.Append(mID, 'S&ash Window and Layout Algorithm')
+        EVT_MENU(self, mID, self.OnTestSashWindow)
+
         return menu
 
 
@@ -755,6 +890,9 @@ class AppFrame(wxFrame):
         win = TestTreeCtrl(self, self)
         win.Show(true)
 
+    def OnTestSashWindow(self, event):
+        win = TestSashWindow(self, self)
+        win.Show(true)
 
 #---------------------------------------------------------------------------
 
@@ -804,6 +942,12 @@ if __name__ == '__main__':
 #----------------------------------------------------------------------------
 #
 # $Log$
+# Revision 1.12  1999/01/30 07:31:33  RD
+# Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+#
+# Various cleanup, tweaks, minor additions, etc. to maintain
+# compatibility with the current wxWindows.
+#
 # Revision 1.11  1999/01/29 16:17:59  HH
 # In test4's toolbar sample, changed NULL to wxNullBitmap to prevent SIGSEVS
 # with wxGTK. The sample works now.