org.gnu.gtk
Class Notebook

java.lang.Object
  extended by org.gnu.glib.Struct
      extended by org.gnu.glib.GObject
          extended by org.gnu.gtk.GtkObject
              extended by org.gnu.gtk.Widget
                  extended by org.gnu.gtk.Container
                      extended by org.gnu.gtk.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(org.gnu.glib.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.
 java.lang.Class getEventListenerClass(java.lang.String signal)
           
 EventType getEventType(java.lang.String signal)
           
static Notebook getNotebook(org.gnu.glib.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.
 java.lang.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, java.lang.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, java.lang.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, getIntChildProperty, getResizeMode, 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, getExtensionEvents, getModifierStyle, getName, getParent, getParentWindow, getPointer, getRootWindow, getScreen, getSensitive, getStyle, getToplevel, 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, sink
 
Methods inherited from class org.gnu.glib.GObject
addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addListener, collect, freezeNotify, getBooleanProperty, getData, getDoubleProperty, getFloatProperty, getGObjectFromHandle, getIntProperty, getJavaObjectProperty, getLongProperty, getPixbufProperty, getProperty, getStringProperty, hasProperty, notify, removeEventHandler, removeListener, setBooleanProperty, setData, setDoubleProperty, setFloatProperty, setIntProperty, setJavaObjectProperty, setLongProperty, setPixbufProperty, setProperty, setStringProperty, thawNotify
 
Methods inherited from class org.gnu.glib.Struct
equals, getHandle, getNullHandle, hashCode
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Notebook

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


Notebook

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

Method Detail

getNotebook

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


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 nullmenuLabel - 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.

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 nullmenuLabel - 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.

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 nullposition - 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 nullmenuLabel - 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.

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.

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.

nextPage

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


prevPage

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


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.

setTabPosition

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


setShowTabs

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


setShowBorder

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


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.


popupEnable

public void popupEnable()
Enables the popup menu.


popupDisable

public void popupDisable()
disables the popup menu.


getCurrentPage

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


getTabLabelText

public java.lang.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.

setCurrentPage

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


getPage

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


setMenuLabel

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


setMenuLabel

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


setTabLabel

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


setTabLabel

public void setTabLabel(Widget child,
                        java.lang.String tabText)
Creates a new label and sets it as the label of the page containing 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

getNumPages

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


getEventListenerClass

public java.lang.Class getEventListenerClass(java.lang.String signal)
Overrides:
getEventListenerClass in class Container

getEventType

public EventType getEventType(java.lang.String signal)
Overrides:
getEventType in class Container

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.

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.

getType

public static Type getType()
Retrieve the runtime type used by the GLib library.