wxRuby Documentation Home

# Wx::NotebookEvent

This class represents the events generated by a notebook control: currently,
there are two of them. The PAGE_CHANGING event is sent before the current
page is changed. It allows the program to examine the current page (which
can be retrieved with
get_old_selection) and to veto the page
change by calling Veto if, for example, the
current values in the controls of the old page are invalid.

The second event – PAGE_CHANGED – is sent after the page has been changed and
the program cannot veto it any more, it just informs it about the page change.

To summarize, if the program is interested in validating the page values
before allowing the user to change it, it should process the PAGE_CHANGING
event, otherwise PAGE_CHANGED is probably enough. In any case, it is probably
unnecessary to process both events at once.

## Derived from

NotifyEvent

CommandEvent

Event

Object

## See also

Notebook

## Methods

- NotebookEvent.new
- NotebookEvent#get_old_selection
- NotebookEvent#get_selection
- NotebookEvent#set_old_selection
- NotebookEvent#set_selection

### NotebookEvent.new

NotebookEvent.new(%(arg-type)EventType% eventType = EVT_NULL, Integer id = 0, Integer sel = $-1$, Integer oldSel = $-1$)

Constructor (used internally by Widgets only).

### NotebookEvent#get_old_selection

Integer get_old_selection()

Returns the page that was selected before the change, $-1$ if none was selected.

### NotebookEvent#get_selection

Integer get_selection()

Returns the currently selected page, or $-1$ if none was selected.

NB: under Windows, GetSelection() will return the same value as get_old_selection when called from
`EVT_NOTEBOOK_PAGE_CHANGING` handler and not the page which is going to
be selected. Also note that the values of selection and old selection returned
for an event generated in response to a call to
Notebook#set_selection shouldn’t be trusted
as they are currently inconsistent under different platforms (but in this case
you presumably don’t need them anyhow as you already have the corresponding
information).

### NotebookEvent#set_old_selection

set_old_selection(%(arg-type)Integer% page)

Sets the id of the page selected before the change.

### NotebookEvent#set_selection

set_selection(%(arg-type)Integer% page)

Sets the selection member variable.

#### See also

NotebookEvent#get_selection

[This page automatically generated from the Textile source at 2023-06-09 00:45:33 +0000]