]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/wizard.h
xti streaming
[wxWidgets.git] / include / wx / wizard.h
index db4dbbf752da38171871de55cdf6f31991a18b92..1220ddbe2a2681032f208a0f28c8a2d5175826cc 100644 (file)
@@ -7,10 +7,11 @@
 // Modified by: Robert Cavanaugh
 //              Added capability to use .WXR resource files in Wizard pages
 //              Added wxWIZARD_HELP event
+//              Robert Vazan (sizers)
 // Created:     15.08.99
 // RCS-ID:      $Id$
 // Copyright:   (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_WIZARD_H_
     #include "wx/event.h"       // wxEVT_XXX constants
 #endif // WX_PRECOMP
 
+#include "wx/bitmap.h"
+
 // Extended style to specify a help button
 #define wxWIZARD_EX_HELPBUTTON   0x00000010
 
 // forward declarations
-class WXDLLEXPORT wxWizard;
+class WXDLLIMPEXP_ADV wxWizard;
 
 // ----------------------------------------------------------------------------
 // wxWizardPage is one of the wizards screen: it must know what are the
@@ -43,7 +46,7 @@ class WXDLLEXPORT wxWizard;
 // used as such (i.e. controls may be placed directly on it &c).
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxWizardPage : public wxPanel
+class WXDLLIMPEXP_ADV wxWizardPage : public wxPanel
 {
 public:
     wxWizardPage() { Init(); }
@@ -78,7 +81,7 @@ protected:
     wxBitmap m_bitmap;
 
 private:
-    DECLARE_ABSTRACT_CLASS(wxWizardPage)
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxWizardPage)
 };
 
 // ----------------------------------------------------------------------------
@@ -90,7 +93,7 @@ private:
 // this, you must derive from wxWizardPage directly.
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxWizardPageSimple : public wxWizardPage
+class WXDLLIMPEXP_ADV wxWizardPageSimple : public wxWizardPage
 {
 public:
     wxWizardPageSimple() { Init(); }
@@ -146,14 +149,14 @@ private:
     wxWizardPage *m_prev,
                  *m_next;
 
-    DECLARE_DYNAMIC_CLASS(wxWizardPageSimple)
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxWizardPageSimple)
 };
 
 // ----------------------------------------------------------------------------
 // wxWizard
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxWizardBase : public wxDialog
+class WXDLLIMPEXP_ADV wxWizardBase : public wxDialog
 {
 public:
     /*
@@ -164,8 +167,10 @@ public:
                  int id = -1,
                  const wxString& title = wxEmptyString,
                  const wxBitmap& bitmap = wxNullBitmap,
-                 const wxPoint& pos = wxDefaultPosition);
+                 const wxPoint& pos = wxDefaultPosition,
+                 long style = wxDEFAULT_DIALOG_STYLE);
     */
+    wxWizardBase() { }
 
     // executes the wizard starting from the given page, returns TRUE if it was
     // successfully finished, FALSE if user cancelled it
@@ -179,8 +184,7 @@ public:
     // itself and will never be less than some predefined fixed size
     virtual void SetPageSize(const wxSize& size) = 0;
 
-    // get the size available for the page: the wizards are not resizeable, so
-    // this size doesn't change
+    // get the size available for the page
     virtual wxSize GetPageSize() const = 0;
 
     // set the best size for the wizard, i.e. make it big enough to contain all
@@ -192,6 +196,13 @@ public:
     // default)
     virtual void FitToPage(const wxWizardPage *firstPage) = 0;
 
+    // Adding pages to page area sizer enlarges wizard
+    virtual wxSizer *GetPageAreaSizer() const = 0;
+    
+    // Set border around page area. Default is 0 if you add at least one
+    // page to GetPageAreaSizer and 5 if you don't.
+    virtual void SetBorder(int border) = 0;
+    
     // wxWizard should be created using "new wxWizard" now, not with Create()
 #ifdef WXWIN_COMPATIBILITY_2_2
     static wxWizard *Create(wxWindow *parent,
@@ -210,6 +221,9 @@ public:
 
     virtual bool HasPrevPage(wxWizardPage *page)
         { return page->GetPrev() != NULL; }
+
+private:
+    DECLARE_NO_COPY_CLASS(wxWizardBase)
 };
 
 // include the real class declaration
@@ -221,7 +235,7 @@ public:
 // window hierarchy as usual
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxWizardEvent : public wxNotifyEvent
+class WXDLLIMPEXP_ADV wxWizardEvent : public wxNotifyEvent
 {
 public:
     wxWizardEvent(wxEventType type = wxEVT_NULL,
@@ -242,6 +256,7 @@ private:
     wxWizardPage*    m_page;
 
     DECLARE_DYNAMIC_CLASS(wxWizardEvent)
+    DECLARE_NO_COPY_CLASS(wxWizardEvent)
 };
 
 // ----------------------------------------------------------------------------