]>
Commit | Line | Data |
---|---|---|
7bf85405 RD |
1 | ///////////////////////////////////////////////////////////////////////////// |
2 | // Name: mdi.i | |
3 | // Purpose: MDI related class definitions for wxPython | |
4 | // | |
5 | // Author: Robin Dunn | |
6 | // | |
7 | // Created: 5/26/98 | |
8 | // RCS-ID: $Id$ | |
9 | // Copyright: (c) 1998 by Total Control Software | |
10 | // Licence: wxWindows license | |
11 | ///////////////////////////////////////////////////////////////////////////// | |
12 | ||
13 | ||
03e9bead RD |
14 | %module mdi |
15 | ||
16 | %{ | |
7bf85405 RD |
17 | #include "helpers.h" |
18 | %} | |
19 | ||
20 | //---------------------------------------------------------------------- | |
21 | ||
22 | %include typemaps.i | |
23 | %include my_typemaps.i | |
24 | ||
25 | // Import some definitions of other classes, etc. | |
26 | %import _defs.i | |
27 | %import misc.i | |
28 | %import windows.i | |
9c039d08 RD |
29 | %import frames.i |
30 | ||
b8b8dda7 | 31 | %pragma(python) code = "import wx" |
7bf85405 RD |
32 | |
33 | //---------------------------------------------------------------------- | |
34 | ||
137b5242 RD |
35 | %{ |
36 | // Put some wx default wxChar* values into wxStrings. | |
37 | DECLARE_DEF_STRING(FrameNameStr); | |
38 | %} | |
39 | ||
40 | //---------------------------------------------------------------------- | |
41 | ||
26e335b8 RD |
42 | const int IDM_WINDOWTILE = 4001; |
43 | const int IDM_WINDOWTILEHOR = 4001; | |
44 | const int IDM_WINDOWCASCADE = 4002; | |
45 | const int IDM_WINDOWICONS = 4003; | |
46 | const int IDM_WINDOWNEXT = 4004; | |
47 | const int IDM_WINDOWTILEVERT = 4005; | |
48 | const int wxFIRST_MDI_CHILD = 4100; | |
49 | const int wxLAST_MDI_CHILD = 4600; | |
50 | ||
51 | ||
52 | ||
7bf85405 RD |
53 | class wxMDIParentFrame : public wxFrame { |
54 | public: | |
55 | wxMDIParentFrame(wxWindow *parent, | |
56 | const wxWindowID id, | |
57 | const wxString& title, | |
b68dc582 RD |
58 | const wxPoint& pos = wxDefaultPosition, |
59 | const wxSize& size = wxDefaultSize, | |
7bf85405 | 60 | long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, |
137b5242 | 61 | const wxString& name = wxPyFrameNameStr); |
09f3d4e6 | 62 | %name(wxPreMDIParentFrame)wxMDIParentFrame(); |
7bf85405 | 63 | |
09f3d4e6 RD |
64 | bool Create(wxWindow *parent, |
65 | const wxWindowID id, | |
66 | const wxString& title, | |
67 | const wxPoint& pos = wxDefaultPosition, | |
68 | const wxSize& size = wxDefaultSize, | |
69 | long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, | |
137b5242 | 70 | const wxString& name = wxPyFrameNameStr); |
9c039d08 | 71 | |
0122b7e3 | 72 | %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" |
17c0e08c | 73 | %pragma(python) addtomethod = "wxPreMDIParentFrame:val._setOORInfo(val)" |
0122b7e3 | 74 | |
7bf85405 RD |
75 | void ActivateNext(); |
76 | void ActivatePrevious(); | |
77 | void ArrangeIcons(); | |
78 | void Cascade(); | |
7bf85405 RD |
79 | wxMDIChildFrame* GetActiveChild(); |
80 | wxMDIClientWindow* GetClientWindow(); | |
81 | wxWindow* GetToolBar(); | |
82 | ||
83 | // TODO: This isn't handled by the standard event-table system... | |
84 | //wxMDIClientWindow* OnCreateClient(); | |
85 | ||
3ca6a5f0 | 86 | |
fb5e0af0 | 87 | #ifdef __WXMSW__ |
3ca6a5f0 BP |
88 | wxMenu* GetWindowMenu(); |
89 | void SetWindowMenu(wxMenu* menu); | |
7bf85405 | 90 | void SetToolBar(wxToolBar* toolbar); |
fb5e0af0 | 91 | #endif |
7bf85405 RD |
92 | void Tile(); |
93 | }; | |
94 | ||
95 | //--------------------------------------------------------------------------- | |
96 | ||
97 | class wxMDIChildFrame : public wxFrame { | |
98 | public: | |
99 | wxMDIChildFrame(wxMDIParentFrame* parent, | |
100 | const wxWindowID id, | |
101 | const wxString& title, | |
b68dc582 RD |
102 | const wxPoint& pos = wxDefaultPosition, |
103 | const wxSize& size = wxDefaultSize, | |
7bf85405 | 104 | long style = wxDEFAULT_FRAME_STYLE, |
137b5242 | 105 | const wxString& name = wxPyFrameNameStr); |
09f3d4e6 RD |
106 | %name(wxPreMDIChildFrame)wxMDIChildFrame(); |
107 | ||
108 | bool Create(wxMDIParentFrame* parent, | |
109 | const wxWindowID id, | |
110 | const wxString& title, | |
111 | const wxPoint& pos = wxDefaultPosition, | |
112 | const wxSize& size = wxDefaultSize, | |
113 | long style = wxDEFAULT_FRAME_STYLE, | |
137b5242 | 114 | const wxString& name = wxPyFrameNameStr); |
7bf85405 | 115 | |
0122b7e3 | 116 | %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" |
17c0e08c | 117 | %pragma(python) addtomethod = "wxPreMDIChildFrame:val._setOORInfo(val)" |
9c039d08 | 118 | |
7bf85405 | 119 | void Activate(); |
ab9bc19b | 120 | void Maximize(bool maximize); |
7bf85405 | 121 | void Restore(); |
fb5e0af0 | 122 | |
7bf85405 RD |
123 | }; |
124 | ||
125 | ||
126 | //--------------------------------------------------------------------------- | |
127 | ||
128 | class wxMDIClientWindow : public wxWindow { | |
129 | public: | |
130 | wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0); | |
09f3d4e6 RD |
131 | %name(wxPreMDIClientWindow)wxMDIClientWindow(); |
132 | ||
09f3d4e6 RD |
133 | bool Create(wxMDIParentFrame* parent, long style = 0); |
134 | ||
0122b7e3 | 135 | %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" |
17c0e08c | 136 | %pragma(python) addtomethod = "wxPreMDIClientWindow:val._setOORInfo(val)" |
7bf85405 RD |
137 | }; |
138 | ||
139 | //--------------------------------------------------------------------------- |