]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/propform.h
Moved wxWindow::SetSizeHints implementation to wxTopLevelWindow,
[wxWidgets.git] / include / wx / propform.h
index 120b0a1bf2e78cdb88a2cae7ff72c081e53b845d..255b85204be299a92b52d0f78e0ec590b409a7d0 100644 (file)
 #ifndef _WX_PROPFORM_H_
 #define _WX_PROPFORM_H_
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #pragma interface "propform.h"
 #endif
 
+#if wxUSE_PROPSHEET
+
 #include "wx/prop.h"
+#include "wx/panel.h"
+
+class WXDLLEXPORT wxPropertyFormView;
 
 ////
 //// Property form classes: for using an existing dialog or panel
@@ -236,23 +241,27 @@ class WXDLLEXPORT wxStringFormValidator: public wxPropertyFormValidator
 
 class WXDLLEXPORT wxPropertyFormDialog: public wxDialog
 {
-  DECLARE_CLASS(wxPropertyFormDialog)
- public:
-  wxPropertyFormDialog(wxPropertyFormView *v, wxWindow *parent, const wxString& title,
-    const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-    long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = "dialogBox");
+public:
+    wxPropertyFormDialog(wxPropertyFormView *v = NULL,
+                         wxWindow *parent = NULL,
+                         const wxString& title = wxEmptyString,
+                         const wxPoint& pos = wxDefaultPosition,
+                         const wxSize& size = wxDefaultSize,
+                         long style = wxDEFAULT_DIALOG_STYLE,
+                         const wxString& name = _T("dialogBox"));
 
-  void OnCloseWindow(wxCloseEvent& event);
-  void OnDefaultAction(wxControl *item);
-  void OnCommand(wxWindow& win, wxCommandEvent& event);
+    void OnCloseWindow(wxCloseEvent& event);
+    void OnDefaultAction(wxControl *item);
+    void OnCommand(wxWindow& win, wxCommandEvent& event);
 
-  // Extend event processing to search the view's event table
-  virtual bool ProcessEvent(wxEvent& event);
+    // Extend event processing to search the view's event table
+    virtual bool ProcessEvent(wxEvent& event);
 
- private:
-  wxPropertyFormView*       m_view;
+private:
+    wxPropertyFormView*       m_view;
 
-DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
+    DECLARE_CLASS(wxPropertyFormDialog)
 };
 
 /*
@@ -261,22 +270,29 @@ DECLARE_EVENT_TABLE()
 
 class WXDLLEXPORT wxPropertyFormPanel: public wxPanel
 {
-  DECLARE_CLASS(wxPropertyFormPanel)
- public:
-  wxPropertyFormPanel(wxPropertyFormView *v, wxWindow *parent, const wxPoint& pos = wxDefaultPosition,
-    const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = "panel"):
-     wxPanel(parent, -1, pos, size, style, name)
-  {
-    m_view = v;
-  }
-  void OnDefaultAction(wxControl *item);
-  void OnCommand(wxWindow& win, wxCommandEvent& event);
-
-  // Extend event processing to search the view's event table
-  virtual bool ProcessEvent(wxEvent& event);
+public:
+    wxPropertyFormPanel(wxPropertyFormView *v = NULL,
+                        wxWindow *parent = NULL,
+                        const wxPoint& pos = wxDefaultPosition,
+                        const wxSize& size = wxDefaultSize,
+                        long style = 0,
+                        const wxString& name = _T("panel"))
+        : wxPanel(parent, -1, pos, size, style, name)
+        {
+            m_view = v;
+        }
+    void OnDefaultAction(wxControl *item);
+    void OnCommand(wxWindow& win, wxCommandEvent& event);
+
+    // Extend event processing to search the view's event table
+    virtual bool ProcessEvent(wxEvent& event);
+    void SetView(wxPropertyFormView* view) { m_view = view; }
+    wxPropertyFormView* GetView() const { return m_view; }
 
- private:
-  wxPropertyFormView*       m_view;
+private:
+    wxPropertyFormView*       m_view;
+
+    DECLARE_CLASS(wxPropertyFormPanel)
 };
 
 /*
@@ -285,29 +301,36 @@ class WXDLLEXPORT wxPropertyFormPanel: public wxPanel
 
 class WXDLLEXPORT wxPropertyFormFrame: public wxFrame
 {
-  DECLARE_CLASS(wxPropertyFormFrame)
- public:
-  wxPropertyFormFrame(wxPropertyFormView *v, wxFrame *parent, const wxString& title,
-    const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-    long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame"):
-     wxFrame(parent, -1, title, pos, size, style, name)
-  {
-    m_view = v;
-    m_propertyPanel = NULL;
-  }
-  void OnCloseWindow(wxCloseEvent& event);
-
-  // Must call this to create panel and associate view
-  virtual bool Initialize(void);
-  virtual wxPanel *OnCreatePanel(wxFrame *parent, wxPropertyFormView *v);
-  inline virtual wxPanel *GetPropertyPanel(void) const { return m_propertyPanel; }
-
- private:
-  wxPropertyFormView*       m_view;
-  wxPanel*                  m_propertyPanel;
+public:
+    wxPropertyFormFrame(wxPropertyFormView *v = NULL,
+                        wxFrame *parent = NULL,
+                        const wxString& title = wxEmptyString,
+                        const wxPoint& pos = wxDefaultPosition,
+                        const wxSize& size = wxDefaultSize,
+                        long style = wxDEFAULT_FRAME_STYLE,
+                        const wxString& name = _T("frame"))
+        : wxFrame(parent, -1, title, pos, size, style, name)
+        {
+            m_view = v;
+            m_propertyPanel = NULL;
+        }
+    void OnCloseWindow(wxCloseEvent& event);
+
+    // Must call this to create panel and associate view
+    virtual bool Initialize(void);
+    virtual wxPanel *OnCreatePanel(wxFrame *parent, wxPropertyFormView *v);
+    inline virtual wxPanel *GetPropertyPanel(void) const { return m_propertyPanel; }
 
-DECLARE_EVENT_TABLE()
+private:
+    wxPropertyFormView*       m_view;
+    wxPanel*                  m_propertyPanel;
+
+    DECLARE_EVENT_TABLE()
+    DECLARE_CLASS(wxPropertyFormFrame)
 };
 
+#endif
+  // wxUSE_PROPSHEET
+
 #endif
   // _WX_PROPFORM_H_