org.gnu.gtk

Class Notebook


public class Notebook
extends Container

A Notebook widget is a container whose children are pages that can be switched between using tab labels along one edge.

There are many configuration options for a Notebook. Among other things you can choose on which edge the tabs appear, whether, if there are too many tabs to fit th notebook should be made bigger or scrolling arrows added, and whether there will be a popup menu allowing the user to switch between pages.

Constructor Summary

Notebook()
Construct a new Notebook object with no pages.
Notebook(Handle handle)
Construct a new Notebook from a handle to a native resource.

Method Summary

void
addListener(NotebookListener listener)
Register an object to receive event notification.
void
appendPage(Widget child, Widget tabLabel)
Append a page to the Notebook.
void
appendPage(Widget child, Widget tabLabel, Widget menuLabel)
Append a page to the Notebook.
int
getCurrentPage()
Returns the page number of the current page.
Class
getEventListenerClass(String signal)
EventType
getEventType(String signal)
static Notebook
getNotebook(Handle handle)
Internal static factory method to be used by Java-Gnome only.
int
getNumPages()
Return the number of pages currently on the notebook.
Widget
getPage(int pageNum)
Returns the child Widget contained int he page number pageNum.
String
getTabLabelText(Widget child)
Retrieves the text of the tab label for the page containing child.
static Type
getType()
Retrieve the runtime type used by the GLib library.
void
insertPage(Widget child, Widget tabLabel, int position)
Insert a page into the Notebook at the given position.
void
insertPage(Widget child, Widget tabLabel, Widget menuLabel, int position)
Insert a page into the Notebook at the given position.
void
nextPage()
Switches to the next page.
int
pageNum(Widget child)
Finds the index of the page which contains the given child.
void
popupDisable()
disables the popup menu.
void
popupEnable()
Enables the popup menu.
void
prependPage(Widget child, Widget tabLabel)
Prepend a page to the Notebook.
void
prependPage(Widget child, Widget tabLabel, Widget menuLabel)
Prepend a page to the Notebook.
void
prevPage()
Switches to the previous page.
void
removeListener(NotebookListener listener)
Unregister an object that was receiving notebook event notification.
void
removePage(int pageNumber)
Removes a page fro the Notegook given its index in the notebook.
void
reorderChild(Widget child, int position)
Reorders the page containing child, so that it appears in position position.
void
setCurrentPage(int pageNum)
sets the page at offset pageNum to the current page.
void
setMenuLabel(Widget child, String menuText)
Creates a new label and sets it as the menu label of child.
void
setMenuLabel(Widget child, Widget menuLabel)
Changes the menu label for the page containing child.
void
setScrollable(boolean scrollable)
Sets whether the tab label area will have arrows for scrolling if there are too many tabs to fit in the area.
void
setShowBorder(boolean showBorder)
Sets whether a bevel will be drawn around the notebook pages.
void
setShowTabs(boolean showTabs)
sets whether to show the tabs for the notebook or not.
void
setTabLabel(Widget child, String tabText)
Creates a new label and sets it as the label of the page containing child.
void
setTabLabel(Widget child, Widget tabLabel)
Changes the tab label for child.
void
setTabLabelPacking(Widget child, boolean expand, boolean fill, PackType packType)
Sets the packing parameters for the tab label of the page containing child.
void
setTabPosition(PositionType pos)
Sets the edge at which the tabs for switching pages in the Notebook are drawn.

Methods inherited from class org.gnu.gtk.Container

add, addListener, getBooleanChildProperty, getBorderWidth, getChildProperty, getChildren, getEventListenerClass, getEventType, getIntChildProperty, getResizeMode, getType, remove, removeListener, resizeChildren, setBooleanChildProperty, setBorderWidth, setChildProperty, setIntChildProperty, setResizeMode

Methods inherited from class org.gnu.gtk.Widget

activate, addAccelerator, addEvents, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, canActivateAccel, createContext, createLayout, draw, drawArea, drawArea, finish, getAccessible, getAllocation, getCanFocus, getColormap, getContext, getData, getDisplay, getDragData, getEventListenerClass, getEventType, getExtensionEvents, getModifierStyle, getName, getParent, getParentWindow, getPointer, getRootWindow, getScreen, getSensitive, getStyle, getToplevel, getType, getWidget, getWindow, grabDefault, grabFocus, hasFocus, hasScreen, hide, hideAll, highlight, highlight, intersect, isAncestor, makeWidget, modifyStyle, popColormap, pushColormap, realize, removeAccelerator, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, reparent, setBackgroundColor, setBaseColor, setCanFocus, setColormap, setDoubleBuffered, setDragDestination, setDragIcon, setDragIconPixbuf, setDragIconStock, setDragSource, setEvents, setExtensionEvents, setFont, setForegroundColor, setMinimumSize, setName, setNoDragDestination, setNoDragSource, setSensitive, setTextColor, shapeCombineMask, show, showAll, unHighlight, unHighlight

Methods inherited from class org.gnu.gtk.GtkObject

destroy, getType, sink

Constructor Details

Notebook

public Notebook()
Construct a new Notebook object with no pages.

Notebook

public Notebook(Handle handle)
Construct a new Notebook from a handle to a native resource.

