]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/notebook.tex
Missing wxWindow member, manual decorations to pure text list of changes.
[wxWidgets.git] / docs / latex / wx / notebook.tex
index 11aba426824946fce6417157ade40f08e90fa2f6..5e1bea62b8a0e27f2aca9b1bc03928637eee0e21 100644 (file)
@@ -19,17 +19,25 @@ managed by wxNotebook.
 
 <wx/notebook.h>
 
 
 <wx/notebook.h>
 
-\wxheading{Event handling}
+\wxheading{Window styles}
 
 
-To process input from a notebook control, use the following event handler macros to direct input to member
-functions that take a \helpref{wxNotebookEvent}{wxnotebookevent} argument.
-
-\twocolwidtha{7cm}
+\twocolwidtha{5cm}
 \begin{twocollist}\itemsep=0pt
 \begin{twocollist}\itemsep=0pt
-\twocolitem{{\bf EVT\_NOTEBOOK\_PAGE\_CHANGED(id, func)}}{The page selection was changed.}
-\twocolitem{{\bf EVT\_NOTEBOOK\_PAGE\_CHANGING(id, func)}}{The page selection is about to be changed.
-This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
-\end{twocollist}%
+
+\twocolitem{\windowstyle{wxNB\_LEFT}}{Place tabs on the left side.}
+\twocolitem{\windowstyle{wxNB\_RIGHT}}{Place tabs on the right side.}
+\twocolitem{\windowstyle{wxNB\_BOTTOM}}{Place tabs under instead of above the notebook pages.}
+\twocolitem{\windowstyle{wxNB\_FIXEDWIDTH}}{(Windows only) All tabs will have same width.}
+\twocolitem{\windowstyle{wxNB\_MULTILINE}}{(Windows only) There can be several rows of tabs.}
+
+\end{twocollist}
+
+The styles \texttt{wxNB\_LEFT}, \texttt{RIGHT} and \texttt{BOTTOM} are not
+supported under Microsoft Windows XP when using visual themes.
+
+See also \helpref{window styles overview}{windowstyles}.
+
+\input noteevt.inc
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
@@ -38,14 +46,15 @@ This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxNotebook::wxNotebook}\label{wxnotebookconstr}
+
+\membersection{wxNotebook::wxNotebook}\label{wxnotebookctor}
 
 \func{}{wxNotebook}{\void}
 
 Default constructor.
 
 \func{}{wxNotebook}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
 
 \func{}{wxNotebook}{\void}
 
 Default constructor.
 
 \func{}{wxNotebook}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
- \param{const wxSize\&}{ size}, \param{long}{ style = 0}, \param{const wxString\& }{name = "notebook"}}
+ \param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = 0}, \param{const wxString\& }{name = "notebook"}}
 
 Constructs a notebook control.
 
 
 Constructs a notebook control.
 
@@ -61,26 +70,29 @@ Note that sometimes you can reduce flicker by passing the wxCLIP\_CHILDREN windo
 
 \docparam{size}{The window size.}
 
 
 \docparam{size}{The window size.}
 
-\docparam{style}{The window style. Its value is a bit list of zero or more of {\bf wxTC\_MULTILINE},
- {\bf wxTC\_RIGHTJUSTIFY}, {\bf wxTC\_FIXEDWIDTH} and {\bf wxTC\_OWNERDRAW}.}
+\docparam{style}{The window style. See \helpref{wxNotebook}{wxnotebook}.}
 
 \docparam{name}{The name of the control (used only under Motif).}
 
 
 \docparam{name}{The name of the control (used only under Motif).}
 
-\membersection{wxNotebook::\destruct{wxNotebook}}
+
+\membersection{wxNotebook::\destruct{wxNotebook}}\label{wxnotebookdtor}
 
 \func{}{\destruct{wxNotebook}}{\void}
 
 Destroys the wxNotebook object.
 
 
 \func{}{\destruct{wxNotebook}}{\void}
 
 Destroys the wxNotebook object.
 
+
 \membersection{wxNotebook::AddPage}\label{wxnotebookaddpage}
 
 \func{bool}{AddPage}{\param{wxNotebookPage*}{ page},
  \param{const wxString\&}{ text},
 \membersection{wxNotebook::AddPage}\label{wxnotebookaddpage}
 
 \func{bool}{AddPage}{\param{wxNotebookPage*}{ page},
  \param{const wxString\&}{ text},
- \param{bool}{ select = FALSE},
+ \param{bool}{ select = false},
  \param{int}{ imageId = -1}}
 
 Adds a new page.
 
  \param{int}{ imageId = -1}}
 
 Adds a new page.
 
+The call to this function may generate the page changing events.
+
 \wxheading{Parameters}
 
 \docparam{page}{Specifies the new page.}
 \wxheading{Parameters}
 
 \docparam{page}{Specifies the new page.}
