]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/collpaneg.h
added support for 2 extra mouse buttons (patch 1757630)
[wxWidgets.git] / include / wx / generic / collpaneg.h
index 843b8d6dc2cb8522e64019d3ba6bbc62e1947429..9249aec213f67b788f9f0f1ec2cd5f5ec58f65df 100644 (file)
 #define _WX_COLLAPSABLE_PANE_H_GENERIC_
 
 // forward declared
-class WXDLLEXPORT wxButton;
-class WXDLLEXPORT wxStaticLine;
+class WXDLLIMPEXP_FWD_CORE wxButton;
+class WXDLLIMPEXP_FWD_CORE wxStaticLine;
 
 // class name
-extern WXDLLIMPEXP_DATA_ADV(const wxChar) wxGenericCollapsiblePaneNameStr[];
-
+extern WXDLLIMPEXP_DATA_CORE(const wxChar) wxCollapsiblePaneNameStr[];
 
 // ----------------------------------------------------------------------------
 // wxGenericCollapsiblePane
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_ADV wxGenericCollapsiblePane : public wxCollapsiblePaneBase
+class WXDLLIMPEXP_CORE wxGenericCollapsiblePane : public wxCollapsiblePaneBase
 {
 public:
     wxGenericCollapsiblePane() { Init(); }
@@ -34,9 +33,9 @@ public:
                         const wxString& label,
                         const wxPoint& pos = wxDefaultPosition,
                         const wxSize& size = wxDefaultSize,
-                        long style = wxTAB_TRAVERSAL | wxNO_BORDER,
+                        long style = wxCP_DEFAULT_STYLE,
                         const wxValidator& val = wxDefaultValidator,
-                        const wxString& name = wxGenericCollapsiblePaneNameStr)
+                        const wxString& name = wxCollapsiblePaneNameStr)
     {
         Init();
 
@@ -46,19 +45,21 @@ public:
     void Init()
     {
         m_pButton = NULL;
-        m_pStatLine = NULL;
         m_pPane = NULL;
+        m_pStaticLine = NULL;
+        m_sz = NULL;
     }
 
+    ~wxGenericCollapsiblePane();
+
     bool Create(wxWindow *parent,
                 wxWindowID winid,
                 const wxString& label,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
-                long style = wxTAB_TRAVERSAL | wxNO_BORDER,
+                long style = wxCP_DEFAULT_STYLE,
                 const wxValidator& val = wxDefaultValidator,
-                const wxString& name = wxGenericCollapsiblePaneNameStr);
-
+                const wxString& name = wxCollapsiblePaneNameStr);
 
     // public wxCollapsiblePane API
     virtual void Collapse(bool collapse = true);
@@ -71,6 +72,7 @@ public:
     virtual wxString GetLabel() const
         { return m_strLabel; }
 
+    virtual bool Layout();
 
     // implementation only, don't use
     void OnStateChange(const wxSize& sizeNew);
@@ -79,16 +81,14 @@ protected:
     // overridden methods
     virtual wxSize DoGetBestSize() const;
 
-    // internal helpers
-    void LayoutChildren();
-
     wxString GetBtnLabel() const;
-
+    int GetBorder() const;
 
     // child controls
     wxButton *m_pButton;
-    wxStaticLine *m_pStatLine;
+    wxStaticLine *m_pStaticLine;
     wxWindow *m_pPane;
+    wxSizer *m_sz;
 
     // the button label without ">>" or "<<"
     wxString m_strLabel;
@@ -102,5 +102,4 @@ private:
     DECLARE_EVENT_TABLE()
 };
 
-
 #endif // _WX_COLLAPSABLE_PANE_H_GENERIC_