Method Details

addListener

public void addListener(NotebookListener listener)
Register an object to receive event notification.
Parameters:
listener - The object that has implemented the NotebookListener interface that is to receive the notebook events.

appendPage

public void appendPage(Widget child,
                       Widget tabLabel)
Append a page to the Notebook.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null

appendPage

public void appendPage(Widget child,
                       Widget tabLabel,
                       Widget menuLabel)
Append a page to the Notebook.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null
menuLabel - The widget to use as a label for the page-switching menu, if that is enabled. If null and tabLabel is a Label or null then the menu label will be a newly created label with the same text as the tabLabel.

getCurrentPage

public int getCurrentPage()
Returns the page number of the current page. If the notebook has no pages, then -1 will be returned.

getEventListenerClass

public Class getEventListenerClass(String signal)
Overrides:
getEventListenerClass in interface Container

getEventType

public EventType getEventType(String signal)
Overrides:
getEventType in interface Container

getNotebook

public static Notebook getNotebook(Handle handle)
Internal static factory method to be used by Java-Gnome only.

getNumPages

public int getNumPages()
Return the number of pages currently on the notebook.

getPage

public Widget getPage(int pageNum)
Returns the child Widget contained int he page number pageNum.

getTabLabelText

public String getTabLabelText(Widget child)
Retrieves the text of the tab label for the page containing child.
Parameters:
child - a widget contained in a page of notebook
Returns:
value: the text of the tab label, or NULL if the tab label widget is not a Label.

getType

public static Type getType()
Retrieve the runtime type used by the GLib library.
Overrides:
getType in interface Container

insertPage

public void insertPage(Widget child,
                       Widget tabLabel,
                       int position)
Insert a page into the Notebook at the given position.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null
position - The index (starting at 0) at which to insert the page.

insertPage

public void insertPage(Widget child,
                       Widget tabLabel,
                       Widget menuLabel,
                       int position)
Insert a page into the Notebook at the given position.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null
menuLabel - The widget to use as a label for the page-switching menu, if that is enabled. If null and tabLabel is a Label or null then the menu label will be a newly created label with the same text as the tabLabel.
position - The index (starting at 0) at which to insert the page.

nextPage

public void nextPage()
Switches to the next page. Nothing happens if the current page is the last page.

pageNum

public int pageNum(Widget child)
Finds the index of the page which contains the given child.
Parameters:
child - The widget to locate.
Returns:
The index of the page which contains the given child.

popupDisable

public void popupDisable()
disables the popup menu.

popupEnable

public void popupEnable()
Enables the popup menu.

prependPage

public void prependPage(Widget child,
                        Widget tabLabel)
Prepend a page to the Notebook.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null

prependPage

public void prependPage(Widget child,
                        Widget tabLabel,
                        Widget menuLabel)
Prepend a page to the Notebook.
Parameters:
child - The child widget to add to the newly created page.
tabLabel - The Widget to be used as the label for the page or null
menuLabel - The widget to use as a label for the page-switching menu, if that is enabled. If null and tabLabel is a Label or null then the menu label will be a newly created label with the same text as the tabLabel.

prevPage

public void prevPage()
Switches to the previous page. Nothing happens if the current page is the first page.

removeListener

public void removeListener(NotebookListener listener)
Unregister an object that was receiving notebook event notification.
Parameters:
listener - The object that is to no longer receive notebook events.

removePage

public void removePage(int pageNumber)
Removes a page fro the Notegook given its index in the notebook.
Parameters:
pageNumber - The offset (starting with 0) for the page to remove.

reorderChild

public void reorderChild(Widget child,
                         int position)
Reorders the page containing child, so that it appears in position position. If position is greater than or equal to the number of children in the list or negative, child will be moved to the end of the list.
Parameters:
child - The widget to move.
position - The index (starting with 0) to move the child.

setCurrentPage

public void setCurrentPage(int pageNum)
sets the page at offset pageNum to the current page.

setMenuLabel

public void setMenuLabel(Widget child,
                         String menuText)
Creates a new label and sets it as the menu label of child.

setMenuLabel

public void setMenuLabel(Widget child,
                         Widget menuLabel)
Changes the menu label for the page containing child.

setScrollable

public void setScrollable(boolean scrollable)
Sets whether the tab label area will have arrows for scrolling if there are too many tabs to fit in the area.

setShowBorder

public void setShowBorder(boolean showBorder)
Sets whether a bevel will be drawn around the notebook pages.

setShowTabs

public void setShowTabs(boolean showTabs)
sets whether to show the tabs for the notebook or not.

setTabLabel

public void setTabLabel(Widget child,
                        String tabText)
Creates a new label and sets it as the label of the page containing child.

setTabLabel

public void setTabLabel(Widget child,
                        Widget tabLabel)
Changes the tab label for child.

setTabLabelPacking

public void setTabLabelPacking(Widget child,
                               boolean expand,
                               boolean fill,
                               PackType packType)
Sets the packing parameters for the tab label of the page containing child.
See Also:
Box

setTabPosition

public void setTabPosition(PositionType pos)
Sets the edge at which the tabs for switching pages in the Notebook are drawn.