@@ -93,7 +105,7 @@ Adds a new page.
 
 \wxheading{Return value}
 
 
 \wxheading{Return value}
 
-TRUE if successful, FALSE otherwise.
+true if successful, false otherwise.
 
 \wxheading{Remarks}
 
 
 \wxheading{Remarks}
 
@@ -103,32 +115,61 @@ Do not delete the page, it will be deleted by the notebook.
 
 \helpref{wxNotebook::InsertPage}{wxnotebookinsertpage}
 
 
 \helpref{wxNotebook::InsertPage}{wxnotebookinsertpage}
 
+
 \membersection{wxNotebook::AdvanceSelection}\label{wxnotebookadvanceselection}
 
 \membersection{wxNotebook::AdvanceSelection}\label{wxnotebookadvanceselection}
 
-\func{void}{AdvanceSelection}{\param{bool}{ forward = TRUE}}
+\func{void}{AdvanceSelection}{\param{bool}{ forward = true}}
 
 Cycles through the tabs.
 
 
 Cycles through the tabs.
 
+The call to this function generates the page changing events.
+
+
+\membersection{wxNotebook::AssignImageList}\label{wxnotebookassignimagelist}
+
+\func{void}{AssignImageList}{\param{wxImageList*}{ imageList}}
+
+Sets the image list for the page control and takes ownership of
+the list.
+
+\wxheading{See also}
+
+\helpref{wxImageList}{wximagelist},
+\helpref{SetImageList}{wxnotebooksetimagelist}
+
+
 \membersection{wxNotebook::Create}\label{wxnotebookcreate}
 
 \func{bool}{Create}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
  \param{const wxSize\&}{ size}, \param{long}{ style = 0}, \param{const wxString\& }{name = "notebook"}}
 
 \membersection{wxNotebook::Create}\label{wxnotebookcreate}
 
 \func{bool}{Create}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
  \param{const wxSize\&}{ size}, \param{long}{ style = 0}, \param{const wxString\& }{name = "notebook"}}
 
-Creates a notebook control. See \helpref{wxNotebook::wxNotebook}{wxnotebookconstr} for a description
+Creates a notebook control. See \helpref{wxNotebook::wxNotebook}{wxnotebookctor} for a description
 of the parameters.
 
 of the parameters.
 
+
 \membersection{wxNotebook::DeleteAllPages}\label{wxnotebookdeleteallpages}
 
 \func{bool}{DeleteAllPages}{\void}
 
 Deletes all pages.
 
 \membersection{wxNotebook::DeleteAllPages}\label{wxnotebookdeleteallpages}
 
 \func{bool}{DeleteAllPages}{\void}
 
 Deletes all pages.
 
+
 \membersection{wxNotebook::DeletePage}\label{wxnotebookdeletepage}
 
 \membersection{wxNotebook::DeletePage}\label{wxnotebookdeletepage}
 
-\func{bool}{DeletePage}{\param{int}{ page}}
+\func{bool}{DeletePage}{\param{size\_t}{ page}}
 
 Deletes the specified page, and the associated window.
 
 
 Deletes the specified page, and the associated window.
 
+The call to this function generates the page changing events.
+
+
+\membersection{wxNotebook::GetCurrentPage}\label{wxnotebookgetcurrentpage}
+
+\constfunc{wxWindow *}{GetCurrentPage}{\void}
+
+Returns the currently selected notebook age or \texttt{NULL}.
+
+
 \membersection{wxNotebook::GetImageList}\label{wxnotebookgetimagelist}
 
 \constfunc{wxImageList*}{GetImageList}{\void}
 \membersection{wxNotebook::GetImageList}\label{wxnotebookgetimagelist}
 
 \constfunc{wxImageList*}{GetImageList}{\void}
@@ -139,47 +180,91 @@ Returns the associated image list.
 
 \helpref{wxImageList}{wximagelist}, \helpref{wxNotebook::SetImageList}{wxnotebooksetimagelist}
 
 
 \helpref{wxImageList}{wximagelist}, \helpref{wxNotebook::SetImageList}{wxnotebooksetimagelist}
 
+
 \membersection{wxNotebook::GetPage}\label{wxnotebookgetpage}
 
 \membersection{wxNotebook::GetPage}\label{wxnotebookgetpage}
 
-\func{wxNotebookPage*}{GetPage}{\param{int}{ page}}
+\func{wxNotebookPage*}{GetPage}{\param{size\_t}{ page}}
 
 Returns the window at the given page position.
 
 
 Returns the window at the given page position.
 
+
 \membersection{wxNotebook::GetPageCount}\label{wxnotebookgetpagecount}
 
 \membersection{wxNotebook::GetPageCount}\label{wxnotebookgetpagecount}
 
