1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: SWIG definitions for the Common Dialog Classes
9 // Copyright: (c) 1998 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
17 #include <wx/colordlg.h>
18 #include <wx/dirdlg.h>
19 #include <wx/fontdlg.h>
20 #include <wx/printdlg.h>
23 //----------------------------------------------------------------------
26 %include my_typemaps.i
28 // Import some definitions of other classes, etc.
34 %pragma(python) code = "import wx"
36 //----------------------------------------------------------------------
44 wxColour& GetColour();
45 wxColour GetCustomColour(int i);
46 void SetChooseFull(int flag);
47 void SetColour(const wxColour& colour);
48 void SetCustomColour(int i, const wxColour& colour);
52 class wxColourDialog : public wxDialog {
54 wxColourDialog(wxWindow* parent, wxColourData* data = NULL);
56 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
58 wxColourData& GetColourData();
63 //----------------------------------------------------------------------
65 class wxDirDialog : public wxDialog {
67 wxDirDialog(wxWindow* parent,
68 char* message = "Choose a directory",
69 char* defaultPath = "",
71 const wxPoint& pos = wxPyDefaultPosition);
73 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
76 wxString GetMessage();
78 void SetMessage(const wxString& message);
79 void SetPath(const wxString& path);
83 //----------------------------------------------------------------------
85 class wxFileDialog : public wxDialog {
87 wxFileDialog(wxWindow* parent,
88 char* message = "Choose a file",
89 char* defaultDir = "",
90 char* defaultFile = "",
91 char* wildcard = "*.*",
93 const wxPoint& pos = wxPyDefaultPosition);
95 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
97 wxString GetDirectory();
98 wxString GetFilename();
100 wxString GetMessage();
103 wxString GetWildcard();
104 void SetDirectory(const wxString& directory);
105 void SetFilename(const wxString& setfilename);
106 void SetFilterIndex(int filterIndex);
107 void SetMessage(const wxString& message);
108 void SetPath(const wxString& path);
109 void SetStyle(long style);
110 void SetWildcard(const wxString& wildCard);
115 //----------------------------------------------------------------------
117 //TODO: wxMultipleChoiceDialog
119 //----------------------------------------------------------------------
121 class wxSingleChoiceDialog : public wxDialog {
124 // TODO: ignoring clientData for now...
125 // SWIG is messing up the &/*'s for some reason.
126 wxSingleChoiceDialog(wxWindow* parent,
129 int LCOUNT, wxString* LIST,
130 //char** clientData = NULL,
131 long style = wxOK | wxCANCEL | wxCENTRE,
132 wxPoint* pos = &wxPyDefaultPosition) {
133 return new wxSingleChoiceDialog(parent, *message, *caption,
134 LCOUNT, LIST, NULL, style, *pos);
138 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
141 wxString GetStringSelection();
142 void SetSelection(int sel);
147 //----------------------------------------------------------------------
149 class wxTextEntryDialog : public wxDialog {
151 wxTextEntryDialog(wxWindow* parent,
153 char* caption = "Input Text",
154 char* defaultValue = "",
155 long style = wxOK | wxCANCEL | wxCENTRE,
156 const wxPoint& pos = wxPyDefaultPosition);
158 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
161 void SetValue(const wxString& value);
165 //----------------------------------------------------------------------
172 void EnableEffects(bool enable);
173 bool GetAllowSymbols();
174 wxColour& GetColour();
175 wxFont GetChosenFont();
176 bool GetEnableEffects();
177 wxFont GetInitialFont();
179 void SetAllowSymbols(bool allowSymbols);
180 void SetChosenFont(const wxFont& font);
181 void SetColour(const wxColour& colour);
182 void SetInitialFont(const wxFont& font);
183 void SetRange(int min, int max);
184 void SetShowHelp(bool showHelp);
188 class wxFontDialog : public wxDialog {
190 wxFontDialog(wxWindow* parent, wxFontData* data = NULL);
192 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
194 wxFontData& GetFontData();
199 //----------------------------------------------------------------------
201 class wxPageSetupData {
206 void EnableHelp(bool flag);
207 void EnableMargins(bool flag);
208 void EnableOrientation(bool flag);
209 void EnablePaper(bool flag);
210 void EnablePrinter(bool flag);
211 wxPoint GetPaperSize();
212 wxPoint GetMarginTopLeft();
213 wxPoint GetMarginBottomRight();
214 wxPoint GetMinMarginTopLeft();
215 wxPoint GetMinMarginBottomRight();
216 int GetOrientation();
217 bool GetDefaultMinMargins();
218 bool GetEnableMargins();
219 bool GetEnableOrientation();
220 bool GetEnablePaper();
221 bool GetEnablePrinter();
222 bool GetEnableHelp();
223 bool GetDefaultInfo();
224 void SetPaperSize(const wxPoint& size);
225 void SetMarginTopLeft(const wxPoint& pt);
226 void SetMarginBottomRight(const wxPoint& pt);
227 void SetMinMarginTopLeft(const wxPoint& pt);
228 void SetMinMarginBottomRight(const wxPoint& pt);
229 void SetOrientation(int orientation);
230 void SetDefaultMinMargins(bool flag);
231 void SetDefaultInfo(bool flag);
235 class wxPageSetupDialog : public wxDialog {
237 wxPageSetupDialog(wxWindow* parent, wxPageSetupData* data = NULL);
239 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
241 wxPageSetupData& GetPageSetupData();
245 //----------------------------------------------------------------------
252 void EnableHelp(bool flag);
253 void EnablePageNumbers(bool flag);
254 void EnablePrintToFile(bool flag);
255 void EnableSelection(bool flag);
262 int GetOrientation();
264 void SetCollate(bool flag);
265 void SetFromPage(int page);
266 void SetMaxPage(int page);
267 void SetMinPage(int page);
268 void SetOrientation(int orientation);
269 void SetNoCopies(int n);
270 void SetPrintToFile(bool flag);
271 void SetSetupDialog(bool flag);
272 void SetToPage(int page);
276 class wxPrintDialog : public wxDialog {
278 wxPrintDialog(wxWindow* parent, wxPrintData* data = NULL);
280 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
282 wxPrintData& GetPrintData();
283 %new wxDC* GetPrintDC();
287 //----------------------------------------------------------------------
289 class wxMessageDialog : public wxDialog {
291 wxMessageDialog(wxWindow* parent,
293 char* caption = "Message box",
294 long style = wxOK | wxCANCEL | wxCENTRE,
295 const wxPoint& pos = wxPyDefaultPosition);
297 %pragma(python) addtomethod = "__init__:wx._StdDialogCallbacks(self)"
302 //----------------------------------------------------------------------
305 /////////////////////////////////////////////////////////////////////////////
308 // Revision 1.8 1998/12/17 14:07:25 RR
309 // Removed minor differences between wxMSW and wxGTK
311 // Revision 1.7 1998/12/15 20:41:14 RD
312 // Changed the import semantics from "from wxPython import *" to "from
313 // wxPython.wx import *" This is for people who are worried about
314 // namespace pollution, they can use "from wxPython import wx" and then
315 // prefix all the wxPython identifiers with "wx."
317 // Added wxTaskbarIcon for wxMSW.
319 // Made the events work for wxGrid.
323 // Added wxMiniFrame for wxGTK, (untested.)
325 // Changed many of the args and return values that were pointers to gdi
326 // objects to references to reflect changes in the wxWindows API.
328 // Other assorted fixes and additions.
330 // Revision 1.6 1998/11/25 08:45:22 RD
332 // Added wxPalette, wxRegion, wxRegionIterator, wxTaskbarIcon
333 // Added events for wxGrid
334 // Other various fixes and additions
336 // Revision 1.5 1998/11/15 23:03:43 RD
337 // Removing some ifdef's for wxGTK
339 // Revision 1.4 1998/10/02 06:40:34 RD
341 // Version 0.4 of wxPython for MSW.
343 // Revision 1.3 1998/08/18 19:48:13 RD
344 // more wxGTK compatibility things.
346 // It builds now but there are serious runtime problems...
348 // Revision 1.2 1998/08/15 07:36:25 RD
349 // - Moved the header in the .i files out of the code that gets put into
350 // the .cpp files. It caused CVS conflicts because of the RCS ID being
351 // different each time.
353 // - A few minor fixes.
355 // Revision 1.1 1998/08/09 08:25:49 RD