X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/71622a6899ec1890c784c3f0b2e66b81fdc202da..01684023895926ab05098daeb595bc6113656e10:/samples/dialogs/dialogs.h diff --git a/samples/dialogs/dialogs.h b/samples/dialogs/dialogs.h index 6b0bcf8ce7..36836f1d3a 100644 --- a/samples/dialogs/dialogs.h +++ b/samples/dialogs/dialogs.h @@ -34,7 +34,13 @@ of MSW, MAC and OS2 #define USE_DLL 0 #endif -#if defined(__WXMSW__) && !defined(__WXWINCE__) +#if defined(__WXWINCE__) + #define USE_WXWINCE 1 +#else + #define USE_WXWINCE 0 +#endif + +#if defined(__WXMSW__) && !USE_WXWINCE #define USE_WXMSW 1 #else #define USE_WXMSW 0 @@ -46,7 +52,7 @@ of MSW, MAC and OS2 #define USE_WXMAC 0 #endif -#if defined(__WXMAC_OSX__) && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_2) +#if defined(__WXMAC_OSX__) && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_2) && USE_NATIVE_FONT_DIALOG_FOR_MACOSX #define USE_WXMACFONTDLG 1 #else #define USE_WXMACFONTDLG 0 @@ -71,20 +77,28 @@ of MSW, MAC and OS2 #define USE_DIRDLG_GENERIC \ ((USE_WXMSW || USE_WXMAC) && USE_GENERIC_DIALOGS && wxUSE_DIRDLG) #define USE_FILEDLG_GENERIC \ - ((USE_WXMSW || USE_WXMAC || USE_WXPM) && USE_GENERIC_DIALOGS && wxUSE_FILEDLG) + ((((USE_WXMSW || USE_WXMAC || USE_WXPM || USE_WXGTK) \ + && USE_GENERIC_DIALOGS) || USE_WXWINCE) && wxUSE_FILEDLG) #define USE_FONTDLG_GENERIC \ - ((USE_WXMSW || USE_WXMACFONTDLG ||USE_WXPM) && USE_GENERIC_DIALOGS && wxUSE_FONTDLG) - + ((USE_WXMSW || USE_WXMACFONTDLG || USE_WXPM) && USE_GENERIC_DIALOGS && wxUSE_FONTDLG) // Turn USE_MODAL_PRESENTATION to 0 if there is any reason for not presenting difference // between modal and modeless dialogs (ie. not implemented it in your port yet) -#if defined(__SMARTPHONE__) +#if defined(__SMARTPHONE__) || !wxUSE_BOOKCTRL #define USE_MODAL_PRESENTATION 0 #else #define USE_MODAL_PRESENTATION 1 #endif +// Turn USE_SETTINGS_DIALOG to 0 if supported +#if wxUSE_BOOKCTRL + #define USE_SETTINGS_DIALOG 1 +#else + #define USE_SETTINGS_DIALOG 0 +#endif + + // Define a new application type class MyApp: public wxApp { @@ -128,16 +142,97 @@ private: #endif // USE_MODAL_PRESENTATION +class StdButtonSizerDialog : public wxDialog +{ +public: + StdButtonSizerDialog(wxWindow *parent); + + void OnEvent(wxCommandEvent& event); + +private: + void EnableDisableControls(); + + wxCheckBox *m_chkboxAffirmativeButton; + wxRadioButton *m_radiobtnOk, + *m_radiobtnYes; + + wxCheckBox *m_chkboxDismissButton; + wxRadioButton *m_radiobtnClose, + *m_radiobtnCancel; + + wxCheckBox *m_chkboxApply, + *m_chkboxNo, + *m_chkboxHelp, + *m_chkboxNoDefault; + + wxSizer *m_buttonsSizer; + + DECLARE_EVENT_TABLE() +}; + +class TestDefaultActionDialog: public wxDialog +{ +public: + TestDefaultActionDialog( wxWindow *parent ); + + void OnListBoxDClick(wxCommandEvent& event); + void OnCatchListBoxDClick(wxCommandEvent& event); + +private: + bool m_catchListBoxDClick; + +private: + DECLARE_EVENT_TABLE() +}; + + +#if USE_SETTINGS_DIALOG +// Property sheet dialog +class SettingsDialog: public wxPropertySheetDialog +{ +DECLARE_CLASS(SettingsDialog) +public: + SettingsDialog(wxWindow* parent, int dialogType); + ~SettingsDialog(); + + wxPanel* CreateGeneralSettingsPage(wxWindow* parent); + wxPanel* CreateAestheticSettingsPage(wxWindow* parent); + +protected: + + enum { + ID_SHOW_TOOLTIPS = 100, + ID_AUTO_SAVE, + ID_AUTO_SAVE_MINS, + ID_LOAD_LAST_PROJECT, + + ID_APPLY_SETTINGS_TO, + ID_BACKGROUND_STYLE, + ID_FONT_SIZE + }; + + wxImageList* m_imageList; + +DECLARE_EVENT_TABLE() +}; + +#endif // USE_SETTINGS_DIALOG + // Define a new frame type class MyFrame: public wxFrame { public: MyFrame(wxWindow *parent, const wxString& title); + virtual ~MyFrame(); +#if wxUSE_MSGDLG void MessageBox(wxCommandEvent& event); + void MessageBoxInfo(wxCommandEvent& event); +#endif // wxUSE_MSGDLG #if wxUSE_COLOURDLG void ChooseColour(wxCommandEvent& event); + void GetColour(wxCommandEvent& event); #endif // wxUSE_COLOURDLG #if wxUSE_FONTDLG @@ -190,13 +285,24 @@ public: #if USE_MODAL_PRESENTATION void ModalDlg(wxCommandEvent& event); - void ModelessDlg(wxCommandEvent& event); #endif // USE_MODAL_PRESENTATION + void ModelessDlg(wxCommandEvent& event); + void DlgCenteredScreen(wxCommandEvent& event); + void DlgCenteredParent(wxCommandEvent& event); + void MiniFrame(wxCommandEvent& event); + void DlgOnTop(wxCommandEvent& event); #if wxUSE_PROGRESSDLG void ShowProgress(wxCommandEvent& event); #endif // wxUSE_PROGRESSDLG +#if wxUSE_ABOUTDLG + void ShowSimpleAboutDialog(wxCommandEvent& event); + void ShowFancyAboutDialog(wxCommandEvent& event); + void ShowFullAboutDialog(wxCommandEvent& event); + void ShowCustomAboutDialog(wxCommandEvent& event); +#endif // wxUSE_ABOUTDLG + #if wxUSE_BUSYINFO void ShowBusyInfo(wxCommandEvent& event); #endif // wxUSE_BUSYINFO @@ -215,7 +321,19 @@ public: void ChooseFontGeneric(wxCommandEvent& event); #endif // USE_FONTDLG_GENERIC + void OnPropertySheet(wxCommandEvent& event); + void OnRequestUserAttention(wxCommandEvent& event); +#if wxUSE_NOTIFICATION_MESSAGE + void OnNotifMsgAuto(wxCommandEvent& event); + void OnNotifMsgShow(wxCommandEvent& event); + void OnNotifMsgHide(wxCommandEvent& event); +#endif // wxUSE_NOTIFICATION_MESSAGE + + void OnStandardButtonsSizerDialog(wxCommandEvent& event); + + void OnTestDefaultActionDialog(wxCommandEvent& event); + void OnExit(wxCommandEvent& event); private: @@ -234,6 +352,10 @@ private: *m_dlgReplace; #endif // wxUSE_FINDREPLDLG +#if wxUSE_NOTIFICATION_MESSAGE + wxNotificationMessage *m_notifMsg; +#endif // wxUSE_NOTIFICATION_MESSAGE + wxColourData m_clrData; DECLARE_EVENT_TABLE() @@ -255,10 +377,12 @@ public: enum { DIALOGS_CHOOSE_COLOUR = wxID_HIGHEST, + DIALOGS_GET_COLOUR, DIALOGS_CHOOSE_COLOUR_GENERIC, DIALOGS_CHOOSE_FONT, DIALOGS_CHOOSE_FONT_GENERIC, DIALOGS_MESSAGE_BOX, + DIALOGS_MESSAGE_BOX_WXINFO, DIALOGS_SINGLE_CHOICE, DIALOGS_MULTI_CHOICE, DIALOGS_TEXT_ENTRY, @@ -278,12 +402,28 @@ enum DIALOGS_LOG_DIALOG, DIALOGS_MODAL, DIALOGS_MODELESS, + DIALOGS_CENTRE_SCREEN, + DIALOGS_CENTRE_PARENT, + DIALOGS_MINIFRAME, + DIALOGS_ONTOP, DIALOGS_MODELESS_BTN, DIALOGS_PROGRESS, + DIALOGS_ABOUTDLG_SIMPLE, + DIALOGS_ABOUTDLG_FANCY, + DIALOGS_ABOUTDLG_FULL, + DIALOGS_ABOUTDLG_CUSTOM, DIALOGS_BUSYINFO, DIALOGS_FIND, DIALOGS_REPLACE, - DIALOGS_REQUEST + DIALOGS_REQUEST, + DIALOGS_NOTIFY_AUTO, + DIALOGS_NOTIFY_SHOW, + DIALOGS_NOTIFY_HIDE, + DIALOGS_PROPERTY_SHEET, + DIALOGS_PROPERTY_SHEET_TOOLBOOK, + DIALOGS_PROPERTY_SHEET_BUTTONTOOLBOOK, + DIALOGS_STANDARD_BUTTON_SIZER_DIALOG, + DIALOGS_TEST_DEFAULT_ACTION }; #endif