]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/auinotebook.tex
added support for binary data to wxConfig (slightly modified patch 1736788)
[wxWidgets.git] / docs / latex / wx / auinotebook.tex
index 1e17dda5e95896f3b994dc383ab9dcc7554012d3..73a6be062490157875c6f2a10a2134b3495adfcf 100644 (file)
@@ -3,18 +3,20 @@
 % auibook.h at 11/Nov/06 22:56:01
 %
 
-
 \section{\class{wxAuiNotebook}}\label{wxauinotebook}
 
+wxAuiNotebook is part of the wxAUI class framework.
+See also \helpref{wxAUI overview}{wxauioverview}.
 
-wxAuiNotebook is a notebook control which implements many features common in applications with dockable panes.  Specifically, wxAuiNotebook implements functionality which allows the user to rearrange tab order via drag-and-drop, split the tab window into many different spliiter configurations, and toggle through different themes to customize the control's look and feel.
-
-
+wxAuiNotebook is a notebook control which implements many features common in applications with dockable panes.
+Specifically, wxAuiNotebook implements functionality which allows the user to rearrange tab order via drag-and-drop,
+split the tab window into many different splitter configurations, and toggle through different themes to customize
+the control's look and feel.
 
 An effort has been made to try to maintain an API as similar to that of wxNotebook.
 
-The default theme that is used is wxAuiDefaultTabArt, which provides a modern, glossy look and feel.  The theme can be changed by calling \helpref{wxAuiNotebook::SetArtProvider}{wxauinotebooksetartprovider}
-
+The default theme that is used is wxAuiDefaultTabArt, which provides a modern, glossy look and feel.
+The theme can be changed by calling \helpref{wxAuiNotebook::SetArtProvider}{wxauinotebooksetartprovider}.
 
 \wxheading{Derived from}
 
@@ -22,125 +24,209 @@ The default theme that is used is wxAuiDefaultTabArt, which provides a modern, g
 
 \wxheading{Include files}
 
-<auibook.h>
+<wx/aui/auibook.h>
+
+
+\wxheading{Window styles}
+
+\twocolwidtha{5cm}%
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\windowstyle{wxAUI\_NB\_DEFAULT\_STYLE}}{Defined as wxAUI\_NB\_TOP | wxAUI\_NB\_TAB\_SPLIT | wxAUI\_NB\_TAB\_MOVE | wxAUI\_NB\_SCROLL\_BUTTONS | wxAUI\_NB\_CLOSE\_ON\_ACTIVE\_TAB
+.}
+\twocolitem{\windowstyle{wxAUI\_NB\_TAB\_SPLIT}}{Allows the tab control to be split by dragging a tab.}
+\twocolitem{\windowstyle{wxAUI\_NB\_TAB\_MOVE}}{Allows a tab to be moved horizontally by dragging.}
+\twocolitem{\windowstyle{wxAUI\_NB\_TAB\_EXTERNAL\_MOVE}}{Allows a tab to be moved to another tab control.}
+\twocolitem{\windowstyle{wxAUI\_NB\_TAB\_FIXED\_WIDTH}}{With this style, all tabs have the same width.}
+\twocolitem{\windowstyle{wxAUI\_NB\_SCROLL\_BUTTONS}}{With this style, left and right scroll buttons are displayed.}
+\twocolitem{\windowstyle{wxAUI\_NB\_WINDOWLIST\_BUTTON}}{With this style, a drop-down list of windows is available.}
+\twocolitem{\windowstyle{wxAUI\_NB\_CLOSE\_BUTTON}}{With this style, a close button is available on the tab bar.}
+\twocolitem{\windowstyle{wxAUI\_NB\_CLOSE\_ON\_ACTIVE\_TAB}}{With this style, the close button is visible on the active tab.}
+\twocolitem{\windowstyle{wxAUI\_NB\_CLOSE\_ON\_ALL\_TABS}}{With this style, the close button is visible on all tabs.}
+\end{twocollist}
+
 
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-
 \membersection{wxAuiNotebook::wxAuiNotebook}\label{wxauinotebookwxauinotebook}
 
 \func{}{wxAuiNotebook}{\void}
 
-
 \func{}{wxAuiNotebook}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = wxAUI\_NB\_DEFAULT\_STYLE}}
 
