]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/bookctrl.h
Moved wxPGChoices m_choices member from various property classes to base wxPGProperty...
[wxWidgets.git] / interface / wx / bookctrl.h
index 3665a5e87c77106e0c549838efa8d10f4fdbf745..021750acc41183b912d9e42acb6b8e2efc421cec 100644 (file)
@@ -22,3 +22,65 @@ public:
 
 };
 
+
+/**
+    @class wxBookCtrlEvent
+
+    This class represents the events generated by book controls (wxNotebook,
+    wxListbook, wxChoicebook, wxTreebook).
+    The PAGE_CHANGING events are sent before the current page is changed.
+    It allows the program to examine the current page (which can be retrieved
+    with wxBookCtrlEvent::GetOldSelection) and to veto the page change by calling
+    wxNotifyEvent::Veto if, for example, the current values in the controls
+    of the old page are invalid.
+
+    The PAGE_CHANGED events are sent after the page has been changed and
+    the program cannot veto it any more, it just informs it about the page
+    change.
+
+    To summarize, if the program is interested in validating the page values
+    before allowing the user to change it, it should process the PAGE_CHANGING
+    event, otherwise PAGE_CHANGED is probably enough. In any case, it is
+    probably unnecessary to process both events at once.
+
+    @library{wxcore}
+    @category{events}
+
+    @see wxNotebook, wxListbook, wxChoicebook, wxTreebook
+*/
+
+class wxBookCtrlEvent : public wxNotifyEvent
+{
+public:
+    /**
+        Constructor (used internally by wxWidgets only).
+    */
+    wxBookCtrlEvent(wxEventType eventType = wxEVT_NULL, int id = 0,
+                int sel = wxNOT_FOUND, int oldSel = 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.
+        @note under Windows, GetSelection() will return the same value as
+        GetOldSelection() when called from @c EVT_NOTEBOOK_PAGE_CHANGING
+        handler and not the page which is going to be selected.
+    */
+    int GetSelection() const;
+
+    /**
+        Sets the id of the page selected before the change.
+    */
+    void SetOldSelection(int page);
+
+    /**
+        Sets the selection member variable.
+    */
+    void SetSelection(int page);
+};
+