NAME
notebook - create and manipulate notebook widgets
SYNOPSIS
notebook pathName ?options?
INHERITANCE
itk::Widget <- notebook
STANDARD OPTIONS
background foreground scrollCommand width
cursor height
See the "options" manual entry for details on the standard
options.
WIDGET-SPECIFIC OPTIONS
Name: auto
Class: Auto
Command-Line Switch: -auto
Specifies whether to use the automatic pack
ing/unpacking algorithm of the notebook. A value of
true indicates that page frames will be unpacked
and packed acoording to the algorithm described in
the select command. A value of false leaves the
current page packed and subsequent selects, next,
or previous commands do not switch pages automati
cally. In either case the page's associated command
(see the add command's description of the command
option) is invoked. The value may have any of the
forms accepted by the Tcl_GetBoolean, such as true,
false, 0, 1, yes, or no.
For example, if a series of pages in a notebook
simply change certain display configurations of a
graphical display, the -auto flag could be used.
By setting it, the -command procs could do the
appropriate reconfiguring of the page when the page
is switched.
_________________________________________________________________
DESCRIPTION
The notebook command creates a new window (given by the
pathName argument) and makes it into a notebook widget.
Additional options, described above may be specified on
the command line or in the option database to configure
aspects of the notebook such as its colors, font, and
text. The notebook command returns its pathName argument.
At the time this command is invoked, there must not exist
a window named pathName, but pathName's parent must exist.
displays one page from the set as the selected page. When
a page is selected, the page's contents are displayed in
the page area. When first created a notebook has no pages.
Pages may be added or deleted using widget commands
described below.
NOTEBOOK PAGES
A notebook's pages area contains a single child site
frame. When a new page is created it is a child of this
frame. The page's child site frame serves as a geometry
container for applications to pack widgets into. It is
this frame that is automatically unpacked or packed when
the auto option is true. This creates the effect of one
page being visible at a time. When a new page is selected,
the previously selected page's child site frame is auto
matically unpacked from the notebook's child site frame
and the newly selected page's child site is packed into
the notebook's child site frame.
However, sometimes it is desirable to handle page changes
in a different manner. By specifying the auto option as
false, child site packing can be disabled and done differ
ently. For example, all widgets might be packed into the
first page's child site frame. Then when a new page is
selected, the application can reconfigure the widgets and
give the appearance that the page was flipped.
In both cases the command option for a page specifies a
Tcl Command to execute when the page is selected. In the
case of auto being true, it is called between the unpack
ing of the previously selected page and the packing of the
newly selected page.
WIDGET-SPECIFIC METHODS
The notebookfR command creates a new Tcl command whose
name is pathName. This command may be used to invoke vari
ous operations on the widget. It has the following general
form:
pathName option ?arg arg ...?
option and the args determine the exact behavior of the
command.
Many of the widget commands for a notebook take as one
argument an indicator of which page of the notebook to
operate on. These indicators are called indexes and may be
specified in any of the following forms:
number Specifies the index of the the component. For
menus, 0 corresponds to the left-most menu of the
most entry of the menu. number Specifies the page
numerically, where 0 corresponds to the first page
in the notebook, 1 to the second, and so on.
select Specifies the currently selected page's index. If
no page is currently selected, the value -1 is
returned.
end Specifes the last page in the notebooks's index. If
the notebook is empty this will return -1.
pattern
If the index doesn't satisfy the form of a number,
then this form is used. Pattern is pattern-matched
against the label of each page in the notebook, in
order from the first to the last page, until a
matching entry is found. The rules of Tcl_String
Match are used.
The following commands are possible for notebook widgets:
pathName add ?option value?
Add a new page at the end of the notebook. A new
child site frame is created. Returns the child site
pathName. If additional arguments are present, they
specify any of the following options:
-background value
Specifies a background color to use for dis
playing the child site frame of this page.
If this option is specified as an empty
string (the default), then the background
option for the overall notebook is used.
-command value
Specifies a Tcl command to be executed when
this page is selected. This allows the pro
grammer a hook to reconfigure this page's
widgets or any other page's widgets.
If the notebook has the auto option set to
true, when a page is selected this command
will be called immediately after the previ
ously selected page is unpacked and immedi
ately before this page is selected. The
index value select is valid during this Tcl
command. `index select' will return this
page's page number.
If the auto option is set to false, when a
page is selected the unpack and pack calls
are bypassed. This Tcl command is still
called.
Specifies a foreground color to use for dis
playing tab labels when tabs are in their
normal unselected state. If this option is
specified as an empty string (the default),
then the foreground option for the overall
notebook is used.
-label value
Specifies a string to associate with this
page. This label serves as an additional
identifier used to reference the page. This
label may be used for the index value in
widget commands.
pathName childSite ?index?
If passed no arguments, returns a list of pathNames
for all the pages in the notebook. If the notebook
is empty, an empty list is returned
If index is passed, it returns the pathName for the
page's child site frame specified by index. Widgets
that are created with this pathName will be dis
played when the associated page is selected. If
index is not a valid index, an empty string is
returned.
pathName cget option
Returns the current value of the configuration
option given by option.
pathName configure ?option? ?value option value ...?
Query or modify the configuration options of the
widget. If no option is specified, returns a list
describing all of the available options for path
Name (see Tk_ConfigureInfo for information on the
format of this list). If option is specified with
no value, then the command returns a list describ
ing the one named option (this list will be identi
cal to the corresponding sublist of the value
returned if no option is specified). If one or more
option-value pairs are specified, then the command
modifies the given widget option(s) to have the
given value(s); in this case the command returns an
empty string. Option may have any of the values
accepted by the notebook command.
pathName delete index1 ?index2?
Delete all of the pages between index1 and index2
inclusive. If index2 is omitted then it defaults
to index1. Returns an empty string.
pathName index index
Returns the numerical index corresponding to index.
Insert a new page in the notebook before the page
specified by index. A new child site frame is cre
ated. See the add command for valid options.
Returns the child site pathName.
pathName next
Advances the selected page to the next page (order
is determined by insertion order). If the currently
selected page is the last page in the notebook, the
selection wraps around to the first page in the
notebook.
For notebooks with auto set to true the current
page's child site is unpacked from the notebook's
child site frame. Then the next page's child site
is packed into the notebooks child site frame. The
Tcl command given with the command option will be
invoked between these two operations.
For notebooks with auto set to false the Tcl com
mand given with the command option will be invoked.
pathName pagecget index ?option?
Returns the current value of the configuration
option given by option for the page specified by
index. The valid available options are the same as
available to the add command.
pathName pageconfigure index ?option? ?value option value
...?
This command is similar to the configure command,
except that it applies to the options for an indi
vidual page, whereas configure applies to the
options for the notebook. Options may have any of
the values accepted by the add widget command. If
options are specified, options are modified as
indicated in the command and the command returns an
empty string. If no options are specified, returns
a list describing the current options for page
index (see Tk_ConfigureInfo for information on the
format of this list).
pathName prev
Moves the selected page to the previous page (order
is determined by insertion order). If the currently
selected page is the first page in the notebook,
the selection wraps around to the last page in the
notebook.
For notebooks with auto set to true the current
page's child site is unpacked from the notebook's
child site frame. Then the previous page's child
site is packed into the notebooks child site frame.
be invoked between these two operations.
For notebooks with auto set to false the Tcl com
mand given with the command option will be invoked.
pathName select index
Selects the page specified by index as the cur
rently selected page.
For notebooks with auto set to true the current
page's child site is unpacked from the notebook's
child site frame. Then the index page's child site
is packed into the notebooks child site frame. The
Tcl command given with the command option will be
invoked between these two operations.
For notebooks with auto set to false the Tcl com
mand given with the command option will be invoked.
pathName view
Returns the currently selected page. This command
is for compatibility with the scrollbar widget.
pathName view index
Selects the page specified by index as the cur
rently selected page. This command is for compati
bility with the scrollbar widget.
pathName view moveto fraction
Uses the fraction value to determine the corre
sponding page to move to. This command is for com
patibility with the scrollbar widget.
pathName view scroll num what
Uses the num value to determine how many pages to
move forward or backward (num can be negative or
positive). The what argument is ignored. This com
mand is for compatibility with the scrollbar wid
get.
EXAMPLE
Following is an example that creates a notebook with two
pages. In this example, we use a scrollbar widget to con
trol the notebook widget.
# Create the notebook widget and pack it.
notebook .nb -width 100 -height 100
pack .nb -anchor nw \
-fill both \
-expand yes \
-side left \
-padx 10 \
# Add two pages to the notebook, labelled
# "Page One" and "Page Two", respectively.
.nb add -label "Page One"
.nb add -label "Page Two"
# Get the child site frames of these two pages.
set page1CS [.nb childsite 0]
set page2CS [.nb childsite "Page Two"]
# Create buttons on each page of the notebook
button $page1CS.b -text "Button One"
pack $page1CS.b
button $page2CS.b -text "Button Two"
pack $page2CS.b
# Select the first page of the notebook
.nb select 0
# Create the scrollbar and associate teh scrollbar
# and the notebook together, then pack the scrollbar
ScrollBar .scroll -command ".nb view"
.nb configure -scrollcommand ".scroll set"
pack .scroll -fill y -expand yes -pady 10
AUTHOR
Bill W. Scott
KEYWORDS
notebook page
Man(1) output converted with
man2html