X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/eb29e7071f01834400fda4c51b5fb7717374be76..952ae1e88b9092f493b4ea6911a2b60b378d422d:/contrib/include/wx/gizmos/splittree.h diff --git a/contrib/include/wx/gizmos/splittree.h b/contrib/include/wx/gizmos/splittree.h index 5758dde534..e9aa94101b 100644 --- a/contrib/include/wx/gizmos/splittree.h +++ b/contrib/include/wx/gizmos/splittree.h @@ -15,7 +15,13 @@ #define _WX_SPLITTREE_H_ #ifdef __GNUG__ - #pragma interface "splittree.h" + #pragma interface "splittree.h" +#endif + +#ifdef GIZMOISDLL +#define GIZMODLLEXPORT WXDLLEXPORT +#else +#define GIZMODLLEXPORT #endif // Set this to 1 to use generic tree control (doesn't yet work properly) @@ -46,18 +52,19 @@ class wxSplitterScrolledWindow; * It also updates the scrolled window vertical scrollbar as appropriate. */ -class wxRemotelyScrolledTreeCtrl: public wxTreeCtrl +class GIZMODLLEXPORT wxRemotelyScrolledTreeCtrl: public wxTreeCtrl { - DECLARE_CLASS(wxRemotelyScrolledTreeCtrl) + DECLARE_CLASS(wxRemotelyScrolledTreeCtrl) public: wxRemotelyScrolledTreeCtrl(wxWindow* parent, wxWindowID id, const wxPoint& pt = wxDefaultPosition, const wxSize& sz = wxDefaultSize, long style = wxTR_HAS_BUTTONS); - ~wxRemotelyScrolledTreeCtrl(); + ~wxRemotelyScrolledTreeCtrl(); //// Events - void OnSize(wxSizeEvent& event); - void OnExpand(wxTreeEvent& event); + void OnSize(wxSizeEvent& event); + void OnExpand(wxTreeEvent& event); void OnScroll(wxScrollWinEvent& event); + void OnPaint(wxPaintEvent& event); //// Overrides // Override this in case we're using the generic tree control. @@ -78,19 +85,22 @@ public: // In case we're using the generic tree control. virtual void PrepareDC(wxDC& dc); + // In case we're using the generic tree control. + virtual int GetScrollPos(int orient) const; + //// Helpers - void HideVScrollbar(); + void HideVScrollbar(); - // Calculate the tree overall size so we can set the scrollbar - // correctly - void CalcTreeSize(wxRect& rect); - void CalcTreeSize(const wxTreeItemId& id, wxRect& rect); + // Calculate the tree overall size so we can set the scrollbar + // correctly + void CalcTreeSize(wxRect& rect); + void CalcTreeSize(const wxTreeItemId& id, wxRect& rect); - // Adjust the containing wxScrolledWindow's scrollbars appropriately - void AdjustRemoteScrollbars(); + // Adjust the containing wxScrolledWindow's scrollbars appropriately + void AdjustRemoteScrollbars(); - // Find the scrolled window that contains this control - wxScrolledWindow* GetScrolledWindow() const; + // Find the scrolled window that contains this control + wxScrolledWindow* GetScrolledWindow() const; // Scroll to the given line (in scroll units where each unit is // the height of an item) @@ -98,15 +108,16 @@ public: //// Accessors - // The companion window is one which will get notified when certain - // events happen such as node expansion - void SetCompanionWindow(wxWindow* companion) { m_companionWindow = companion; } - wxWindow* GetCompanionWindow() const { return m_companionWindow; } + // The companion window is one which will get notified when certain + // events happen such as node expansion + void SetCompanionWindow(wxWindow* companion) { m_companionWindow = companion; } + wxWindow* GetCompanionWindow() const { return m_companionWindow; } DECLARE_EVENT_TABLE() protected: - wxWindow* m_companionWindow; + wxWindow* m_companionWindow; + bool m_drawRowLines; }; /* @@ -115,7 +126,7 @@ protected: * A window displaying values associated with tree control items. */ -class wxTreeCompanionWindow: public wxWindow +class GIZMODLLEXPORT wxTreeCompanionWindow: public wxWindow { public: DECLARE_CLASS(wxTreeCompanionWindow) @@ -126,22 +137,22 @@ public: long style = 0); //// Overrides - virtual void DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect); + virtual void DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect); //// Events - void OnPaint(wxPaintEvent& event); + void OnPaint(wxPaintEvent& event); void OnScroll(wxScrollWinEvent& event); - void OnExpand(wxTreeEvent& event); + void OnExpand(wxTreeEvent& event); //// Operations //// Accessors - wxRemotelyScrolledTreeCtrl* GetTreeCtrl() const { return m_treeCtrl; }; - void SetTreeCtrl(wxRemotelyScrolledTreeCtrl* treeCtrl) { m_treeCtrl = treeCtrl; } + wxRemotelyScrolledTreeCtrl* GetTreeCtrl() const { return m_treeCtrl; }; + void SetTreeCtrl(wxRemotelyScrolledTreeCtrl* treeCtrl) { m_treeCtrl = treeCtrl; } //// Data members protected: - wxRemotelyScrolledTreeCtrl* m_treeCtrl; + wxRemotelyScrolledTreeCtrl* m_treeCtrl; DECLARE_EVENT_TABLE() }; @@ -154,7 +165,7 @@ protected: * than the usual one. */ -class wxThinSplitterWindow: public wxSplitterWindow +class GIZMODLLEXPORT wxThinSplitterWindow: public wxSplitterWindow { public: DECLARE_DYNAMIC_CLASS(wxThinSplitterWindow) @@ -170,10 +181,10 @@ public: // Tests for x, y over sash. Overriding this allows us to increase // the tolerance. bool SashHitTest(int x, int y, int tolerance = 2); - void DrawSash(wxDC& dc); + void DrawSash(wxDC& dc); //// Events - + void OnSize(wxSizeEvent& event); //// Operations @@ -194,7 +205,7 @@ protected: * scroll appropriately. */ -class wxSplitterScrolledWindow: public wxScrolledWindow +class GIZMODLLEXPORT wxSplitterScrolledWindow: public wxScrolledWindow { public: DECLARE_DYNAMIC_CLASS(wxSplitterScrolledWindow) @@ -207,7 +218,7 @@ public: //// Overrides //// Events - + void OnScroll(wxScrollWinEvent& event); void OnSize(wxSizeEvent& event);