]>
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 | |
31 | #define wxFIRST_MDI_CHILD 4100 | |
32 | #define wxLAST_MDI_CHILD 4600 | |
26e335b8 RD |
33 | |
34 | ||
35 | ||
ab1f7d2a RD |
36 | MustHaveApp(wxMDIParentFrame); |
37 | ||
7bf85405 RD |
38 | class wxMDIParentFrame : public wxFrame { |
39 | public: | |
2b9048c5 RD |
40 | %pythonAppend wxMDIParentFrame "self._setOORInfo(self)" |
41 | %pythonAppend wxMDIParentFrame() "" | |
d14a1e28 | 42 | |
7bf85405 | 43 | wxMDIParentFrame(wxWindow *parent, |
d5573410 RD |
44 | const wxWindowID id=-1, |
45 | const wxString& title = wxPyEmptyString, | |
b68dc582 RD |
46 | const wxPoint& pos = wxDefaultPosition, |
47 | const wxSize& size = wxDefaultSize, | |
7bf85405 | 48 | long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, |
137b5242 | 49 | const wxString& name = wxPyFrameNameStr); |
1b8c7ba6 | 50 | %RenameCtor(PreMDIParentFrame, wxMDIParentFrame()); |
7bf85405 | 51 | |
09f3d4e6 | 52 | bool Create(wxWindow *parent, |
d5573410 RD |
53 | const wxWindowID id=-1, |
54 | const wxString& title = wxPyEmptyString, | |
09f3d4e6 RD |
55 | const wxPoint& pos = wxDefaultPosition, |
56 | const wxSize& size = wxDefaultSize, | |
57 | long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, | |
137b5242 | 58 | const wxString& name = wxPyFrameNameStr); |
9c039d08 | 59 | |
0122b7e3 | 60 | |
7bf85405 RD |
61 | void ActivateNext(); |
62 | void ActivatePrevious(); | |
63 | void ArrangeIcons(); | |
64 | void Cascade(); | |
7bf85405 RD |
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 | ||
3ca6a5f0 | 72 | |
fb5e0af0 | 73 | #ifdef __WXMSW__ |
3ca6a5f0 BP |
74 | wxMenu* GetWindowMenu(); |
75 | void SetWindowMenu(wxMenu* menu); | |
7bf85405 | 76 | void SetToolBar(wxToolBar* toolbar); |
fb5e0af0 | 77 | #endif |
7bf85405 RD |
78 | void Tile(); |
79 | }; | |
80 | ||
81 | //--------------------------------------------------------------------------- | |
82 | ||
ab1f7d2a RD |
83 | MustHaveApp(wxMDIChildFrame); |
84 | ||
7bf85405 RD |
85 | class wxMDIChildFrame : public wxFrame { |
86 | public: | |
2b9048c5 RD |
87 | %pythonAppend wxMDIChildFrame "self._setOORInfo(self)" |
88 | %pythonAppend wxMDIChildFrame() "" | |
b39c3fa0 | 89 | %typemap(out) wxMDIChildFrame*; // turn off this typemap |
d14a1e28 | 90 | |
7bf85405 | 91 | wxMDIChildFrame(wxMDIParentFrame* parent, |
d5573410 RD |
92 | const wxWindowID id=-1, |
93 | const wxString& title = wxPyEmptyString, | |
b68dc582 RD |
94 | const wxPoint& pos = wxDefaultPosition, |
95 | const wxSize& size = wxDefaultSize, | |
7bf85405 | 96 | long style = wxDEFAULT_FRAME_STYLE, |
137b5242 | 97 | const wxString& name = wxPyFrameNameStr); |
1b8c7ba6 | 98 | %RenameCtor(PreMDIChildFrame, wxMDIChildFrame()); |
09f3d4e6 | 99 | |
b39c3fa0 RD |
100 | // Turn it back on again |
101 | %typemap(out) wxMDIChildFrame* { $result = wxPyMake_wxObject($1, $owner); } | |
102 | ||
09f3d4e6 | 103 | bool Create(wxMDIParentFrame* parent, |
d5573410 RD |
104 | const wxWindowID id=-1, |
105 | const wxString& title = wxPyEmptyString, | |
09f3d4e6 RD |
106 | const wxPoint& pos = wxDefaultPosition, |
107 | const wxSize& size = wxDefaultSize, | |
108 | long style = wxDEFAULT_FRAME_STYLE, | |
137b5242 | 109 | const wxString& name = wxPyFrameNameStr); |
7bf85405 RD |
110 | |
111 | void Activate(); | |
4e4a4ac8 | 112 | void Maximize(bool maximize=true); |
7bf85405 | 113 | void Restore(); |
fb5e0af0 | 114 | |
7bf85405 RD |
115 | }; |
116 | ||
117 | ||
118 | //--------------------------------------------------------------------------- | |
119 | ||
ab1f7d2a RD |
120 | MustHaveApp(wxMDIClientWindow); |
121 | ||
7bf85405 RD |
122 | class wxMDIClientWindow : public wxWindow { |
123 | public: | |
2b9048c5 RD |
124 | %pythonAppend wxMDIClientWindow "self._setOORInfo(self)" |
125 | %pythonAppend wxMDIClientWindow() "" | |
b39c3fa0 | 126 | %typemap(out) wxMDIClientWindow*; // turn off this typemap |
d14a1e28 | 127 | |
7bf85405 | 128 | wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0); |
1b8c7ba6 | 129 | %RenameCtor(PreMDIClientWindow, wxMDIClientWindow()); |
09f3d4e6 | 130 | |
b39c3fa0 RD |
131 | // Turn it back on again |
132 | %typemap(out) wxMDIClientWindow* { $result = wxPyMake_wxObject($1, $owner); } | |
133 | ||
09f3d4e6 | 134 | bool Create(wxMDIParentFrame* parent, long style = 0); |
7bf85405 RD |
135 | }; |
136 | ||
d14a1e28 | 137 | |
7bf85405 | 138 | //--------------------------------------------------------------------------- |