-Constructor.  Creates a wxAuiNotebok control.
-
-\membersection{wxAuiNotebook::\destruct{wxAuiNotebook}}\label{wxauinotebookdtor}
-
-\func{}{\destruct{wxAuiNotebook}}{\void}
-
+Constructor. Creates a wxAuiNotebok control.
 
 \membersection{wxAuiNotebook::AddPage}\label{wxauinotebookaddpage}
 
 \func{bool}{AddPage}{\param{wxWindow* }{page}, \param{const wxString\& }{caption}, \param{bool }{select = false}, \param{const wxBitmap\& }{bitmap = wxNullBitmap}}
 
+Adds a page.  If the {\it select} parameter is true, calling this will generate a page change event.
 
 \membersection{wxAuiNotebook::Create}\label{wxauinotebookcreate}
 
 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = 0}}
 
+Creates the notebook window.
 
 \membersection{wxAuiNotebook::DeletePage}\label{wxauinotebookdeletepage}
 
 \func{bool}{DeletePage}{\param{size\_t }{page}}
 
+Deletes a page at the given index.  Calling this method will generate a page change event.
 
-\membersection{wxAuiNotebook::DoSizing}\label{wxauinotebookdosizing}
-
-\func{void}{DoSizing}{\void}
-
-
-\membersection{wxAuiNotebook::FindTab}\label{wxauinotebookfindtab}
+\membersection{wxAuiNotebook::GetArtProvider}\label{wxauinotebookgetartprovider}
 
-\func{bool}{FindTab}{\param{wxWindow* }{page}, \param{wxAuiTabCtrl** }{ctrl}, \param{int* }{idx}}
+\constfunc{wxAuiTabArt*}{GetArtProvider}{\void}
 
+Returns the associated art provider.
 
-\membersection{wxAuiNotebook::GetActiveTabCtrl}\label{wxauinotebookgetactivetabctrl}
+\membersection{wxAuiNotebook::GetHeightForPageHeight}\label{wxauinotebookgetheightforpageheight}
 
-\func{wxAuiTabCtrl*}{GetActiveTabCtrl}{\void}
+\func{int}{GetHeightForPageHeight}{\param{int }{pageHeight}}
 
+Returns the desired height of the notebook for the given page height. Use this to fit the notebook to
+a given page size.
 
-\membersection{wxAuiNotebook::GetArtProvider}\label{wxauinotebookgetartprovider}
+\membersection{wxAuiNotebook::GetPage}\label{wxauinotebookgetpage}
 
-\constfunc{wxAuiTabArt*}{GetArtProvider}{\void}
+\constfunc{wxWindow*}{GetPage}{\param{size\_t }{page\_idx}}
 
+Returns the page specified by the given index.
 
-\membersection{wxAuiNotebook::GetPage}\label{wxauinotebookgetpage}
+\membersection{wxAuiNotebook::GetPageBitmap}\label{wxauinotebookgetpagebitmap}
 
-\constfunc{wxWindow*}{GetPage}{\param{size\_t }{page\_idx}}
+\constfunc{wxBitmap}{GetPageBitmap}{\param{size\_t }{page}}
 
+Returns the tab bitmap for the page.
 
 \membersection{wxAuiNotebook::GetPageCount}\label{wxauinotebookgetpagecount}
 
 \constfunc{size\_t}{GetPageCount}{\void}
 
+Returns the number of pages in the notebook.
 
 \membersection{wxAuiNotebook::GetPageIndex}\label{wxauinotebookgetpageindex}
 
 \constfunc{int}{GetPageIndex}{\param{wxWindow* }{page\_wnd}}
 
+Returns the page index for the specified window.  If the window is not found in
+the notebook, wxNOT\_FOUND is returned.
+
+\membersection{wxAuiNotebook::GetPageText}\label{wxauinotebookgetpagetext}
+
+\constfunc{wxString}{GetPageText}{\param{size\_t }{page}}
+
+Returns the tab label for the page.
+
+\membersection{wxAuiNotebook::GetTabCtrlHeight}\label{wxauinotebookgettabctrlheight}
+
+\constfunc{int}{GetTabCtrlHeight}{\void}
+
+Returns the height of the tab control.
 
 \membersection{wxAuiNotebook::GetSelection}\label{wxauinotebookgetselection}
 
 \constfunc{int}{GetSelection}{\void}
 
+Returns the currently selected page.
 
-\membersection{wxAuiNotebook::InitNotebook}\label{wxauinotebookinitnotebook}
+\membersection{wxAuiNotebook::GetTabCtrlHeight}\label{wxauinotebookgettabctrlheight}
 
-\func{void}{InitNotebook}{\param{long }{style}}
+\constfunc{int}{GetTabCtrlHeight}{\void}
 
