]> git.saurik.com Git - wxWidgets.git/blame - wxPython/src/mdi.i
suppress an assert when a combobox receives WM_KILLFOCUS while it is being destroyed
[wxWidgets.git] / wxPython / src / mdi.i
CommitLineData
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
42const int IDM_WINDOWTILE = 4001;
43const int IDM_WINDOWTILEHOR = 4001;
44const int IDM_WINDOWCASCADE = 4002;
45const int IDM_WINDOWICONS = 4003;
46const int IDM_WINDOWNEXT = 4004;
47const int IDM_WINDOWTILEVERT = 4005;
48const int wxFIRST_MDI_CHILD = 4100;
49const int wxLAST_MDI_CHILD = 4600;
50
51
52
7bf85405
RD
53class wxMDIParentFrame : public wxFrame {
54public:
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
97class wxMDIChildFrame : public wxFrame {
98public:
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
128class wxMDIClientWindow : public wxWindow {
129public:
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//---------------------------------------------------------------------------