]> git.saurik.com Git - wxWidgets.git/blob - utils/wxPython/src/mdi.i
Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
[wxWidgets.git] / utils / wxPython / src / mdi.i
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
14 %module mdi
15
16 %{
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
29 %import frames.i
30
31 %pragma(python) code = "import wx"
32
33 //----------------------------------------------------------------------
34
35 class wxMDIParentFrame : public wxFrame {
36 public:
37 wxMDIParentFrame(wxWindow *parent,
38 const wxWindowID id,
39 const wxString& title,
40 const wxPoint& pos = wxPyDefaultPosition,
41 const wxSize& size = wxPyDefaultSize,
42 long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
43 const char* name = "frame");
44
45 %pragma(python) addtomethod = "__init__:wx._StdFrameCallbacks(self)"
46
47 void ActivateNext();
48 void ActivatePrevious();
49 void ArrangeIcons();
50 void Cascade();
51 void GetClientSize(int* OUTPUT, int* OUTPUT);
52 wxMDIChildFrame* GetActiveChild();
53 wxMDIClientWindow* GetClientWindow();
54 wxWindow* GetToolBar();
55
56 // TODO: This isn't handled by the standard event-table system...
57 //wxMDIClientWindow* OnCreateClient();
58
59 #ifdef __WXMSW__
60 void SetToolBar(wxToolBar* toolbar);
61 #endif
62 void Tile();
63 };
64
65 //---------------------------------------------------------------------------
66
67 class wxMDIChildFrame : public wxFrame {
68 public:
69 wxMDIChildFrame(wxMDIParentFrame* parent,
70 const wxWindowID id,
71 const wxString& title,
72 const wxPoint& pos = wxPyDefaultPosition,
73 const wxSize& size = wxPyDefaultSize,
74 long style = wxDEFAULT_FRAME_STYLE,
75 const char* name = "frame");
76
77 %pragma(python) addtomethod = "__init__:wx._StdFrameCallbacks(self)"
78
79 void Activate();
80 void Maximize();
81 void Restore();
82
83 void SetMenuBar(wxMenuBar *menu_bar);
84 void SetClientSize(int width, int height);
85 void GetPosition(int* OUTPUT, int* OUTPUT) const ;
86
87 };
88
89
90 //---------------------------------------------------------------------------
91
92 class wxMDIClientWindow : public wxWindow {
93 public:
94 wxMDIClientWindow(wxMDIParentFrame* parent, long style = 0);
95 %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
96 %pragma(python) addtomethod = "__init__:wx._StdOnScrollCallbacks(self)"
97 };
98
99 //---------------------------------------------------------------------------
100 /////////////////////////////////////////////////////////////////////////////
101 //
102 // $Log$
103 // Revision 1.5 1998/12/15 20:41:21 RD
104 // Changed the import semantics from "from wxPython import *" to "from
105 // wxPython.wx import *" This is for people who are worried about
106 // namespace pollution, they can use "from wxPython import wx" and then
107 // prefix all the wxPython identifiers with "wx."
108 //
109 // Added wxTaskbarIcon for wxMSW.
110 //
111 // Made the events work for wxGrid.
112 //
113 // Added wxConfig.
114 //
115 // Added wxMiniFrame for wxGTK, (untested.)
116 //
117 // Changed many of the args and return values that were pointers to gdi
118 // objects to references to reflect changes in the wxWindows API.
119 //
120 // Other assorted fixes and additions.
121 //
122 // Revision 1.4 1998/10/02 06:40:41 RD
123 //
124 // Version 0.4 of wxPython for MSW.
125 //
126 // Revision 1.3 1998/08/18 19:48:18 RD
127 // more wxGTK compatibility things.
128 //
129 // It builds now but there are serious runtime problems...
130 //
131 // Revision 1.2 1998/08/15 07:36:39 RD
132 // - Moved the header in the .i files out of the code that gets put into
133 // the .cpp files. It caused CVS conflicts because of the RCS ID being
134 // different each time.
135 //
136 // - A few minor fixes.
137 //
138 // Revision 1.1 1998/08/09 08:25:51 RD
139 // Initial version
140 //
141 //