]> git.saurik.com Git - wxWidgets.git/blob - wxPython/src/_mdi.i
Avoid using the OOR typemap in the constructors
[wxWidgets.git] / wxPython / src / _mdi.i
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: _mdi.i
3 // Purpose: SWIG interface for MDI related class definitions
4 //
5 // Author: Robin Dunn
6 //
7 // Created: 26-May-1998
8 // RCS-ID: $Id$
9 // Copyright: (c) 2003 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
12
13 // Not a %module
14
15
16 //---------------------------------------------------------------------------
17 %newgroup
18
19 %{
20 #include <wx/mdi.h>
21 %}
22
23 //---------------------------------------------------------------------------
24
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 wxFIRST_MDI_CHILD 4100
32 #define wxLAST_MDI_CHILD 4600
33
34
35
36 MustHaveApp(wxMDIParentFrame);
37
38 class wxMDIParentFrame : public wxFrame {
39 public:
40 %pythonAppend wxMDIParentFrame "self._setOORInfo(self)"
41 %pythonAppend wxMDIParentFrame() ""
42
43 wxMDIParentFrame(wxWindow *parent,
44 const wxWindowID id=-1,
45 const wxString& title = wxPyEmptyString,
46 const wxPoint& pos = wxDefaultPosition,
47 const wxSize& size = wxDefaultSize,
48 long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
49 const wxString& name = wxPyFrameNameStr);
50 %name(PreMDIParentFrame)wxMDIParentFrame();
51
52 bool Create(wxWindow *parent,
53 const wxWindowID id=-1,
54 const wxString& title = wxPyEmptyString,
55 const wxPoint& pos = wxDefaultPosition,
56 const wxSize& size = wxDefaultSize,
57 long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
58 const wxString& name = wxPyFrameNameStr);
59
60
61 void ActivateNext();
62 void ActivatePrevious();
63 void ArrangeIcons();
64 void Cascade();
65 wxMDIChildFrame* GetActiveChild();
66 wxMDIClientWindow* GetClientWindow();
67 wxWindow* GetToolBar();
68
69 // TODO: This isn't handled by the standard event-table system...
70 //wxMDIClientWindow* OnCreateClient();
71
72
73 #ifdef __WXMSW__
74 wxMenu* GetWindowMenu();
75 void SetWindowMenu(wxMenu* menu);
76 void SetToolBar(wxToolBar* toolbar);
77 #endif
78 void Tile();
79 };
80
81 //---------------------------------------------------------------------------
82
83 MustHaveApp(wxMDIChildFrame);
84
85 class wxMDIChildFrame : public wxFrame {
86 public:
87 %pythonAppend wxMDIChildFrame "self._setOORInfo(self)"
88 %pythonAppend wxMDIChildFrame() ""
89 %typemap(out) wxMDIChildFrame*; // turn off this typemap
90
91 wxMDIChildFrame(wxMDIParentFrame* parent,
92 const wxWindowID id=-1,
93 const wxString& title = wxPyEmptyString,
94 const wxPoint& pos = wxDefaultPosition,
95 const wxSize& size = wxDefaultSize,
96 long style = wxDEFAULT_FRAME_STYLE,
97 const wxString& name = wxPyFrameNameStr);
98 %name(PreMDIChildFrame)wxMDIChildFrame();
99
100 // Turn it back on again
101 %typemap(out) wxMDIChildFrame* { $result = wxPyMake_wxObject($1, $owner); }
102
103 bool Create(wxMDIParentFrame* parent,
104 const wxWindowID id=-1,
105 const wxString& title = wxPyEmptyString,
106 const wxPoint& pos = wxDefaultPosition,
107 const wxSize& size = wxDefaultSize,
108 long style = wxDEFAULT_FRAME_STYLE,
109 const wxString& name = wxPyFrameNameStr);
110
111 void Activate();
112 void Maximize(bool maximize);
113 void Restore();
114
115 };
116
117
118 //---------------------------------------------------------------------------
119
120 MustHaveApp(wxMDIClientWindow);
121
122 class wxMDIClientWindow : public wxWindow {
123 public:
124 %pythonAppend wxMDIClientWindow "self._setOORInfo(self)"
125 %pythonAppend wxMDIClientWindow() ""
126 %typemap(out) wxMDIClientWindow*; // turn off this typemap
127
128 wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0);
129 %name(PreMDIClientWindow)wxMDIClientWindow();
130
131 // Turn it back on again
132 %typemap(out) wxMDIClientWindow* { $result = wxPyMake_wxObject($1, $owner); }
133
134 bool Create(wxMDIParentFrame* parent, long style = 0);
135 };
136
137
138 //---------------------------------------------------------------------------