-\constfunc{int}{GetPageCount}{\void}
+\constfunc{size\_t}{GetPageCount}{\void}
 
 Returns the number of pages in the notebook control.
 
 
 Returns the number of pages in the notebook control.
 
+
 \membersection{wxNotebook::GetPageImage}\label{wxnotebookgetpageimage}
 
 \membersection{wxNotebook::GetPageImage}\label{wxnotebookgetpageimage}
 
-\constfunc{int}{GetPageImage}{\void}
+\constfunc{int}{GetPageImage}{\param{size\_t }{nPage}}
 
 Returns the image index for the given page.
 
 
 Returns the image index for the given page.
 
+
 \membersection{wxNotebook::GetPageText}\label{wxnotebookgetpagetext}
 
 \membersection{wxNotebook::GetPageText}\label{wxnotebookgetpagetext}
 
-\constfunc{wxString}{GetPageText}{\void}
+\constfunc{wxString}{GetPageText}{\param{size\_t }{nPage}}
 
 Returns the string for the given page.
 
 
 Returns the string for the given page.
 
+
 \membersection{wxNotebook::GetRowCount}\label{wxnotebookgetrowcount}
 
 \constfunc{int}{GetRowCount}{\void}
 
 Returns the number of rows in the notebook control.
 
 \membersection{wxNotebook::GetRowCount}\label{wxnotebookgetrowcount}
 
 \constfunc{int}{GetRowCount}{\void}
 
 Returns the number of rows in the notebook control.
 
+
 \membersection{wxNotebook::GetSelection}\label{wxnotebookgetselection}
 
 \constfunc{int}{GetSelection}{\void}
 
 \membersection{wxNotebook::GetSelection}\label{wxnotebookgetselection}
 
 \constfunc{int}{GetSelection}{\void}
 
-Returns the currently selected page, or -1 if none was selected.
+Returns the currently selected page, or $-1$ if none was selected.
+
+Note that this method may return either the previously or newly selected page
+when called from the {\tt EVT\_NOTEBOOK\_PAGE\_CHANGED} handler depending on
+the platform and so\rtfsp
+\helpref{wxNotebookEvent::GetSelection}{wxnotebookeventgetselection} should be
+used instead in this case.
+
+
+\membersection{wxNotebook::HitTest}\label{wxnotebookhittest}
+
+\func{int}{HitTest}{\param{const wxPoint\&}{ pt}, \param{long}{ *flags = {\tt NULL}}}
+
+Returns the index of the tab at the specified position or {\tt wxNOT\_FOUND} 
+if none. If {\it flags} parameter is non {\tt NULL}, the position of the point
+inside the tab is returned as well.
+
+{\bf NB: } This method is currently only implemented under wxMSW and wxUniv.
+
+\wxheading{Parameters}
+
+\docparam{pt}{Specifies the point for the hit test.}
+
+\docparam{flags}{Return value for detailed information. One of the following values:
+\twocolwidtha{7cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{{\bf wxNB\_HITTEST\_NOWHERE}}{There was no tab under this point.}
+\twocolitem{{\bf wxNB\_HITTEST\_ONICON}}{The point was over an icon (currently wxMSW only).}
+\twocolitem{{\bf wxNB\_HITTEST\_ONLABEL}}{The point was over a label (currently wxMSW only).}
+\twocolitem{{\bf wxNB\_HITTEST\_ONITEM}}{The point was over an item, but not on the label or icon.}
+\end{twocollist}
+}
+
+\wxheading{Return value}
+
+Returns the zero-based tab index or {\tt wxNOT\_FOUND} if there is no tab is at
+the specified position.
+
+
 
 \membersection{wxNotebook::InsertPage}\label{wxnotebookinsertpage}
 
 
 \membersection{wxNotebook::InsertPage}\label{wxnotebookinsertpage}
 
-\func{bool}{InsertPage}{\param{int}{ index}, \param{wxNotebookPage*}{ page},
+\func{bool}{InsertPage}{\param{size\_t}{ index}, \param{wxNotebookPage*}{ page},
  \param{const wxString\&}{ text},
  \param{const wxString\&}{ text},
- \param{bool}{ select = FALSE},
+ \param{bool}{ select = false},
  \param{int}{ imageId = -1}}
 
 Inserts a new page at the specified position.
  \param{int}{ imageId = -1}}
 
 Inserts a new page at the specified position.
@@ -198,7 +283,7 @@ Inserts a new page at the specified position.
 
 \wxheading{Return value}
 
 
 \wxheading{Return value}
 
-TRUE if successful, FALSE otherwise.
+true if successful, false otherwise.
 
 \wxheading{Remarks}
 
 
 \wxheading{Remarks}
 
@@ -208,6 +293,7 @@ Do not delete the page, it will be deleted by the notebook.
 
 \helpref{wxNotebook::AddPage}{wxnotebookaddpage}
 
 
 \helpref{wxNotebook::AddPage}{wxnotebookaddpage}
 
+
 \membersection{wxNotebook::OnSelChange}\label{wxnotebookonselchange}
 
 \func{void}{OnSelChange}{\param{wxNotebookEvent\&}{ event}}
 \membersection{wxNotebook::OnSelChange}\label{wxnotebookonselchange}
 
 \func{void}{OnSelChange}{\param{wxNotebookEvent\&}{ event}}
@@ -218,21 +304,26 @@ An event handler function, called when the page selection is changed.
 
 \helpref{wxNotebookEvent}{wxnotebookevent}
 
 
 \helpref{wxNotebookEvent}{wxnotebookevent}
 
+
 \membersection{wxNotebook::RemovePage}\label{wxnotebookremovepage}
 
 \membersection{wxNotebook::RemovePage}\label{wxnotebookremovepage}
 
-\func{bool}{RemovePage}{\param{int}{ page}}
+\func{bool}{RemovePage}{\param{size\_t}{ page}}
 
 Deletes the specified page, without deleting the associated window.
 
 
 Deletes the specified page, without deleting the associated window.
 
+
 \membersection{wxNotebook::SetImageList}\label{wxnotebooksetimagelist}
 
 \func{void}{SetImageList}{\param{wxImageList*}{ imageList}}
 
 \membersection{wxNotebook::SetImageList}\label{wxnotebooksetimagelist}
 
 \func{void}{SetImageList}{\param{wxImageList*}{ imageList}}
 
-Sets the image list for the page control.
+Sets the image list for the page control. It does not take
+ownership of the image list, you must delete it yourself.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxImageList}{wximagelist}
+\helpref{wxImageList}{wximagelist},
+\helpref{AssignImageList}{wxnotebookassignimagelist}
+
 
 \membersection{wxNotebook::SetPadding}\label{wxnotebooksetpadding}
 
 
 \membersection{wxNotebook::SetPadding}\label{wxnotebooksetpadding}
 
