Class ScrolledForm
-
- All Implemented Interfaces:
Drawable
public class ScrolledForm extends SharedScrolledComposite
ScrolledForm is a control that is capable of scrolling an instance of the Form class. It should be created in a parent that will allow it to use all the available area (for example, a shell, a view or an editor).Children of the form should typically be created using FormToolkit to match the appearance and behaviour. When creating children, use a form body as a parent by calling 'getBody()' on the form instance. Example:
FormToolkit toolkit = new FormToolkit(parent.getDisplay()); ScrolledForm form = toolkit.createScrolledForm(parent); form.setText("Sample form"); form.getBody().setLayout(new GridLayout()); toolkit.createButton(form.getBody(), "Checkbox", SWT.CHECK);
No layout manager has been set on the body. Clients are required to set the desired layout manager explicitly.
Although the class is not final, it is not expected to be be extended.
- Since:
- 3.0
- Restriction:
- This class is not intended to be subclassed by clients.
-
-
Constructor Summary
Constructors Constructor Description ScrolledForm(Composite parent)
ScrolledForm(Composite parent, int style)
Creates the form control as a child of the provided parent.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Image
getBackgroundImage()
Returns the optional background image of this form.Composite
getBody()
Returns the container that occupies the body of the form (the form area below the title).Form
getForm()
Returns the instance of the form owned by the scrolled form.Image
getImage()
Returns the title image that will be rendered to the left of the title.String
getMessage()
IMessageManager
getMessageManager()
Returns the message manager that will keep track of messages in this form.int
getMessageType()
String
getText()
Returns the title text that will be rendered at the top of the form.IToolBarManager
getToolBarManager()
Returns the tool bar manager that is used to manage tool items in the form's title area.void
setBackground(Color bg)
Sets the background color of the form.void
setBackgroundImage(Image backgroundImage)
Sets the optional background image to be rendered behind the title starting at the position 0,0.void
setBusy(boolean busy)
Sets the form's busy state.void
setContent(Control c)
The form sets the content widget.void
setForeground(Color fg)
Sets the foreground color of the form.void
setHeadClient(Control headClient)
Sets the optional head client.void
setImage(Image image)
Sets the image to be rendered to the left of the title.void
setMenu(Menu menu)
Passes the menu to the body.void
setMessage(String newMessage, int newType)
Sets the form message.void
setMessage(String newMessage, int newType, IMessage[] messages)
Sets the form message.void
setText(String text)
Sets the text to be rendered at the top of the form above the body as a title.void
updateToolBar()
Updates the local tool bar manager if used.-
Methods inherited from class org.eclipse.ui.forms.widgets.SharedScrolledComposite
isDelayedReflow, layout, reflow, setDelayedReflow, setExpandHorizontal, setExpandVertical, setFocus, setFont
-
Methods inherited from class org.eclipse.swt.custom.ScrolledComposite
getAlwaysShowScrollBars, getContent, getExpandHorizontal, getExpandVertical, getMinHeight, getMinWidth, getOrigin, getShowFocusedControl, setAlwaysShowScrollBars, setLayout, setMinHeight, setMinSize, setMinSize, setMinWidth, setOrigin, setOrigin, setShowFocusedControl, showControl
-
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, setBackgroundMode, setLayoutDeferred, setTabList, toString
-
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar
-
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setLayoutData, setLocation, setLocation, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
-
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.swt.graphics.Drawable
isAutoScalable
-
-
-
-
Method Detail
-
setMenu
public void setMenu(Menu menu)
Passes the menu to the body.
-
getText
public String getText()
Returns the title text that will be rendered at the top of the form.- Returns:
- the title text
-
getImage
public Image getImage()
Returns the title image that will be rendered to the left of the title.- Returns:
- the title image
-
setForeground
public void setForeground(Color fg)
Sets the foreground color of the form. This color will also be used for the body.- Overrides:
setForeground
in classSharedScrolledComposite
- Parameters:
fg
- the new foreground color
-
setBackground
public void setBackground(Color bg)
Sets the background color of the form. This color will also be used for the body.- Overrides:
setBackground
in classSharedScrolledComposite
- Parameters:
bg
- the new background color
-
setContent
public final void setContent(Control c)
The form sets the content widget. This method should not be called by classes that instantiate this widget.- Overrides:
setContent
in classSharedScrolledComposite
- Parameters:
c
- the control to be displayed in the content area
-
setText
public void setText(String text)
Sets the text to be rendered at the top of the form above the body as a title.Note: Mnemonics are indicated by an '&' that causes the next character to be the mnemonic. Mnemonics are not applicable in the case of the form title but need to be taken into account due to the usage of the underlying widget that renders mnemonics in the title area. The mnemonic indicator character '&' can be escaped by doubling it in the string, causing a single '&' to be displayed.
- Parameters:
text
- the title text
-
setImage
public void setImage(Image image)
Sets the image to be rendered to the left of the title.- Parameters:
image
- the title image ornull
for no image.
-
getBackgroundImage
public Image getBackgroundImage()
Returns the optional background image of this form. The image is rendered starting at the position 0,0 and is painted behind the title.- Overrides:
getBackgroundImage
in classControl
- Returns:
- Returns the background image.
-
setBackgroundImage
public void setBackgroundImage(Image backgroundImage)
Sets the optional background image to be rendered behind the title starting at the position 0,0.- Overrides:
setBackgroundImage
in classControl
- Parameters:
backgroundImage
- The backgroundImage to set.
-
getToolBarManager
public IToolBarManager getToolBarManager()
Returns the tool bar manager that is used to manage tool items in the form's title area.- Returns:
- form tool bar manager
-
updateToolBar
public void updateToolBar()
Updates the local tool bar manager if used. Does nothing if local tool bar manager has not been created yet.
-
getBody
public Composite getBody()
Returns the container that occupies the body of the form (the form area below the title). Use this container as a parent for the controls that should be in the form. No layout manager has been set on the form body.- Returns:
- Returns the body of the form.
-
getForm
public Form getForm()
Returns the instance of the form owned by the scrolled form.- Returns:
- the form instance
-
setBusy
public void setBusy(boolean busy)
Sets the form's busy state. Busy form will display 'busy' animation in the area of the title image.- Parameters:
busy
- the form's busy state- Since:
- 3.3
- See Also:
Form.setBusy(boolean)
-
setHeadClient
public void setHeadClient(Control headClient)
Sets the optional head client.- Parameters:
headClient
- the optional child of the head- Since:
- 3.3
- See Also:
Form.setHeadClient(Control)
-
setMessage
public void setMessage(String newMessage, int newType, IMessage[] messages)
Sets the form message.- Parameters:
newMessage
- the message text ornull
to reset.newType
- as defined inIMessageProvider
.messages
- an optional array of children that itemize individual messages ornull
for a simple message.- Since:
- 3.3
- See Also:
Form.setMessage(String, int)
-
setMessage
public void setMessage(String newMessage, int newType)
Sets the form message.- Parameters:
newMessage
- the message text ornull
to reset.newType
- as defined inIMessageProvider
.- Since:
- 3.3
-
getMessage
public String getMessage()
-
getMessageType
public int getMessageType()
-
getMessageManager
public IMessageManager getMessageManager()
Returns the message manager that will keep track of messages in this form.- Returns:
- the message manager instance
- Since:
- org.eclipse.ui.forms 3.4
-
-