1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        wx/gtk/collpane.h
3 // Purpose:     wxCollapsiblePane
4 // Author:      Francesco Montorsi
5 // Modified by:
6 // Created:     8/10/2006
7 // RCS-ID:      $Id: collpane.h 43853 2006-12-07 07:22:55Z PC $
8 // Copyright:   (c) Francesco Montorsi
9 // Licence:     wxWindows Licence
10 /////////////////////////////////////////////////////////////////////////////
11 
12 #ifndef _WX_COLLAPSABLE_PANEL_H_GTK_
13 #define _WX_COLLAPSABLE_PANEL_H_GTK_
14 
15 #include "wx/generic/collpaneg.h"
16 
17 // ----------------------------------------------------------------------------
18 // wxCollapsiblePane
19 // ----------------------------------------------------------------------------
20 
21 class WXDLLIMPEXP_CORE wxCollapsiblePane : public wxGenericCollapsiblePane
22 {
23 public:
wxCollapsiblePane()24     wxCollapsiblePane() { Init(); }
25 
26     wxCollapsiblePane(wxWindow *parent,
27                         wxWindowID winid,
28                         const wxString& label,
29                         const wxPoint& pos = wxDefaultPosition,
30                         const wxSize& size = wxDefaultSize,
31                         long style = wxCP_DEFAULT_STYLE,
32                         const wxValidator& val = wxDefaultValidator,
33                         const wxString& name = wxCollapsiblePaneNameStr)
34     {
35         Init();
36 
37         Create(parent, winid, label, pos, size, style, val, name);
38     }
39 
Init()40     void Init()
41     {
42         m_bIgnoreNextChange = false;
43     }
44 
45     bool Create(wxWindow *parent,
46                 wxWindowID winid,
47                 const wxString& label,
48                 const wxPoint& pos = wxDefaultPosition,
49                 const wxSize& size = wxDefaultSize,
50                 long style = wxCP_DEFAULT_STYLE,
51                 const wxValidator& val = wxDefaultValidator,
52                 const wxString& name = wxCollapsiblePaneNameStr);
53 
54     void Collapse(bool collapse = true);
55     bool IsCollapsed() const;
56     void SetLabel(const wxString &str);
57 
58 protected:
59     virtual wxSize DoGetBestSize() const;
60 
61 public:     // used by GTK callbacks
62     bool m_bIgnoreNextChange;
63     wxSize m_szCollapsed;
64 
65 private:
66     void OnSize(wxSizeEvent&);
67 
68     DECLARE_DYNAMIC_CLASS(wxCollapsiblePane)
69     DECLARE_EVENT_TABLE()
70 };
71 
72 #endif // _WX_COLLAPSABLE_PANEL_H_GTK_
73