@@ -240,31 +331,41 @@ Sets the image list for the page control.
 
 Sets the amount of space around each page's icon and label, in pixels.
 
 
 Sets the amount of space around each page's icon and label, in pixels.
 
+{\bf NB:} The vertical padding cannot be changed in wxGTK.
+
+
 \membersection{wxNotebook::SetPageSize}\label{wxnotebooksetpagesize}
 
 \func{void}{SetPageSize}{\param{const wxSize\&}{ size}}
 
 Sets the width and height of the pages.
 
 \membersection{wxNotebook::SetPageSize}\label{wxnotebooksetpagesize}
 
 \func{void}{SetPageSize}{\param{const wxSize\&}{ size}}
 
 Sets the width and height of the pages.
 
+{\bf NB:} This method is currently not implemented for wxGTK.
+
+
 \membersection{wxNotebook::SetPageImage}\label{wxnotebooksetpageimage}
 
 \membersection{wxNotebook::SetPageImage}\label{wxnotebooksetpageimage}
 
-\func{bool}{SetPageImage}{\param{int}{ page}, \param{int }{image}}
+\func{bool}{SetPageImage}{\param{size\_t}{ page}, \param{int }{image}}
 
 Sets the image index for the given page. {\it image} is an index into
 the image list which was set with \helpref{wxNotebook::SetImageList}{wxnotebooksetimagelist}.
 
 
 Sets the image index for the given page. {\it image} is an index into
 the image list which was set with \helpref{wxNotebook::SetImageList}{wxnotebooksetimagelist}.
 
+
 \membersection{wxNotebook::SetPageText}\label{wxnotebooksetpagetext}
 
 \membersection{wxNotebook::SetPageText}\label{wxnotebooksetpagetext}
 
-\func{bool}{SetPageText}{\param{int}{ page}, \param{const wxString\& }{text}}
+\func{bool}{SetPageText}{\param{size\_t}{ page}, \param{const wxString\& }{text}}
 
 Sets the text for the given page.
 
 
 Sets the text for the given page.
 
+
 \membersection{wxNotebook::SetSelection}\label{wxnotebooksetselection}
 
 \membersection{wxNotebook::SetSelection}\label{wxnotebooksetselection}
 
-\func{int}{SetSelection}{\param{int}{ page}}
+\func{int}{SetSelection}{\param{size\_t}{ page}}
 
 Sets the selection for the given page, returning the previous selection.
 
 
 Sets the selection for the given page, returning the previous selection.
 
+The call to this function generates the page changing events.
+
 \wxheading{See also}
 
 \helpref{wxNotebook::GetSelection}{wxnotebookgetselection}
 \wxheading{See also}
 
 \helpref{wxNotebook::GetSelection}{wxnotebookgetselection}