]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/propdlg.h
Fixed various NULL reference issues. Also cleaned up wxPGComboBox code overall a...
[wxWidgets.git] / include / wx / generic / propdlg.h
index 6ecb9ec47ccb7fe4a397eb918188d9042bc00107..4d5206f051b15d2e2acf17238847af94af0c312b 100644 (file)
@@ -16,7 +16,9 @@
 
 #if wxUSE_BOOKCTRL
 
-class WXDLLEXPORT wxBookCtrlBase;
+#include "wx/dialog.h"
+
+class WXDLLIMPEXP_FWD_CORE wxBookCtrlBase;
 
 //-----------------------------------------------------------------------------
 // wxPropertySheetDialog
@@ -48,23 +50,32 @@ class WXDLLEXPORT wxBookCtrlBase;
 // kind of book control.
 //-----------------------------------------------------------------------------
 
-// Use the platform default
-#define wxPROPSHEET_DEFAULT     0x0001
+enum wxPropertySheetDialogFlags
+{
+    // Use the platform default
+    wxPROPSHEET_DEFAULT = 0x0001,
+
+    // Use a notebook
+    wxPROPSHEET_NOTEBOOK = 0x0002,
+
+    // Use a toolbook
+    wxPROPSHEET_TOOLBOOK = 0x0004,
 
-// Use a notebook
-#define wxPROPSHEET_NOTEBOOK    0x0002
+    // Use a choicebook
+    wxPROPSHEET_CHOICEBOOK = 0x0008,
 
-// Use a toolbook
-#define wxPROPSHEET_TOOLBOOK    0x0004
+    // Use a listbook
+    wxPROPSHEET_LISTBOOK = 0x0010,
 
-// Use a choicebook
-#define wxPROPSHEET_CHOICEBOOK  0x0008
+    // Use a wxButtonToolBar toolbook
+    wxPROPSHEET_BUTTONTOOLBOOK = 0x0020,
 
-// Use a listbook
-#define wxPROPSHEET_LISTBOOK    0x0010
+    // Use a treebook
+    wxPROPSHEET_TREEBOOK = 0x0040,
 
-// Shrink dialog to fit current page
-#define wxPROPSHEET_SHRINKTOFIT 0x0100
+    // Shrink dialog to fit current page
+    wxPROPSHEET_SHRINKTOFIT = 0x0100,
+};
 
 class WXDLLIMPEXP_ADV wxPropertySheetDialog : public wxDialog
 {
@@ -95,6 +106,9 @@ public:
     void SetBookCtrl(wxBookCtrlBase* book) { m_bookCtrl = book; }
     wxBookCtrlBase* GetBookCtrl() const { return m_bookCtrl; }
 
+    // Override function in base
+    virtual wxWindow* GetContentWindow() const;
+
     // Set and get the inner sizer
     void SetInnerSize(wxSizer* sizer) { m_innerSizer = sizer; }
     wxSizer* GetInnerSizer() const { return m_innerSizer ; }
@@ -103,6 +117,14 @@ public:
     void SetSheetStyle(long sheetStyle) { m_sheetStyle = sheetStyle; }
     long GetSheetStyle() const { return m_sheetStyle ; }
 
+    // Set and get the border around the whole dialog
+    void SetSheetOuterBorder(int border) { m_sheetOuterBorder = border; }
+    int GetSheetOuterBorder() const { return m_sheetOuterBorder ; }
+
+    // Set and get the border around the book control only
+    void SetSheetInnerBorder(int border) { m_sheetInnerBorder = border; }
+    int GetSheetInnerBorder() const { return m_sheetInnerBorder ; }
+
 /// Operations
 
     // Creates the buttons (none on PocketPC)
@@ -133,6 +155,8 @@ protected:
     wxBookCtrlBase* m_bookCtrl;
     wxSizer*        m_innerSizer; // sizer for extra space
     long            m_sheetStyle;
+    int             m_sheetOuterBorder;
+    int             m_sheetInnerBorder;
     int             m_selectedPage;
 
     DECLARE_DYNAMIC_CLASS(wxPropertySheetDialog)