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);
 
  81     %property(ActiveChild, GetActiveChild, doc="See `GetActiveChild`");
 
  82     %property(ClientWindow, GetClientWindow, doc="See `GetClientWindow`");
 
  83 //    %property(ToolBar, GetToolBar, doc="See `GetToolBar`");
 
  87 //---------------------------------------------------------------------------
 
  89 MustHaveApp(wxMDIChildFrame);
 
  91 class wxMDIChildFrame : public wxFrame {
 
  93     %pythonAppend wxMDIChildFrame         "self._setOORInfo(self)"
 
  94     %pythonAppend wxMDIChildFrame()       ""
 
  95     %typemap(out) wxMDIChildFrame*;    // turn off this typemap
 
  97     wxMDIChildFrame(wxMDIParentFrame* parent,
 
  98                     const wxWindowID id=-1,
 
  99                     const wxString& title = wxPyEmptyString,
 
 100                     const wxPoint& pos = wxDefaultPosition,
 
 101                     const wxSize& size = wxDefaultSize,
 
 102                     long style = wxDEFAULT_FRAME_STYLE,
 
 103                     const wxString& name = wxPyFrameNameStr);
 
 104     %RenameCtor(PreMDIChildFrame, wxMDIChildFrame());
 
 106     // Turn it back on again
 
 107     %typemap(out) wxMDIChildFrame* { $result = wxPyMake_wxObject($1, $owner); }
 
 109     bool Create(wxMDIParentFrame* parent,
 
 110                     const wxWindowID id=-1,
 
 111                     const wxString& title = wxPyEmptyString,
 
 112                     const wxPoint& pos = wxDefaultPosition,
 
 113                     const wxSize& size = wxDefaultSize,
 
 114                     long style = wxDEFAULT_FRAME_STYLE,
 
 115                     const wxString& name = wxPyFrameNameStr);
 
 118     void Maximize(bool maximize=true);
 
 124 //---------------------------------------------------------------------------
 
 126 MustHaveApp(wxMDIClientWindow);
 
 128 class wxMDIClientWindow : public wxWindow {
 
 130     %pythonAppend wxMDIClientWindow         "self._setOORInfo(self)"
 
 131     %pythonAppend wxMDIClientWindow()       ""
 
 132     %typemap(out) wxMDIClientWindow*;    // turn off this typemap
 
 134     wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0);
 
 135     %RenameCtor(PreMDIClientWindow, wxMDIClientWindow());
 
 137     // Turn it back on again
 
 138     %typemap(out) wxMDIClientWindow* { $result = wxPyMake_wxObject($1, $owner); }
 
 140     bool Create(wxMDIParentFrame* parent, long style = 0);
 
 144 //---------------------------------------------------------------------------