wxErlang

Reference Manual

Version 2.1

Table of Contents

wxNotebook

Module

wxNotebook

Module Summary

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

new() -> wxNotebook()

Constructs a notebook control.

new(Parent, Id) -> wxNotebook()

Types

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

Types

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

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

See: wxImageList, setImageList/2

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

Types

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

Types

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

Returns the associated image list, may be NULL.

See: wxImageList, setImageList/2

getPageImage(This, NPage) -> integer()

Types

NPage = integer()

Returns the image index for the given page.

getRowCount(This) -> integer()

Types

Returns the number of rows in the notebook control.

getThemeBackgroundColour(This) -> wx:wx_colour4()

Types

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

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

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

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

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.