1 /////////////////////////////////////////////////////////////////////////////
 
   3 // Purpose:     SWIG interface for MDI related class definitions
 
   7 // Created:     26-May-1998
 
   9 // Copyright:   (c) 2003 by Total Control Software
 
  10 // Licence:     wxWindows license
 
  11 /////////////////////////////////////////////////////////////////////////////
 
  16 //---------------------------------------------------------------------------
 
  23 //---------------------------------------------------------------------------
 
  25 #define IDM_WINDOWTILE          4001
 
  26 #define IDM_WINDOWTILEHOR       4001
 
  27 #define IDM_WINDOWCASCADE       4002
 
  28 #define IDM_WINDOWICONS         4003
 
  29 #define IDM_WINDOWNEXT          4004
 
  30 #define IDM_WINDOWTILEVERT      4005
 
  31 #define IDM_WINDOWPREV          4006
 
  32 #define wxFIRST_MDI_CHILD       4100
 
  33 #define wxLAST_MDI_CHILD        4600
 
  37 MustHaveApp(wxMDIParentFrame);
 
  39 class wxMDIParentFrame : public wxFrame {
 
  41     %pythonAppend wxMDIParentFrame         "self._setOORInfo(self)"
 
  42     %pythonAppend wxMDIParentFrame()       ""
 
  44     wxMDIParentFrame(wxWindow *parent,
 
  45                      const wxWindowID id=-1,
 
  46                      const wxString& title = wxPyEmptyString,
 
  47                      const wxPoint& pos = wxDefaultPosition,
 
  48                      const wxSize& size = wxDefaultSize,
 
  49                      long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
 
  50                      const wxString& name = wxPyFrameNameStr);
 
  51     %RenameCtor(PreMDIParentFrame, wxMDIParentFrame());
 
  53     bool Create(wxWindow *parent,
 
  54                      const wxWindowID id=-1,
 
  55                      const wxString& title = wxPyEmptyString,
 
  56                      const wxPoint& pos = wxDefaultPosition,
 
  57                      const wxSize& size = wxDefaultSize,
 
  58                      long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
 
  59                      const wxString& name = wxPyFrameNameStr);
 
  63     void ActivatePrevious();
 
  66     wxMDIChildFrame* GetActiveChild();
 
  67     wxMDIClientWindow* GetClientWindow();
 
  68     wxWindow* GetToolBar();
 
  70     // TODO:  This isn't handled by the standard event-table system...
 
  71     //wxMDIClientWindow* OnCreateClient();
 
  75     wxMenu* GetWindowMenu();
 
  76     void SetWindowMenu(wxMenu* menu);
 
  77     void SetToolBar(wxToolBar* toolbar);
 
  79     void Tile(wxOrientation orient = wxHORIZONTAL);
 
  82 //---------------------------------------------------------------------------
 
  84 MustHaveApp(wxMDIChildFrame);
 
  86 class wxMDIChildFrame : public wxFrame {
 
  88     %pythonAppend wxMDIChildFrame         "self._setOORInfo(self)"
 
  89     %pythonAppend wxMDIChildFrame()       ""
 
  90     %typemap(out) wxMDIChildFrame*;    // turn off this typemap
 
  92     wxMDIChildFrame(wxMDIParentFrame* parent,
 
  93                     const wxWindowID id=-1,
 
  94                     const wxString& title = wxPyEmptyString,
 
  95                     const wxPoint& pos = wxDefaultPosition,
 
  96                     const wxSize& size = wxDefaultSize,
 
  97                     long style = wxDEFAULT_FRAME_STYLE,
 
  98                     const wxString& name = wxPyFrameNameStr);
 
  99     %RenameCtor(PreMDIChildFrame, wxMDIChildFrame());
 
 101     // Turn it back on again
 
 102     %typemap(out) wxMDIChildFrame* { $result = wxPyMake_wxObject($1, $owner); }
 
 104     bool Create(wxMDIParentFrame* parent,
 
 105                     const wxWindowID id=-1,
 
 106                     const wxString& title = wxPyEmptyString,
 
 107                     const wxPoint& pos = wxDefaultPosition,
 
 108                     const wxSize& size = wxDefaultSize,
 
 109                     long style = wxDEFAULT_FRAME_STYLE,
 
 110                     const wxString& name = wxPyFrameNameStr);
 
 113     void Maximize(bool maximize=true);
 
 119 //---------------------------------------------------------------------------
 
 121 MustHaveApp(wxMDIClientWindow);
 
 123 class wxMDIClientWindow : public wxWindow {
 
 125     %pythonAppend wxMDIClientWindow         "self._setOORInfo(self)"
 
 126     %pythonAppend wxMDIClientWindow()       ""
 
 127     %typemap(out) wxMDIClientWindow*;    // turn off this typemap
 
 129     wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0);
 
 130     %RenameCtor(PreMDIClientWindow, wxMDIClientWindow());
 
 132     // Turn it back on again
 
 133     %typemap(out) wxMDIClientWindow* { $result = wxPyMake_wxObject($1, $owner); }
 
 135     bool Create(wxMDIParentFrame* parent, long style = 0);
 
 139 //---------------------------------------------------------------------------