]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/collpane.h
Prevent seg fault for older GTK+
[wxWidgets.git] / include / wx / collpane.h
index 002e5a3e21772decb65354f2e8f4fad6a5884883..8ff545d3bcda9be57ee2dc287c3f461ea7f2782c 100644 (file)
 #ifndef _WX_COLLAPSABLE_PANE_H_BASE_
 #define _WX_COLLAPSABLE_PANE_H_BASE_
 
+#include "wx/defs.h"
+
+
+#if wxUSE_COLLPANE
+
 #include "wx/control.h"
 
 
 // wxCollapsiblePaneBase: interface for wxCollapsiblePane
 // ----------------------------------------------------------------------------
 
-#define wxCP_DEFAULT_STYLE          (0)
+#define wxCP_DEFAULT_STYLE          (wxTAB_TRAVERSAL | wxNO_BORDER)
+#define wxCP_NO_TLW_RESIZE          (0x0002)
 
-class WXDLLEXPORT wxCollapsiblePaneBase : public wxControl
+class WXDLLIMPEXP_CORE wxCollapsiblePaneBase : public wxControl
 {
 public:
     wxCollapsiblePaneBase() {}
 
-    virtual void Expand()
-        { Collapse(false); }
-
     virtual void Collapse(bool collapse = true) = 0;
+    void Expand() { Collapse(false); }
+
     virtual bool IsCollapsed() const = 0;
+    bool IsExpanded() const { return !IsCollapsed(); }
+
     virtual wxWindow *GetPane() const = 0;
 
     virtual wxString GetLabel() const = 0;
-    virtual void SetLabel(const wxString &label) = 0;
+    virtual void SetLabel(const wxStringlabel) = 0;
 };
 
 
@@ -80,15 +87,18 @@ typedef void (wxEvtHandler::*wxCollapsiblePaneEventFunction)(wxCollapsiblePaneEv
     (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxCollapsiblePaneEventFunction, &func)
 
 #define EVT_COLLAPSIBLEPANE_CHANGED(id, fn) \
-    wx__DECLARE_EVT1(wxEVT_COMMAND_COLLPANE_CHANGED, id, wxCollapsiblePaneEventFunction(fn))
+    wx__DECLARE_EVT1(wxEVT_COMMAND_COLLPANE_CHANGED, id, wxCollapsiblePaneEventHandler(fn))
 
 
-#if defined(__WXGTK24__)
+#if defined(__WXGTK24__) && !defined(__WXUNIVERSAL__)
     #include "wx/gtk/collpane.h"
 #else
     #include "wx/generic/collpaneg.h"
-    #define wxCollapsiblePane   wxGenericCollapsiblePane
-#endif
 
+    // use #define and not a typedef to allow forward declaring the class
+    #define wxCollapsiblePane wxGenericCollapsiblePane
 #endif
-    // _WX_COLLAPSABLE_PANE_H_BASE_
+
+#endif // wxUSE_COLLPANE
+
+#endif // _WX_COLLAPSABLE_PANE_H_BASE_