X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2cbf701441257a130ba79489dcdd37db518cc08e..e8db0e1e5c68c2e30cb1f2cffb35afbaa08327e8:/include/wx/generic/collpaneg.h diff --git a/include/wx/generic/collpaneg.h b/include/wx/generic/collpaneg.h index b58bf5a395..09aa1e08b0 100644 --- a/include/wx/generic/collpaneg.h +++ b/include/wx/generic/collpaneg.h @@ -13,18 +13,17 @@ #define _WX_COLLAPSABLE_PANE_H_GENERIC_ // forward declared -class WXDLLEXPORT wxButton; -class WXDLLEXPORT wxStaticLine; - -// class name -extern WXDLLEXPORT_DATA(const wxChar) wxGenericCollapsiblePaneNameStr[]; - +class WXDLLIMPEXP_FWD_CORE wxButton; +class WXDLLIMPEXP_FWD_CORE wxStaticLine; +#ifdef __WXMAC__ +class WXDLLIMPEXP_FWD_CORE wxDisclosureTriangle; +#endif // ---------------------------------------------------------------------------- // wxGenericCollapsiblePane // ---------------------------------------------------------------------------- -class WXDLLEXPORT 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,20 +72,27 @@ public: virtual wxString GetLabel() const { return m_strLabel; } -protected: + virtual bool Layout(); + + // implementation only, don't use + void OnStateChange(const wxSize& sizeNew); + +protected: // overridden methods virtual wxSize DoGetBestSize() const; - // internal helpers - void LayoutChildren(); - wxString GetBtnLabel() const; - + int GetBorder() const; // child controls +#ifdef __WXMAC__ + wxDisclosureTriangle *m_pButton; +#else wxButton *m_pButton; - wxStaticLine *m_pStatLine; +#endif + wxStaticLine *m_pStaticLine; wxWindow *m_pPane; + wxSizer *m_sz; // the button label without ">>" or "<<" wxString m_strLabel; @@ -98,6 +106,4 @@ private: DECLARE_EVENT_TABLE() }; - #endif // _WX_COLLAPSABLE_PANE_H_GENERIC_ -