X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d8fd7acb8b877599b410e07a4c26dde92a676a82..93928d517b4f748fb8bdbd7e0ae5334e2e3a8562:/include/wx/treebook.h diff --git a/include/wx/treebook.h b/include/wx/treebook.h index 0b414e2ba9..bd60e6dca1 100644 --- a/include/wx/treebook.h +++ b/include/wx/treebook.h @@ -21,13 +21,13 @@ typedef wxWindow wxTreebookPage; -class WXDLLEXPORT wxTreeEvent; +class WXDLLIMPEXP_FWD_CORE wxTreeEvent; // ---------------------------------------------------------------------------- // wxTreebook // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTreebook : public wxBookCtrlBase +class WXDLLIMPEXP_CORE wxTreebook : public wxBookCtrlBase { public: // Constructors and such @@ -77,11 +77,11 @@ public: int imageId = wxNOT_FOUND); // Inserts a new sub-page to the end of children of the page at given pos. - virtual bool AddSubPage(size_t pos, - wxWindow *page, - const wxString& text, - bool bSelect = false, - int imageId = wxNOT_FOUND); + virtual bool InsertSubPage(size_t pos, + wxWindow *page, + const wxString& text, + bool bSelect = false, + int imageId = wxNOT_FOUND); // Adds a new page at top level after all other pages. virtual bool AddPage(wxWindow *page, @@ -132,12 +132,17 @@ public: virtual int GetPageImage(size_t n) const; virtual bool SetPageImage(size_t n, int imageId); virtual wxSize CalcSizeFromPage(const wxSize& sizePage) const; - virtual int SetSelection(size_t n); + virtual int SetSelection(size_t n) { return DoSetSelection(n, SetSelection_SendEvent); } + virtual int ChangeSelection(size_t n) { return DoSetSelection(n); } + virtual int HitTest(const wxPoint& pt, long *flags = NULL) const; virtual void SetImageList(wxImageList *imageList); virtual void AssignImageList(wxImageList *imageList); virtual bool DeleteAllPages(); protected: + // Implementation of a page removal. See DeletPage for comments. + wxTreebookPage *DoRemovePage(size_t pos); + // This subclass of wxBookCtrlBase accepts NULL page pointers (empty pages) virtual bool AllowNullPage() const { return true; } @@ -180,11 +185,8 @@ private: bool bSelect = false, int imageId = wxNOT_FOUND); - // Implementation of a page removal. See DeletPage for comments. - wxTreebookPage *DoRemovePage(size_t pos); - // Sets selection in the tree control and updates the page being shown. - int DoSetSelection(size_t pos); + int DoSetSelection(size_t pos, int flags = 0); // Returns currently shown page. In a case when selected the node // has empty (NULL) page finds first (sub)child with not-empty page. @@ -219,7 +221,7 @@ private: // Returns internal number of pages which can be different from // GetPageCount() while performing a page insertion or removal. - size_t DoInternalGetPageCount() const { return m_treeIds.Count(); } + size_t DoInternalGetPageCount() const { return m_treeIds.GetCount(); } DECLARE_EVENT_TABLE() @@ -231,7 +233,7 @@ private: // treebook event class and related stuff // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTreebookEvent : public wxBookCtrlBaseEvent +class WXDLLIMPEXP_CORE wxTreebookEvent : public wxBookCtrlBaseEvent { public: wxTreebookEvent(wxEventType commandType = wxEVT_NULL, int id = 0, @@ -240,8 +242,15 @@ public: { } + wxTreebookEvent(const wxTreebookEvent& event) + : wxBookCtrlBaseEvent(event) + { + } + + virtual wxEvent *Clone() const { return new wxTreebookEvent(*this); } + private: - DECLARE_DYNAMIC_CLASS_NO_COPY(wxTreebookEvent) + DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxTreebookEvent) }; extern WXDLLIMPEXP_CORE const wxEventType wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED;