XmNotebook(3X) UNIX System V XmNotebook(3X)
NAME
XmNotebook - The Notebook widget class
SYNOPSIS
#include <Xm/Notebook.h>
VERSION
This page documents Motif 2.1.
DESCRIPTION
Notebook is a manager widget that organizes its children
into pages, tabs, status areas, and page scrollers to
simulate a real notebook. It stacks its page children so
that all page children occupy the same area like real book
pages. Notebook displays visuals that look like the binding
of a book and the edges of other pages around the page that
is shown. Tab children simulate notebook tabs. Major tabs
divide Notebook into several sections, and minor tabs
subdivide these sections. Status area children provide
additional information about pages such as page numbers. The
page scroller child allows the user to move from page to
page. Notebook also provides tab scrollers for scrolling
major and minor tabs if it cannot display all tabs within
its edges.
The application creates pages, tabs, status areas, and page
scroller as children of the Notebook widget. Notebook
creates tab scrollers when the Notebook is created.
The XmNnotebookChildType constraint resource of Notebook
determines whether a child widget is a page, tab, status
area, or page scroller. Any Motif widget can be a page of
the Notebook. When the application creates a child of the
Notebook widget without setting the child type constraint,
the child becomes a page by default, unless it has the
XmQTactivatable, XmQTaccessTextual, or XmQTnavigator trait.
Children with the XmQTactivatable, XmQTaccessTextual, or
XmQTnavigator trait become major tabs, status areas, and
page scrollers, respectively.
Notebook uses the XmQTaccessTextual, XmQTactivatable,
XmQTjoinSide, and XmQTnavigator traits, and installs the
XmQTscrollFrame trait.
The application attaches a tab to a page by creating a tab
child of the Notebook and setting the XmNpageNumber
constraint to the page number of the targeted page. By the
same method, a status area widget can be attached to a page.
The page scroller child, on the other hand, is associated
with the Notebook, not with a specific page. Therefore,
there is only one valid page scroller for each Notebook.
Page 1 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
Pages
Only one child of type XmPAGE is displayed at a time by
Notebook. Other page children are hidden off-screen. When
Notebook displays a particular page, it positions the
previously-displayed page off-screen and puts the new page
in its place. The page is resized to fit into the dimensions
that Notebook has allocated to display pages.
Page Numbers
Notebook uses the XmNcurrentPageNumber, XmNfirstPageNumber,
and XmNlastPageNumber resources to determine the current
page and available page number range. Only those pages whose
page numbers are within the range can be displayed. Other
pages cannot be displayed until the range between
XmNfirstPageNumber and XmNlastPageNumber is changed to
include them or their page numbers are changed to a number
within the range.
If XmNfirstPageNumber and XmNlastPageNumber are not set
explicitly by the application, they are set to 1 by default;
Notebook sets XmNlastPageNumberto the largest page number
assigned by the application thereafter by default. However,
once XmNlastPageNumber is set by the application, Notebook
no longer changes it even when a page with a higher page
number is managed.
The XmNpageNumber constraint resource is used for specifying
the page number of a page widget. It can be set to any
integer. For tab and status area children, the resource is
used for linking the child widget to a page. For the page
scroller child, the resource has no meaning and is ignored
by the Notebook.
When a page without a page number is managed, Notebook
assigns it the smallest unallocated page number that is not
less than the first page number and greater than the last
allocated page number. When a tab or a status area without a
page number is managed, the newly managed widget is assigned
the page number of the most recently managed page, unless
the page already has the same type of child. If the page
does have the same type of child, Notebook assigns the newly
managed widget a page number one greater than the most
recently managed page; this new page number is now occupied.
Notebook may generate a default page number greater than
XmNlastPageNumber, making those pages inaccessible to the
user.
Duplicate and Empty Pages
Since an application can create or change page numbers, it
is possible to have duplicate page numbers and empty pages.
When two pages with the same page number are managed, only
the more recently managed page can be displayed. Inserting a
Page 2 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
page with an existing page number does not cause a warning.
The old page widget cannot be displayed until the new page
widget is removed from the Notebook or until the page number
of the old page widget is changed to some other number.
An empty page is a page slot where no page is inserted.
Empty pages occur when a tab or status area is associated
with a page number that has no matching page widget. Empty
pages display the blank Notebook background unless the
application provides visual information to this empty area
while processing XmNpageChangedCallback.
Notebook Visuals
Notebook draws lines around two sides of the top page to
simulate the edges of other pages that are behind the top
page. The XmNbackPagePlacement and XmNorientation resources
determine which two sides have the lines drawn around them.
By default, they are drawn on the bottom and right sides of
the top page. The application can set resources to control
how many lines are drawn and how wide the area that they are
drawn in is. Applications can also choose from three styles
of binding visual that simulates the binding of a Notebook.
Solid or spiral bindings can be drawn by Notebook, or the
application can supply a pixmap that is tiled into the
binding.
Tabs
A major or minor tab is a Motif widget with the
XmQTactivatable trait. If a widget without the trait is
created for a tab, Notebook does not provide the page
activation callback. As a result, even though the tab is
displayed, it cannot automatically move the associated page
to the top.
Major tabs divide the Notebook pages into sections. Minor
tabs subdivide these sections. Only minor tabs associated
with the current section are displayed, where a section
consists of the group of pages between the current major tab
and the next major tab, including the current major tab but
not including the page containing the next major tab. The
exception to this is when there is no preceding major tab,
in which case the section starts from the XmNfirstPageNumber
value. A user in one major tab section does not see the
minor tabs in other sections. However, all tabs are used in
computing the size of the Notebook.
Unlike regular notebook tabs, tabs in the Notebook are not
attached to a physical page (a widget). They are, instead,
attached to a logical page (a page number). Therefore, it is
possible to have a tab with an empty page. When a page with
a tab is removed from the Notebook, the tab is not removed
because it is still bound to a logical page. Destroying or
Page 3 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
unmanaging a page widget only erases the page and leaves an
empty page. It does not tear the page out of the Notebook.
To remove the tab, the application must explicitly destroy
or unmanage it.
Notebook supports the XmQTjoinSide trait. A widget that has
the XmQTjoinSide trait can be added to the Notebook as a
Major or Minor tab and will appear to be attached to its
associated page with no margins or shadows between them.
Status Areas
A status area is any widget that is used for describing the
associated page. For example, the Label widget as a status
area child can hold a simple string or a pixmap that
describes a page. A status area widget is also attached to a
page by the page number constraint resource. Therefore, it
is possible to have multiple status area widgets for one
page. Only the most recently managed status area widget for
that page can be displayed. All others for that page are not
unmanaged, but their sizes are used for computing the size
of the Notebook. If no status area widget is provided, the
Notebook displays its blank background in the status area's
reserved space. Notebook does not create any default status
area widget.
Page Scrollers
The page scroller of the Notebook is any widget that the
application creates for scrolling pages. If the application
does not create one when the Notebook is realized, Notebook
creates a SpinBox widget as the default page scroller. If
the application creates a new page scroller, the default
page scroller is destroyed. If the application creates
multiple page scrollers, only the most recently managed one
can be displayed and used. All others are unmanaged.
The default SpinBox page scroller grays out one of the arrow
visuals if the current page is a boundary page. If the
current page is the first page, the previous arrow of the
SpinBox is grayed. If the current page is the last page, the
next arrow of the SpinBox is grayed.
Tab Scrollers
Tab scrollers are created by the Notebook for scrolling
major tabs and minor tabs. When Notebook is initialized, it
creates four ArrowButtonGadgets for scrolling to the next
major tab, the previous major tab, the next minor tab, and
the previous minor tab. The application cannot replace
these tab scrollers. The application can change all
resources of these widgets except the position and the arrow
direction. Tab scrollers are only visible and enabled when
there is not enough space to display all the major or minor
tabs appropriate to the page. Tab scrollers are also grayed
Page 4 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
out when scrolling is inappropriate. The following lists the
tab scrollers that are created:
Child Widgets that XmNotebook Creates
Child Name Widget Class
Page Scroller PageScroller XmSpinBox
Next Major Tab Scroller MajorTabScrollerNext XmArrowButtonGadget
Previous Major Tab Scroller MajorTabScrollerPrevious XmArrowButtonGadget
Next Minor Tab Scroller MinorTabScrollerNext XmArrowButtonGadget
Previous Minor Tab Scroller MinorTabScrollerPrevious XmArrowButtonGadget
When the user selects the page scroller, a major tab, or a
minor tab, the value of XmNcurrentPageNumber is changed to
the selected page number and XmNpageChangedCallback is
invoked. After the application returns from the callback,
the Notebook displays the last page child whose page number
is equal to the current page number. It also displays the
last matched status area child. All other pages and status
areas are automatically hidden. Major tabs and minor tabs
that can fit into the Notebook's edges are displayed and
positioned appropriately. All other tabs are also hidden.
The application can also cause a page change by calling
XtSetValues on XmNcurrentPageNumber and then calling
XtCallCallbacks on XmNpageChangedCallback.
Orientation
The Notebook has eight different visual configurations,
depending on the value of XmNbackPagePlacement and
XmNorientation. These two resources determine the placement
of back pages, the binding, major tabs, minor tabs, the
status area, and the page scroller. The location of the
binding is determined by XmNorientation. Major tabs are
always placed on the back page side opposite to the binding;
Minor tabs are placed on the back page display area that is
visually connected to the binding. Both Major and Minor
tabs are ordered so that the page numbers they access
increase as they get closer to the corner where the back
pages meet. The status area and the page scroller are
always located on the bottom of the Notebook, inside the
frame. The page scroller is always placed adjacent to a back
page side. The following table shows the possible
configurations and the locations of each Notebook component
within the configuration. The default back page value and
the default orientation are based upon XmNlayoutDirection.
Notebook Configurations
XmNbackPagePlacement XmNorientation Major Tabs Status Area Binding
Minor Tabs Page Scroller
XmBOTTOM_RIGHT XmHORIZONTAL RIGHT BOTTOM LEFT LEFT
BOTTOM BOTTOM RIGHT
XmBOTTOM_RIGHT XmVERTICAL BOTTOM BOTTOM LEFT TOP
RIGHT BOTTOM RIGHT
Page 5 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmBOTTOM_LEFT XmHORIZONTAL LEFT BOTTOM RIGHT RIGHT
BOTTOM BOTTOM LEFT
XmBOTTOM_LEFT XmVERTICAL BOTTOM BOTTOM RIGHT TOP
LEFT BOTTOM LEFT
XmTOP_RIGHT XmHORIZONTAL RIGHT BOTTOM LEFT LEFT
TOP BOTTOM RIGHT
XmTOP_RIGHT XmVERTICAL TOP BOTTOM LEFT BOTTOM
RIGHT BOTTOM RIGHT
XmTOP_LEFT XmHORIZONTAL LEFT BOTTOM RIGHT RIGHT
TOP BOTTOM LEFT
XmTOP_LEFT XmVERTICAL TOP BOTTOM RIGHT BOTTOM
LEFT BOTTOM LEFT
There are three tab groups for tab group traversal inside
the Notebook: major tabs, minor tabs, and the page scroller.
The application can also create additional types of tab
groups within the Notebook; for example, each page added by
the application is treated as a separate tab group by the
traversal actions.
Classes
Notebook inherits behavior, resources, and traits from Core,
Composite, Constraint, and XmManager classes.
The class pointer is xmNotebookWidgetClass.
The class name is XmNotebook.
New Resources
The following table defines a set of widget resources used
by the programmer to specify data. The programmer can also
set the resource values for the inherited classes to set
attributes for this widget. To reference a resource by name
or by class in a .Xdefaults file, remove the XmN or XmC
prefix and use the remaining letters. To specify one of the
defined values for a resource in a .Xdefaultsfile, remove
the Xm prefix and use the remaining letters (in either
lowercase or uppercase, but include any underscores between
words). The codes in the access column indicate if the given
resource can be set at creation time (C), set by using
XtSetValues(S), retrieved by using XtGetValues (G), or is
not applicable (N/A).
XmNotebook Resource Set
Name Class Type Default Access
XmNbackPageBackground XmCBackPageBackground Pixel dynamic CSG
XmNbackPageForeground XmCBackPageForeground Pixel dynamic CSG
XmNbackPageNumber XmCBackPageNumber Cardinal 2 CSG
XmNbackPagePlacement XmCBackPagePlacement unsigned char dynamic CSG
XmNbackPageSize XmCBackPageSize Dimension 8 CSG
Page 6 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmNbindingPixmap XmCBindingPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNbindingType XmCBindingType unsigned char XmSPIRAL CSG
XmNbindingWidth XmCBindingWidth Dimension 25 CSG
XmNcurrentPageNumber XmCCurrentPageNumber int dynamic CSG
XmNfirstPageNumber XmCFirstPageNumber int 1 CSG
XmNframeBackground XmCFrameBackground Pixel dynamic CSG
XmNframeShadowThickness XmCShadowThickness Dimension 0 CSG
XmNinnerMarginHeight XmCInnerMarginHeight Dimension 0 CSG
XmNinnerMarginWidth XmCInnerMarginWidth Dimension 0 CSG
XmNlastPageNumber XmCLastPageNumber int dynamic CSG
XmNminorTabSpacing XmCMinorTabSpacing Dimension 3 CSG
XmNmajorTabSpacing XmCMajorTabSpacing Dimension 3 CSG
XmNorientation XmCOrientation unsigned char XmHORIZONTAL CSG
XmNpageChangedCallback XmCCallback XtCallbackList NULL C
XmNbackPageBackground
Specifies the background color for drawing back
pages. The default is a lower-intensity version
of XmNframeBackground.
XmNbackPageForeground
Specifies the forground color for drawing back
pages. The default is taken from the application's
default foreground color.
XmNbackPageNumber
Specifies the number of lines to draw for back
pages. The minimum value is 1, and the maximum
value is (XmNbackPageSize / 2).
XmNbackPagePlacement
Specifies where to place the back pages. The
default is dependent on the XmNlayoutDirection
resource of the Notebook's instance parents. It
can have one of the following values:
XmBOTTOM_RIGHT
Displays back pages on the Notebook's
bottom and right sides.
XmBOTTOM_LEFT
Displays back pages on the Notebook's
bottom and left sides.
XmTOP_RIGHT
Displays back pages on the Notebook's
top and right sides.
XmTOP_LEFT
Displays back pages on the Notebook's
top and left sides.
Page 7 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmNbackPageSize
Specifies the thickness of the back page
rendering.
XmNbindingPixmap
Specifies the pixmap or bitmap for stippling or
tiling the binding when XmNbindingType is XmPIXMAP
or XmPIXMAP_OVERLAP_ONLY.
XmNbindingType
Specifies the binding type. It can have one of the
following values:
XmNONE Displays no binding.
XmSOLID Displays a solid binding in the
foreground color of the Notebook within
the binding area specified by
XmNbindingWidth.
XmSPIRAL Displays a spiral binding in the
foreground color of the Notebook within
the area specified by XmNbindingWidthand
within the area outside of the frame
equal to the area specified by
XmNbindingWidth.
XmPIXMAP Displays the binding with the pixmap or
bitmap specified by XmNbindingPixmap as
a stipple or tile. It uses the
foreground color of the Notebook for
stippling. The binding width is decided
by the larger value of XmNbindingWidth
and the width of the pixmap or bitmap.
XmPIXMAP_OVERLAP_ONLY
Displays the binding with the pixmap or
bitmap specified by XmNbindingPixmap as
a stipple or tile. It uses the
foreground color of the Notebook for
stippling. The binding is displayed only
within the binding area specified by
XmNbindingWidth.
XmNbindingWidth
Specifies the width of the Notebook binding. If
XmNbindingType is XmPIXMAP and the width of the
pixmap specified in XmNbindingPixmap is greater
than XmNbindingWidth, then this resource is
ignored and the width of the pixmap is used as the
width of the Notebook binding instead.
Page 8 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmNcurrentPageNumber
Specifies the page number of the currently
displayed page. Initially, it is set to
XmNfirstPageNumber. If it is set to less than
XmNfirstPageNumber, then it is set to
XmNfirstPageNumber. If it is set to
XmNlastPageNumber, then it is set to
XmNlastPageNumber.
XmNfirstPageNumber
Specifies the page number for the first page of
the Notebook. The Notebook does not scroll to any
page numbers below this value.
XmNframeBackground
Specifies the background color for drawing the
Notebook's frame.
XmNframeShadowThickness
Specifies the shadow thickness around the
Notebook's frame.
XmNinnerMarginHeight
Specifies the margin on the top and bottom sides
of the page, status area, and page scroller
widgets.
XmNinnerMarginWidth
Specifies the margin on the left and right sides
of the page, status area, and page scroller
widgets.
XmNlastPageNumber
Specifies the page number for the last page of the
Notebook. The Notebook does not scroll to any
page numbers above this value. The default page
number is the largest page number of managed page,
major tab, or minor tab widgets. If this is set
to a value that is less than XmNfirstPageNumber,
the behavior of the Notebook is undefined.
XmNmajorTabSpacing
Specifies the spacing distance between major tabs.
If XmNframeShadowThickness is greater than
XmNmajorTabSpacing, then this resource is ignored
and the size of XmNframeShadowThickness is used as
the spacing distance between major tabs.
XmNminorTabSpacing
Specifies the spacing distance between minor tabs.
If XmNframeShadowThickness is greater than
XmNminorTabSpacing, then this resource is ignored
Page 9 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
and the size of XmNframeShadowThickness is used as
the spacing distance between minor tabs.
XmNorientation
Specifies the orientation of the Notebook. It can
have one of the following values:
XmHORIZONTAL
Places the binding beside the pages, in
the left or right side of the frame.
XmVERTICAL
Places the binding above or below the
pages, in the top or the bottom of the
frame.
XmNpageChangedCallback
Specifies the list of callbacks to call whenever
the XmNcurrentPageNumber, representing the current
page number, is changed. This includes the point
when the widget is realized and the page number is
initialized. The callback structure is
XmNotebookCallbackStruct. The reason is
XmCR_MAJOR_TAB, XmCR_MINOR_TAB,
XmCR_PAGE_SCROLLER_INCREMENT,
XmCR_PAGE_SCROLLER_DECREMENT, or XmCR_NONE,
depending upon what action caused the Notebook to
display a new page.
XmNotebook Constraint Resource Set
Name Class Type Default Access
XmNnotebookChildType XmCNotebookChildType unsigned char dynamic CG
XmNpageNumber XmCPageNumber int dynamic CSG
XmNresizable XmCResizable Boolean True CSG
XmNnotebookChildType
Specifies the child type of the Notebook. It can
be one of the following types:
XmPAGE The child is a page of the Notebook.
This is the default when the child does
not have the XmQTactivatable,
XmQTaccessTextual, or XmQTnavigator
trait.
XmMAJOR_TAB
The child is a major tab. This is the
default when the child has the
XmQTactivatable trait.
XmMINOR_TAB
The child is a minor tab.
Page 10 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmSTATUS_AREA
The child is a status area. This is the
default when the child has the
XmQTaccessTextual trait and does not
have the XmQTactivatable trait.
XmPAGE_SCROLLER
The child is the page scroller. The
default page scroller is destroyed, if
it exists. Any previously created page
scrollers are unmanaged. This is the
default when the child has the
XmQTnavigator trait and does have the
XmQTactivatable trait or the
XmQTaccessTextual trait.
XmNpageNumber
Specifies the page number associated with the
widget. If the widget is a page, the number
specifies the page number of the widget. If the
widget is not a page, the number specifies the
page number of the associated page. If none is
supplied by the application, Notebook generates
the smallest unallocated page number when the
child is managed. This resource is ignored for
the page scroller.
XmNresizable
Specifies whether this child can request a resize.
Inherited Resources
Notebook inherits behavior and resources from the
superclasses described in the following tables. For a
complete description of each resource, refer to the
reference page for that superclass.
XmManager Resource Set
Name Class Type Default Access
XmNbottomShadowColor XmCBottomShadowColor Pixel dynamic CSG
XmNbottomShadowPixmap XmCBottomShadowPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNforeground XmCForeground Pixel dynamic CSG
XmNhelpCallback XmCCallback XtCallbackList NULL C
XmNhighlightColor XmCHighlightColor Pixel dynamic CSG
XmNhighlightPixmap XmCHighlightPixmap Pixmap dynamic CSG
XmNinitialFocus XmCInitialFocus Widget NULL CSG
XmNlayoutDirection XmCLayoutDirection XmDirection dynamic CG
XmNnavigationType XmCNavigationType XmNavigationType XmTAB_GROUP CSG
XmNpopupHandlerCallback XmCCallback XtCallbackList NULL C
XmNshadowThickness XmCShadowThickness Dimension 0 CSG
XmNstringDirection XmCStringDirection XmStringDirection dynamic CG
XmNtopShadowColor XmCTopShadowColor Pixel dynamic CSG
Page 11 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
XmNtopShadowPixmap XmCTopShadowPixmap Pixmap dynamic CSG
XmNtraversalOn XmCTraversalOn Boolean True CSG
XmNunitType XmCUnitType unsigned char dynamic CSG
XmNuserData XmCUserData XtPointer NULL CSG
Composite Resource Set
Name Class Type Default Access
XmNchildren XmCReadOnly WidgetList NULL G
XmNinsertPosition XmCInsertPosition XtOrderProc NULL CSG
XmNnumChildren XmCReadOnly Cardinal 0 G
Core Resource Set
Name Class Type Default Access
XmNaccelerators XmCAccelerators XtAccelerators dynamic CSG
XmNancestorSensitive XmCSensitive Boolean dynamic G
XmNbackground XmCBackground Pixel dynamic CSG
XmNbackgroundPixmap XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNborderColor XmCBorderColor Pixel XtDefaultForeground CSG
XmNborderPixmap XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNborderWidth XmCBorderWidth Dimension 0 CSG
XmNcolormap XmCColormap Colormap dynamic CG
XmNdepth XmCDepth int dynamic CG
XmNdestroyCallback XmCCallback XtCallbackList NULL C
XmNheight XmCHeight Dimension dynamic CSG
XmNinitialResourcesPersistent XmCInitialResourcesPersistent Boolean True C
XmNmappedWhenManaged XmCMappedWhenManaged Boolean True CSG
XmNscreen XmCScreen Screen * dynamic CG
XmNsensitive XmCSensitive Boolean True CSG
XmNtranslations XmCTranslations XtTranslations dynamic CSG
XmNwidth XmCWidth Dimension dynamic CSG
XmNx XmCPosition Position 0 CSG
XmNy XmCPosition Position 0 CSG
Callback
A pointer to the following structure is passed to callbacks
for XmNpageChangedCallback.
typedef struct
{
int reason;
XEvent *event;
int page_number;
Widget page_widget;
int prev_page_number;
Widget prev_page_widget;
} XmNotebookCallbackStruct;
reason Specifies the reason for the callback.
event Points to the XEvent that triggered the callback.
It can be NULL.
Page 12 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
page_number
Indicates the page number to be displayed.
page_widget
Indicates the page widget that has the new page
number. It is NULL if no page widget with the
page number is found.
prev_page_number
Indicates the page number of the currently
displayed page. If the callback procedure is being
called at widget initialization, this page number
will be returned as XmUNSPECIFIED_PAGE_NUMBER.
prev_page_widget
Indicates the currently displayed page widget. If
the callback procedure is being called at widget
initialization, NULL will be returned.
Translations
Notebook inherits translations from Manager.
Accelerators
Notebook accelerators are added to all major tab and minor
tab children of XmNotebook. Notebook accelerators are
listed below. These accelerators might not directly
correspond to a translation table.
<osfBeginLine>:
TraverseTab(Home)
<osfEndLine>:
TraverseTab(End)
<osfLeft>:
TraverseTab(Previous)
<osfRight>:
TraverseTab(Next)
<osfUp>: TraverseTab(Previous)
<osfDown>:
TraverseTab(Next)
Action Routines
Notebook action routines are described below:
TraverseTab(Home|End|Next|Previous)
Moves the focus on major or minor tabs.
Additional Behavior
Page 13 (printed 7/20/06)
XmNotebook(3X) UNIX System V XmNotebook(3X)
The Notebook widget has the additional behavior described
below:
<Tab> Notebook intercepts tab group traversal when
traversal is entering or leaving major or minor
tabs. It does this to support major tabs and minor
tabs as two separate tab groups when they are
actually treated as one by traversal. If a minor
tab has keyboard focus and a user or program
action specifies XmTRAVERSE_PREV_TAB_GROUP,
keyboard focus will go to a major tab. If a major
tab has keyboard focus and a user or program
action specifies XmTRAVERSE_NEXT_TAB_GROUP,
keyboard focus will go to a minor tab.
Virtual Bindings
The bindings for virtual keys are vendor specific. For
information about bindings for virtual buttons and keys, see
VirtualBindings(3).
RELATED
Composite(3), Constraint(3), Core(3), XmCreateNotebook(3),
XmManager(3), and XmNotebookGetPageInfo(3).
Page 14 (printed 7/20/06)