1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Common dialogs demo
4 // Author: Julian Smart
5 // Modified by: ABX (2004) - adjustementd for conditional building
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
15 #define USE_COLOURDLG_GENERIC \
18 ( defined(__WXMSW__) || defined(__WXMAC__) ) && \
19 !defined(__WXUNIVERSAL__) \
23 #define USE_DIRDLG_GENERIC \
26 ( defined(__WXMSW__) || defined(__WXMAC__) ) && \
27 !defined(__WXUNIVERSAL__) \
30 #define USE_FILEDLG_GENERIC \
33 ( defined(__WXMSW__) || defined(__WXMAC__) || defined(__WXPM__) ) && \
34 !defined(__WXUNIVERSAL__) \
37 #define USE_FONTDLG_GENERIC \
40 ( defined(__WXMSW__) || defined(__WXPM__) ) && \
41 !defined(__WXUNIVERSAL__) \
45 #define USE_MODAL_PRESENTATION 1
47 // Define a new application type
48 class MyApp
: public wxApp
54 wxColour m_canvasTextColour
;
57 // A custom modeless dialog
58 class MyModelessDialog
: public wxDialog
61 MyModelessDialog(wxWindow
*parent
);
63 void OnButton(wxCommandEvent
& event
);
64 void OnClose(wxCloseEvent
& event
);
70 // A custom modal dialog
71 class MyModalDialog
: public wxDialog
74 MyModalDialog(wxWindow
*parent
);
76 void OnButton(wxCommandEvent
& event
);
86 // Define a new frame type
87 class MyFrame
: public wxFrame
90 MyFrame(wxWindow
*parent
, const wxString
& title
);
92 void MessageBox(wxCommandEvent
& event
);
95 void ChooseColour(wxCommandEvent
& event
);
96 #endif // wxUSE_COLOURDLG
99 void ChooseFont(wxCommandEvent
& event
);
100 #endif // wxUSE_FONTDLG
103 void LogDialog(wxCommandEvent
& event
);
104 #endif // wxUSE_LOG_DIALOG
107 void SingleChoice(wxCommandEvent
& event
);
108 void MultiChoice(wxCommandEvent
& event
);
109 #endif // wxUSE_CHOICEDLG
112 void TextEntry(wxCommandEvent
& event
);
113 void PasswordEntry(wxCommandEvent
& event
);
114 #endif // wxUSE_TEXTDLG
117 void NumericEntry(wxCommandEvent
& event
);
118 #endif // wxUSE_NUMBERDLG
121 void FileOpen(wxCommandEvent
& event
);
122 void FileOpen2(wxCommandEvent
& event
);
123 void FilesOpen(wxCommandEvent
& event
);
124 void FileSave(wxCommandEvent
& event
);
125 #endif // wxUSE_FILEDLG
127 #if USE_FILEDLG_GENERIC
128 void FileOpenGeneric(wxCommandEvent
& event
);
129 void FilesOpenGeneric(wxCommandEvent
& event
);
130 void FileSaveGeneric(wxCommandEvent
& event
);
131 #endif // USE_FILEDLG_GENERIC
134 void DirChoose(wxCommandEvent
& event
);
135 void DirChooseNew(wxCommandEvent
& event
);
136 #endif // wxUSE_DIRDLG
138 #if USE_DIRDLG_GENERIC
139 void GenericDirChoose(wxCommandEvent
& event
);
140 #endif // USE_DIRDLG_GENERIC
142 #if wxUSE_STARTUP_TIPS
143 void ShowTip(wxCommandEvent
& event
);
144 #endif // wxUSE_STARTUP_TIPS
146 #if USE_MODAL_PRESENTATION
147 void ModalDlg(wxCommandEvent
& event
);
148 void ModelessDlg(wxCommandEvent
& event
);
149 #endif // USE_MODAL_PRESENTATION
151 #if wxUSE_PROGRESSDLG
152 void ShowProgress(wxCommandEvent
& event
);
153 #endif // wxUSE_PROGRESSDLG
156 void ShowBusyInfo(wxCommandEvent
& event
);
157 #endif // wxUSE_BUSYINFO
159 #if wxUSE_FINDREPLDLG
160 void ShowFindDialog(wxCommandEvent
& event
);
161 void ShowReplaceDialog(wxCommandEvent
& event
);
162 void OnFindDialog(wxFindDialogEvent
& event
);
163 #endif // wxUSE_FINDREPLDLG
165 #if USE_COLOURDLG_GENERIC
166 void ChooseColourGeneric(wxCommandEvent
& event
);
167 #endif // USE_COLOURDLG_GENERIC
169 #if USE_FONTDLG_GENERIC
170 void ChooseFontGeneric(wxCommandEvent
& event
);
171 #endif // USE_FONTDLG_GENERIC
173 void OnExit(wxCommandEvent
& event
);
177 void DoDirChoose(int style
);
178 #endif // wxUSE_DIRDLG
180 #if USE_MODAL_PRESENTATION
181 MyModelessDialog
*m_dialog
;
182 #endif // USE_MODAL_PRESENTATION
184 #if wxUSE_FINDREPLDLG
185 wxFindReplaceData m_findData
;
187 wxFindReplaceDialog
*m_dlgFind
,
189 #endif // wxUSE_FINDREPLDLG
191 wxColourData m_clrData
;
193 DECLARE_EVENT_TABLE()
196 class MyCanvas
: public wxScrolledWindow
199 MyCanvas(wxWindow
*parent
) :
200 wxScrolledWindow(parent
,wxID_ANY
,wxDefaultPosition
,wxDefaultSize
,wxNO_FULL_REPAINT_ON_RESIZE
) { }
202 void OnPaint(wxPaintEvent
& event
);
204 DECLARE_EVENT_TABLE()
211 DIALOGS_CHOOSE_COLOUR
= wxID_HIGHEST
,
212 DIALOGS_CHOOSE_COLOUR_GENERIC
,
214 DIALOGS_CHOOSE_FONT_GENERIC
,
216 DIALOGS_SINGLE_CHOICE
,
217 DIALOGS_MULTI_CHOICE
,
219 DIALOGS_PASSWORD_ENTRY
,
224 DIALOGS_FILE_OPEN_GENERIC
,
225 DIALOGS_FILES_OPEN_GENERIC
,
226 DIALOGS_FILE_SAVE_GENERIC
,
228 DIALOGS_DIRNEW_CHOOSE
,
229 DIALOGS_GENERIC_DIR_CHOOSE
,
235 DIALOGS_MODELESS_BTN
,