X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/71908213057690d5452f72b2b9c8e62b53357170..9945c703c71559beec46684d077f77ec9587c025:/include/wx/univ/notebook.h diff --git a/include/wx/univ/notebook.h b/include/wx/univ/notebook.h index f0040b4266..4c82009c99 100644 --- a/include/wx/univ/notebook.h +++ b/include/wx/univ/notebook.h @@ -12,10 +12,12 @@ #ifndef _WX_UNIV_NOTEBOOK_H_ #define _WX_UNIV_NOTEBOOK_H_ -#ifdef __GNUG__ - #pragma interface "notebook.h" +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) + #pragma interface "univnotebook.h" #endif +#include "wx/arrstr.h" + class WXDLLEXPORT wxSpinButton; // ---------------------------------------------------------------------------- @@ -65,24 +67,24 @@ public: // implement wxNotebookBase pure virtuals // -------------------------------------- - virtual int SetSelection(int nPage); + virtual int SetSelection(size_t nPage); virtual int GetSelection() const { return m_sel; } - virtual bool SetPageText(int nPage, const wxString& strText); - virtual wxString GetPageText(int nPage) const; + virtual bool SetPageText(size_t nPage, const wxString& strText); + virtual wxString GetPageText(size_t nPage) const; - virtual int GetPageImage(int nPage) const; - virtual bool SetPageImage(int nPage, int nImage); + virtual int GetPageImage(size_t nPage) const; + virtual bool SetPageImage(size_t nPage, int nImage); virtual void SetPageSize(const wxSize& size); virtual void SetPadding(const wxSize& padding); virtual void SetTabSize(const wxSize& sz); - virtual wxSize CalcSizeFromPage(const wxSize& sizePage); + virtual wxSize CalcSizeFromPage(const wxSize& sizePage) const; virtual bool DeleteAllPages(); - virtual bool InsertPage(int nPage, + virtual bool InsertPage(size_t nPage, wxNotebookPage *pPage, const wxString& strText, bool bSelect = FALSE, @@ -92,8 +94,7 @@ public: // ----------- // return TRUE if all tabs have the same width - bool FixedSizeTabs() const - { return GetWindowStyle() & wxNB_FIXEDWIDTH != 0; } + bool FixedSizeTabs() const { return HasFlag(wxNB_FIXEDWIDTH); } // return wxTOP/wxBOTTOM/wxRIGHT/wxLEFT wxDirection GetTabOrientation() const; @@ -105,8 +106,7 @@ public: // hit testing // ----------- - // return the tab at this position or -1 if none - int HitTest(const wxPoint& pt) const; + virtual int HitTest(const wxPoint& pt, long *flags = NULL) const; // input handling // -------------- @@ -119,7 +119,7 @@ public: void RefreshCurrent(); protected: - virtual wxNotebookPage *DoRemovePage(int nPage); + virtual wxNotebookPage *DoRemovePage(size_t nPage); // drawing virtual void DoDraw(wxControlRenderer *renderer); @@ -155,7 +155,7 @@ protected: void PositionSpinBtn(); // refresh the given tab only - void RefreshTab(int page); + void RefreshTab(int page, bool forceSelected = FALSE); // refresh all tabs void RefreshAllTabs(); @@ -194,9 +194,6 @@ protected: // get our client size from the page size wxSize GetSizeForPage(const wxSize& size) const; - // change thep age and send events about it (can be vetoed by user code) - void ChangePage(int nPage); - // scroll the tabs so that the first page shown becomes the given one void ScrollTo(int page); @@ -259,17 +256,17 @@ class WXDLLEXPORT wxStdNotebookInputHandler : public wxStdInputHandler public: wxStdNotebookInputHandler(wxInputHandler *inphand); - virtual bool HandleKey(wxControl *control, + virtual bool HandleKey(wxInputConsumer *consumer, const wxKeyEvent& event, bool pressed); - virtual bool HandleMouse(wxControl *control, + virtual bool HandleMouse(wxInputConsumer *consumer, const wxMouseEvent& event); - virtual bool HandleMouseMove(wxControl *control, const wxMouseEvent& event); - virtual bool HandleFocus(wxControl *control, const wxFocusEvent& event); - virtual bool HandleActivation(wxControl *control, bool activated); + virtual bool HandleMouseMove(wxInputConsumer *consumer, const wxMouseEvent& event); + virtual bool HandleFocus(wxInputConsumer *consumer, const wxFocusEvent& event); + virtual bool HandleActivation(wxInputConsumer *consumer, bool activated); protected: - void HandleFocusChange(wxControl *control); + void HandleFocusChange(wxInputConsumer *consumer); }; #endif // _WX_UNIV_NOTEBOOK_H_