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