X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..7447d53c35249d42128d6243c90998f03882859a:/interface/wx/treebook.h diff --git a/interface/wx/treebook.h b/interface/wx/treebook.h index c950031b2d..776b2afca3 100644 --- a/interface/wx/treebook.h +++ b/interface/wx/treebook.h @@ -1,75 +1,19 @@ ///////////////////////////////////////////////////////////////////////////// // Name: treebook.h -// Purpose: interface of wxTreebookEvent +// Purpose: interface of wxTreebook // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -/** - @class wxTreebookEvent - @wxheader{treebook.h} - - This class represents the events generated by a treebook control: currently, - there are four of them. The EVT_TREEBOOK_PAGE_CHANGING() and - EVT_TREEBOOK_PAGE_CHANGED() - have exactly the same behaviour as - wxNotebookEvent. - - The other two EVT_TREEBOOK_NODE_COLLAPSED() and EVT_TREEBOOK_NODE_EXPANDED() - are triggered when page node in the tree control is collapsed/expanded. The - page index could be retreived by calling GetSelection(). - - @beginEventTable{wxTreebookEvent} - @event{EVT_TREEBOOK_PAGE_CHANGED(id, func)} - The page selection was changed. Processes a @c - wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED event. - @event{EVT_TREEBOOK_PAGE_CHANGING(id, func)} - The page selection is about to be changed. Processes a @c - wxEVT_COMMAND_TREEBOOK_PAGE_CHANGING event. This event can be @ref - wxNotifyEvent::Veto() "vetoed". - @event{EVT_TREEBOOK_NODE_COLLAPSED(id, func)} - The page node is going to be collapsed. Processes a @c - wxEVT_COMMAND_TREEBOOK_NODE_COLLAPSED event. - @event{EVT_TREEBOOK_NODE_EXPANDED(id, func)} - The page node is going to be expanded. Processes a @c - wxEVT_COMMAND_TREEBOOK_NODE_EXPANDED event. - @endEventTable - - @library{wxcore} - @category{events} - - @see wxTreebook, wxNotebookEvent -*/ -class wxTreebookEvent : public wxNotifyEvent -{ -public: - /** - @see wxNotebookEvent - */ - wxTreebookEvent(wxEventType commandType = wxEVT_NULL, int id = 0, - int nSel = wxNOT_FOUND, - int nOldSel = wxNOT_FOUND); - - /** - Returns the page that was selected before the change, @c wxNOT_FOUND if - none was selected. - */ - int GetOldSelection() const; - - /** - Returns the currently selected page, or @c wxNOT_FOUND if none was - selected. - - @see wxNotebookEvent::GetSelection() - */ - int GetSelection() const; -}; - +wxEventType wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED; +wxEventType wxEVT_COMMAND_TREEBOOK_PAGE_CHANGING; +wxEventType wxEVT_COMMAND_TREEBOOK_NODE_COLLAPSED; +wxEventType wxEVT_COMMAND_TREEBOOK_NODE_EXPANDED; /** @class wxTreebook - @wxheader{treebook.h} This class is an extension of the wxNotebook class that allows a tree structured set of pages to be shown in a control. A classic example is a @@ -83,26 +27,26 @@ public: AddPage() and AddSubPage() to sequentially populate your tree by adding at every step a page or a subpage to the end of the tree. - @beginEventTable{wxTreebookEvent} + @beginEventEmissionTable{wxBookCtrlEvent} @event{EVT_TREEBOOK_PAGE_CHANGED(id, func)} - The page selection was changed. Processes a @c - wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED event. + The page selection was changed. + Processes a @c wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED event. @event{EVT_TREEBOOK_PAGE_CHANGING(id, func)} - The page selection is about to be changed. Processes a @c - wxEVT_COMMAND_TREEBOOK_PAGE_CHANGING event. This event can be @ref - wxNotifyEvent::Veto() "vetoed". + The page selection is about to be changed. + Processes a @c wxEVT_COMMAND_TREEBOOK_PAGE_CHANGING event. + This event can be @ref wxNotifyEvent::Veto() "vetoed". @event{EVT_TREEBOOK_NODE_COLLAPSED(id, func)} - The page node is going to be collapsed. Processes a @c - wxEVT_COMMAND_TREEBOOK_NODE_COLLAPSED event. + The page node is going to be collapsed. + Processes a @c wxEVT_COMMAND_TREEBOOK_NODE_COLLAPSED event. @event{EVT_TREEBOOK_NODE_EXPANDED(id, func)} - The page node is going to be expanded. Processes a @c - wxEVT_COMMAND_TREEBOOK_NODE_EXPANDED event. + The page node is going to be expanded. + Processes a @c wxEVT_COMMAND_TREEBOOK_NODE_EXPANDED event. @endEventTable @library{wxcore} - @category{miscwnd} + @category{bookctrl} - @see wxTreebookEvent, wxNotebook, wxTreeCtrl, wxImageList, + @see wxBookCtrl, wxBookCtrlEvent, wxNotebook, wxTreeCtrl, wxImageList, @ref overview_bookctrl, @ref page_samples_notebook */ class wxTreebook : public wxBookCtrlBase @@ -136,44 +80,25 @@ public: const wxString& name = wxEmptyString); /** - Destroys the wxTreebook object. Also deletes all the pages owned by the - control (inserted previously into it). + Destroys the wxTreebook object. + Also deletes all the pages owned by the control (inserted previously into it). */ - ~wxTreebook(); + virtual ~wxTreebook(); /** Adds a new page. The page is placed at the topmost level after all other pages. @NULL could be specified for page to create an empty page. */ - bool AddPage(wxWindow* page, const wxString& text, - bool bSelect = false, - int imageId = wxNOT_FOUND); + virtual bool AddPage(wxWindow* page, const wxString& text, + bool bSelect = false, int imageId = wxNOT_FOUND); /** Adds a new child-page to the last top-level page. @NULL could be specified for page to create an empty page. */ - bool AddSubPage(wxWindow* page, const wxString& text, - bool bSelect = false, - int imageId = wxNOT_FOUND); - - /** - Sets the image list for the page control and takes ownership of the - list. - - @see wxImageList, SetImageList() - */ - void AssignImageList(wxImageList* imageList); + virtual bool AddSubPage(wxWindow* page, const wxString& text, + bool bSelect = false, int imageId = wxNOT_FOUND); - /** - Changes the selection for the given page, returning the previous - selection. - - The call to this function does not generate the page changing events. - This is the only difference with SetSelection(). See - @ref overview_eventhandling_prog for more info. - */ - int ChangeSelection(size_t page); /** Shortcut for @ref wxTreebook::ExpandNode() "ExpandNode"( @a pageId, @@ -192,28 +117,18 @@ public: const wxString& name = wxEmptyString); /** - Deletes all pages inserted into the treebook. No event is generated. - */ - bool DeleteAllPages(); - - /** - Deletes the page at the specified position and all its children. Could - trigger page selection change in a case when selected page is removed. + Deletes the page at the specified position and all its children. + Could trigger page selection change in a case when selected page is removed. In that case its parent is selected (or the next page if no parent). */ - bool DeletePage(size_t pagePos); + virtual bool DeletePage(size_t pagePos); /** - Expands (collapses) the @a pageId node. Returns the previous state. May - generate page changing events (if selected page is under the collapsed + Expands (collapses) the @a pageId node. Returns the previous state. + May generate page changing events (if selected page is under the collapsed branch, then its parent is autoselected). */ - bool ExpandNode(size_t pageId, bool expand = true); - - /** - Returns the image index for the given page. - */ - int GetPageImage(size_t n) const; + virtual bool ExpandNode(size_t pageId, bool expand = true); /** Returns the parent page of the given one or @c wxNOT_FOUND if this is a @@ -222,74 +137,36 @@ public: int GetPageParent(size_t page) const; /** - Returns the string for the given page. - */ - wxString GetPageText(size_t n) const; - - /** - Returns the currently selected page, or @c wxNOT_FOUND if none was - selected. + Returns the currently selected page, or @c wxNOT_FOUND if none was selected. @note This method may return either the previously or newly selected - page when called from the EVT_TREEBOOK_PAGE_CHANGED() handler - depending on the platform and so wxTreebookEvent::GetSelection() - should be used instead in this case. + page when called from the EVT_TREEBOOK_PAGE_CHANGED() handler + depending on the platform and so wxBookCtrlEvent::GetSelection() + should be used instead in this case. */ - int GetSelection() const; + virtual int GetSelection() const; /** - Inserts a new page just before the page indicated by @a pagePos. The new - page is placed before @a pagePos page and on the same level. @NULL could - be specified for page to create an empty page. + Inserts a new page just before the page indicated by @a pagePos. + The new page is placed before @a pagePos page and on the same level. + @NULL could be specified for page to create an empty page. */ - bool InsertPage(size_t pagePos, wxWindow* page, - const wxString& text, - bool bSelect = false, - int imageId = wxNOT_FOUND); + virtual bool InsertPage(size_t pagePos, wxWindow* page, + const wxString& text, bool bSelect = false, + int imageId = wxNOT_FOUND); /** Inserts a sub page under the specified page. @NULL could be specified for page to create an empty page. */ - bool InsertSubPage(size_t pagePos, wxWindow* page, - const wxString& text, - bool bSelect = false, - int imageId = wxNOT_FOUND); + virtual bool InsertSubPage(size_t pagePos, wxWindow* page, + const wxString& text, bool bSelect = false, + int imageId = wxNOT_FOUND); /** Returns @true if the page represented by @a pageId is expanded. */ - bool IsNodeExpanded(size_t pageId) const; - - /** - Sets the image list for the page control. It does not take ownership of - the image list, you must delete it yourself. - - @see wxImageList, AssignImageList() - */ - void SetImageList(wxImageList* imageList); - - /** - Sets the image index for the given @a page. @a imageId is an index into - the image list which was set with SetImageList(). - */ - bool SetPageImage(size_t page, int imageId); - - /** - Sets the @a text for the given @a page. - */ - bool SetPageText(size_t page, const wxString& text); - - /** - @deprecated Please use ChangeSelection() instead. - - Sets the selection for the given page, returning the previous selection. - - The call to this function generates page changing events. - - @see GetSelection(), ChangeSelection() - */ - int SetSelection(size_t n); + virtual bool IsNodeExpanded(size_t pageId) const; };