]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/dialog.h
synchronize GTK2 minimum version in docs
[wxWidgets.git] / include / wx / dialog.h
index 7073e86214fce201cc91fee90cdff8e38d6aaa4c..c06fd359ffa8b5ebb71510c6bb941d47fd0b47f4 100644 (file)
@@ -26,7 +26,7 @@ class wxTextSizerWrapper;
 
 // Also see the bit summary table in wx/toplevel.h.
 
 
 // Also see the bit summary table in wx/toplevel.h.
 
-#define wxDIALOG_NO_PARENT      0x0100  // Don't make owned by apps top window
+#define wxDIALOG_NO_PARENT      0x00000020  // Don't make owned by apps top window
 
 #ifdef __WXWINCE__
 #define wxDEFAULT_DIALOG_STYLE  (wxCAPTION | wxMAXIMIZE | wxCLOSE_BOX | wxNO_BORDER)
 
 #ifdef __WXWINCE__
 #define wxDEFAULT_DIALOG_STYLE  (wxCAPTION | wxMAXIMIZE | wxCLOSE_BOX | wxNO_BORDER)
@@ -133,9 +133,16 @@ public:
     // platforms which have hardware buttons replacing OK/Cancel and such)
     wxSizer *CreateButtonSizer(long flags);
 
     // platforms which have hardware buttons replacing OK/Cancel and such)
     wxSizer *CreateButtonSizer(long flags);
 
+    // returns a sizer containing the given one and a static line separating it
+    // from the preceding elements if it's appropriate for the current platform
+    wxSizer *CreateSeparatedSizer(wxSizer *sizer);
+
     // returns the sizer containing CreateButtonSizer() below a separating
     // static line for the platforms which use static lines for items
     // separation (i.e. not Mac)
     // returns the sizer containing CreateButtonSizer() below a separating
     // static line for the platforms which use static lines for items
     // separation (i.e. not Mac)
+    //
+    // this is just a combination of CreateButtonSizer() and
+    // CreateSeparatedSizer()
     wxSizer *CreateSeparatedButtonSizer(long flags);
 
 #if wxUSE_BUTTON
     wxSizer *CreateSeparatedButtonSizer(long flags);
 
 #if wxUSE_BUTTON
@@ -242,6 +249,13 @@ private:
     // can be used as our parent or NULL if it can't
     wxWindow *CheckIfCanBeUsedAsParent(wxWindow *parent) const;
 
     // can be used as our parent or NULL if it can't
     wxWindow *CheckIfCanBeUsedAsParent(wxWindow *parent) const;
 
+    // Helper of OnCharHook() and OnCloseWindow(): find the appropriate button
+    // for closing the dialog and send a click event for it.
+    //
+    // Return true if we found a button to close the dialog and "clicked" it or
+    // false otherwise.
+    bool SendCloseButtonClickEvent();
+
     // handle Esc key presses
     void OnCharHook(wxKeyEvent& event);
 
     // handle Esc key presses
     void OnCharHook(wxKeyEvent& event);
 
@@ -303,6 +317,7 @@ public:
     // Create the scrolled window
     virtual wxScrolledWindow* CreateScrolledWindow(wxWindow* parent);
 
     // Create the scrolled window
     virtual wxScrolledWindow* CreateScrolledWindow(wxWindow* parent);
 
+#if wxUSE_BUTTON
     // Find a standard or horizontal box sizer
     virtual wxSizer* FindButtonSizer(bool stdButtonSizer, wxDialog* dialog, wxSizer* sizer, int& retBorder, int accumlatedBorder = 0);
 
     // Find a standard or horizontal box sizer
     virtual wxSizer* FindButtonSizer(bool stdButtonSizer, wxDialog* dialog, wxSizer* sizer, int& retBorder, int accumlatedBorder = 0);
 
@@ -314,6 +329,7 @@ public:
 
     // Find 'loose' main buttons in the existing layout and add them to the standard dialog sizer
     virtual bool FindLooseButtons(wxDialog* dialog, wxStdDialogButtonSizer* buttonSizer, wxSizer* sizer, int& count);
 
     // Find 'loose' main buttons in the existing layout and add them to the standard dialog sizer
     virtual bool FindLooseButtons(wxDialog* dialog, wxStdDialogButtonSizer* buttonSizer, wxSizer* sizer, int& count);
+#endif // wxUSE_BUTTON
 
     // Reparent the controls to the scrolled window, except those in buttonSizer
     virtual void ReparentControls(wxWindow* parent, wxWindow* reparentTo, wxSizer* buttonSizer = NULL);
 
     // Reparent the controls to the scrolled window, except those in buttonSizer
     virtual void ReparentControls(wxWindow* parent, wxWindow* reparentTo, wxSizer* buttonSizer = NULL);
@@ -334,9 +350,7 @@ public:
 #if defined(__WXUNIVERSAL__) && !defined(__WXMICROWIN__)
     #include "wx/univ/dialog.h"
 #else
 #if defined(__WXUNIVERSAL__) && !defined(__WXMICROWIN__)
     #include "wx/univ/dialog.h"
 #else
-    #if defined(__WXPALMOS__)
-        #include "wx/palmos/dialog.h"
-    #elif defined(__WXMSW__)
+    #if defined(__WXMSW__)
         #include "wx/msw/dialog.h"
     #elif defined(__WXMOTIF__)
         #include "wx/motif/dialog.h"
         #include "wx/msw/dialog.h"
     #elif defined(__WXMOTIF__)
         #include "wx/motif/dialog.h"
@@ -378,5 +392,8 @@ typedef void (wxEvtHandler::*wxWindowModalDialogEventFunction)(wxWindowModalDial
 #define wxWindowModalDialogEventHandler(func) \
     wxEVENT_HANDLER_CAST(wxWindowModalDialogEventFunction, func)
 
 #define wxWindowModalDialogEventHandler(func) \
     wxEVENT_HANDLER_CAST(wxWindowModalDialogEventFunction, func)
 
+#define EVT_WINDOW_MODAL_DIALOG_CLOSED(winid, func) \
+    wx__DECLARE_EVT1(wxEVT_WINDOW_MODAL_DIALOG_CLOSED, winid, wxWindowModalDialogEventHandler(func))
+
 #endif
     // _WX_DIALOG_H_BASE_
 #endif
     // _WX_DIALOG_H_BASE_