wxNotebook(3)

NAME
wxNotebook - Functions for wxNotebook class

DESCRIPTION

This class represents a notebook control, which manages multiple windows with associated tabs.

To use the class, create a wxNotebook object and call wxBookCtrlBase:addPage/4 or wxBookCtrlBase:insertPage/5, passing a window to be used as the page. Do not explicitly delete the window for a page that is currently managed by wxNotebook.

wxNotebookPage is a typedef for wxWindow.

Styles

This class supports the following styles:

Page backgrounds

On Windows, the default theme paints a background on the notebook's pages. If you wish to suppress this theme, for aesthetic or performance reasons, there are three ways of doing it. You can use wxNB_NOPAGETHEME to disable themed drawing for a particular notebook, you can call wxSystemOptions:setOption/2 to disable it for the whole application, or you can disable it for individual pages by using wxWindow:setBackgroundColour/2.

To disable themed pages globally:

Set the value to 1 to enable it again. To give a single page a solid background that more or less fits in with the overall theme, use:

On platforms other than Windows, or if the application is not using Windows themes, getThemeBackgroundColour/1 will return an uninitialised colour object, and the above code will therefore work on all platforms.

See: ?wxBookCtrl, wxBookCtrlEvent, wxImageList, Examples

This class is derived (and can use functions) from: wxBookCtrlBase wxControl wxWindow wxEvtHandler

wxWidgets docs: wxNotebook

EVENTS

Event types emitted from this class: command_notebook_page_changed, command_notebook_page_changing

DATA TYPES
wxNotebook() = wx:wx_object()

EXPORTS

new() -> wxNotebook()

    Constructs a notebook control.

new(Parent, Id) -> wxNotebook()

    Types:
        Parent = wxWindow:wxWindow()
        Id = integer()

new(Parent, Id, Options :: [Option]) -> wxNotebook()

    Types:
        Parent = wxWindow:wxWindow()
        Id = integer()
        Option =
            {pos, {X :: integer(), Y :: integer()}} |
            {size, {W :: integer(), H :: integer()}} |
            {style, integer()}

    Constructs a notebook control.

    Note that sometimes you can reduce flicker by passing the wxCLIP_CHILDREN window style.

destroy(This :: wxNotebook()) -> ok

    Destroys the wxNotebook object.

assignImageList(This, ImageList) -> ok

    Types:
        This = wxNotebook()
        ImageList = wxImageList:wxImageList()

    Sets the image list for the page control and takes ownership of the list.

    See: wxImageList, setImageList/2

create(This, Parent, Id) -> boolean()

    Types:
        This = wxNotebook()
        Parent = wxWindow:wxWindow()
        Id = integer()

create(This, Parent, Id, Options :: [Option]) -> boolean()

    Types:
        This = wxNotebook()
        Parent = wxWindow:wxWindow()
        Id = integer()
        Option =
            {pos, {X :: integer(), Y :: integer()}} |
            {size, {W :: integer(), H :: integer()}} |
            {style, integer()}

    Creates a notebook control.

    See new/3 for a description of the parameters.

getImageList(This) -> wxImageList:wxImageList()

    Types:
        This = wxNotebook()

    Returns the associated image list, may be NULL.

    See: wxImageList, setImageList/2

getPageImage(This, NPage) -> integer()

    Types:
        This = wxNotebook()
        NPage = integer()

    Returns the image index for the given page.

getRowCount(This) -> integer()

    Types:
        This = wxNotebook()

    Returns the number of rows in the notebook control.

getThemeBackgroundColour(This) -> wx:wx_colour4()

    Types:
        This = wxNotebook()

    If running under Windows and themes are enabled for the application, this function returns a suitable colour for painting the background of a notebook page, and can be passed to wxWindow:setBackgroundColour/2.

    Otherwise, an uninitialised colour will be returned.

setImageList(This, ImageList) -> ok

    Types:
        This = wxNotebook()
        ImageList = wxImageList:wxImageList()

    Sets the image list to use.

    It does not take ownership of the image list, you must delete it yourself.

    See: wxImageList, assignImageList/2

setPadding(This, Padding) -> ok

    Types:
        This = wxNotebook()
        Padding = {W :: integer(), H :: integer()}

    Sets the amount of space around each page's icon and label, in pixels.

    Note: The vertical padding cannot be changed in wxGTK.

setPageSize(This, Size) -> ok

    Types:
        This = wxNotebook()
        Size = {W :: integer(), H :: integer()}

    Sets the width and height of the pages.

    Note: This method is currently not implemented for wxGTK.

setPageImage(This, Page, Image) -> boolean()

    Types:
        This = wxNotebook()
        Page = Image = integer()

    Sets the image index for the given page.

    image is an index into the image list which was set with setImageList/2.