+Returns the height of the tab control.
 
 \membersection{wxAuiNotebook::InsertPage}\label{wxauinotebookinsertpage}
 
 \func{bool}{InsertPage}{\param{size\_t }{page\_idx}, \param{wxWindow* }{page}, \param{const wxString\& }{caption}, \param{bool }{select = false}, \param{const wxBitmap\& }{bitmap = wxNullBitmap}}
 
+InsertPage() is similar to AddPage, but allows the ability to specify the insert location.
+If the {\it select} parameter is true, calling this will generate a page change event.
 
 \membersection{wxAuiNotebook::RemovePage}\label{wxauinotebookremovepage}
 
 \func{bool}{RemovePage}{\param{size\_t }{page}}
 
+Removes a page, without deleting the window pointer.
 
 \membersection{wxAuiNotebook::SetArtProvider}\label{wxauinotebooksetartprovider}
 
 \func{void}{SetArtProvider}{\param{wxAuiTabArt* }{art}}
 
+Sets the art provider to be used by the notebook.
+
+\membersection{wxAuiNotebook::SetFont}\label{wxauinotebooksetfont}
+
+\func{bool}{SetFont}{\param{const wxFont\& }{font}}
+
+Sets the font for drawing the tab labels, using a bold version of the font for selected tab labels.
+
+\membersection{wxAuiNotebook::SetNormalFont}\label{wxauinotebooksetnormalfont}
+
+\func{void}{SetNormalFont}{\param{const wxFont\& }{font}}
+
+Sets the font for drawing unselected tab labels.
+
+\membersection{wxAuiNotebook::SetSelectedFont}\label{wxauinotebooksetselectedfont}
+
+\func{void}{SetSelectedFont}{\param{const wxFont\& }{font}}
+
+Sets the font for drawing selected tab labels.
+
+\membersection{wxAuiNotebook::SetMeasuringFont}\label{wxauinotebooksetmeasuringfont}
+
+\func{void}{SetMeasuringFont}{\param{const wxFont\& }{font}}
+
+Sets the font for measuring tab labels.
 
 \membersection{wxAuiNotebook::SetPageBitmap}\label{wxauinotebooksetpagebitmap}
 
 \func{bool}{SetPageBitmap}{\param{size\_t }{page}, \param{const wxBitmap\& }{bitmap}}
 
+Sets the bitmap for the page.  To remove a bitmap from the tab caption, pass
+wxNullBitmap.
 
 \membersection{wxAuiNotebook::SetPageText}\label{wxauinotebooksetpagetext}
 
 \func{bool}{SetPageText}{\param{size\_t }{page}, \param{const wxString\& }{text}}
 
+Sets the tab label for the page.
 
 \membersection{wxAuiNotebook::SetSelection}\label{wxauinotebooksetselection}
 
 \func{size\_t}{SetSelection}{\param{size\_t }{new\_page}}
 
+Sets the page selection.  Calling this method will generate a page change event.
 
 \membersection{wxAuiNotebook::SetTabCtrlHeight}\label{wxauinotebooksettabctrlheight}
 
 \func{void}{SetTabCtrlHeight}{\param{int }{height}}
 
-these can be overridden
+Sets the tab height.  By default, the tab control height is calculated
+by measuring the text height and bitmap sizes on the tab captions.  Calling this
+method will override that calculation and set the tab control to the specified
+height parameter.  A call to this method will override any call to SetUniformBitmapSize().
+Specifying -1 as the height will return the control to its default auto-sizing behaviour.
+
+\membersection{wxAuiNotebook::SetUniformBitmapSize}\label{wxauinotebooksetuniformbitmapsize}
+
+\func{void}{SetUniformBitmapSize}{\param{const wxSize\& }{size}}
+
+SetUniformBitmapSize() ensures that all tabs will have the same height, even
+if some tabs don't have bitmaps.  Passing wxDefaultSize to this function will
+instruct the control to use dynamic tab height, which is the default behaviour.
+Under the default behaviour, when a tab with a large bitmap is added, the tab control's
+height will automatically increase to accommodate the larger bitmap.
+
+\func{void}{Split}{\param{size\_t }{page}, \param{int }{direction}}
+
+Split performs a split operation programmatically. The argument \arg{page} indicates
+the page that will be split off.  This page will also become the active page after the
+split.  The \arg{direction} argument specifies where the pane should go, it should be one
+of the following: wxTOP, wxBOTTOM, wxLEFT, or wxRIGHT.
+
 
 
-\membersection{wxAuiNotebook::SetWindowStyleFlag}\label{wxauinotebooksetwindowstyleflag}
 
-\func{void}{SetWindowStyleFlag}{\param{long }{style}}