Eclipse Platform
Release 3.1

org.eclipse.ui.forms.widgets
Class ScrolledPageBook

java.lang.Object
  extended byorg.eclipse.swt.widgets.Widget
      extended byorg.eclipse.swt.widgets.Control
          extended byorg.eclipse.swt.widgets.Scrollable
              extended byorg.eclipse.swt.widgets.Composite
                  extended byorg.eclipse.swt.custom.ScrolledComposite
                      extended byorg.eclipse.ui.forms.widgets.SharedScrolledComposite
                          extended byorg.eclipse.ui.forms.widgets.ScrolledPageBook
All Implemented Interfaces:
Drawable

public final class ScrolledPageBook
extends SharedScrolledComposite

ScrolledPageBook is a class that is capable of stacking several composites (pages), while showing one at a time. The content is scrolled if there is not enough space to fit it in the client area.

Since:
3.0

Field Summary
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
ScrolledPageBook(Composite parent)
          Creates a new instance in the provided parent
ScrolledPageBook(Composite parent, int style)
          Creates a new instance in the provided parent and with the provided style.
 
Method Summary
 Point computeSize(int wHint, int hHint, boolean changed)
          Removes the default size of the composite, allowing the control to shrink to the trim.
 Composite createPage(Object key)
          Creates a new page for the provided key.
 Composite getContainer()
          Returns the page book container.
 Control getCurrentPage()
          Returns the page currently showing.
 boolean hasPage(Object key)
          Tests if the page under the provided key is currently in the book.
 void registerPage(Object key, Control page)
          Registers a page under the privided key to be managed by the page book.
 void removePage(Object key)
          Removes the page under the provided key from the page book.
 void removePage(Object key, boolean showEmptyPage)
          Removes the page under the provided key from the page book.
 boolean setFocus()
          Sets focus on the current page if shown.
 void showEmptyPage()
          Shows a page with no children to be used if the desire is to not show any registered page.
 void showPage(Object key)
          Shows the page with the provided key and hides the page previously showing.
 
Methods inherited from class org.eclipse.ui.forms.widgets.SharedScrolledComposite
isDelayedReflow, layout, reflow, setBackground, setContent, setDelayedReflow, setExpandHorizontal, setExpandVertical, setFont, setForeground
 
Methods inherited from class org.eclipse.swt.custom.ScrolledComposite
getAlwaysShowScrollBars, getContent, getOrigin, setAlwaysShowScrollBars, setLayout, setMinHeight, setMinSize, setMinSize, setMinWidth, setOrigin, setOrigin
 
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, setLayoutDeferred, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addFocusListener, addHelpListener, addKeyListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addPaintListener, addTraverseListener, computeSize, forceFocus, getAccessible, getBackground, getBorderWidth, getBounds, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, redraw, redraw, removeControlListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removePaintListener, removeTraverseListener, setBounds, setBounds, setCapture, setCursor, setEnabled, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setSize, setSize, setToolTipText, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ScrolledPageBook

public ScrolledPageBook(Composite parent)
Creates a new instance in the provided parent

Parameters:
parent -

ScrolledPageBook

public ScrolledPageBook(Composite parent,
                        int style)
Creates a new instance in the provided parent and with the provided style.

Parameters:
parent - the control parent
style - the style to use
Method Detail

computeSize

public Point computeSize(int wHint,
                         int hHint,
                         boolean changed)
Removes the default size of the composite, allowing the control to shrink to the trim.

Overrides:
computeSize in class Composite
Parameters:
wHint - the width hint
hHint - the height hint
changed - if true, do not use cached values

hasPage

public boolean hasPage(Object key)
Tests if the page under the provided key is currently in the book.

Parameters:
key - the page key
Returns:
true if page exists, false otherwise.

createPage

public Composite createPage(Object key)
Creates a new page for the provided key. Use the returned composite to create children in it.

Parameters:
key - the page key
Returns:
the newly created page composite

getContainer

public Composite getContainer()
Returns the page book container.

Returns:
the page book container

registerPage

public void registerPage(Object key,
                         Control page)
Registers a page under the privided key to be managed by the page book. The page must be a direct child of the page book container.

Parameters:
key - the page key
page - the page composite to register
See Also:
createPage(java.lang.Object), getContainer()

removePage

public void removePage(Object key)
Removes the page under the provided key from the page book. Does nothing if page with that key does not exist.

Parameters:
key - the page key.

removePage

public void removePage(Object key,
                       boolean showEmptyPage)
Removes the page under the provided key from the page book. Does nothing if page with that key does not exist.

Parameters:
key - the page key.
showEmptyPage - if true, shows the empty page after page removal.

showPage

public void showPage(Object key)
Shows the page with the provided key and hides the page previously showing. Does nothing if the page with that key does not exist.

Parameters:
key - the page key

showEmptyPage

public void showEmptyPage()
Shows a page with no children to be used if the desire is to not show any registered page.


setFocus

public boolean setFocus()
Sets focus on the current page if shown.

Overrides:
setFocus in class SharedScrolledComposite

getCurrentPage

public Control getCurrentPage()
Returns the page currently showing.

Returns:
the current page

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.