com.vaadin.ui
Class Panel

java.lang.Object
  extended by com.vaadin.server.AbstractClientConnector
      extended by com.vaadin.ui.AbstractComponent
          extended by com.vaadin.ui.AbstractSingleComponentContainer
              extended by com.vaadin.ui.Panel
All Implemented Interfaces:
Action.Container, Action.Notifier, ConnectorEventListener, MethodEventSource, ClientConnector, Scrollable, Sizeable, VariableOwner, com.vaadin.shared.Connector, Component, Component.Focusable, HasComponents, HasComponents.ComponentAttachDetachNotifier, LegacyComponent, SingleComponentContainer, java.io.Serializable, java.lang.Iterable<Component>, java.util.EventListener
Direct Known Subclasses:
Window

public class Panel
extends AbstractSingleComponentContainer
implements Scrollable, Action.Notifier, Component.Focusable, LegacyComponent

Panel - a simple single component container.

Since:
3.0
Author:
Vaadin Ltd.
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.vaadin.ui.Component
Component.ErrorEvent, Component.Event, Component.Focusable, Component.Listener
 
Nested classes/interfaces inherited from interface com.vaadin.server.ClientConnector
ClientConnector.AttachEvent, ClientConnector.AttachListener, ClientConnector.ConnectorErrorEvent, ClientConnector.DetachEvent, ClientConnector.DetachListener
 
Nested classes/interfaces inherited from interface com.vaadin.server.Sizeable
Sizeable.Unit
 
Nested classes/interfaces inherited from interface com.vaadin.ui.HasComponents
HasComponents.ComponentAttachDetachNotifier, HasComponents.ComponentAttachEvent, HasComponents.ComponentAttachListener, HasComponents.ComponentDetachEvent, HasComponents.ComponentDetachListener
 
Field Summary
protected  ActionManager actionManager
          Keeps track of the Actions added to this component, and manages the painting and handling as well.
 
Fields inherited from interface com.vaadin.server.Sizeable
SIZE_UNDEFINED, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS
 
Constructor Summary
Panel()
          Creates a new empty panel.
Panel(Component content)
          Creates a new empty panel which contains the given content.
Panel(java.lang.String caption)
          Creates a new empty panel with caption.
Panel(java.lang.String caption, Component content)
          Creates a new empty panel with the given caption and content.
 
Method Summary
<T extends Action & Action.Listener>
void
addAction(T action)
           
 void addActionHandler(Action.Handler actionHandler)
          Registers a new action handler for this container
 void addClickListener(MouseEvents.ClickListener listener)
          Add a click listener to the Panel.
 void addListener(MouseEvents.ClickListener listener)
          Deprecated. As of 7.0, replaced by #addClickListener(ClickListener)
 void changeVariables(java.lang.Object source, java.util.Map<java.lang.String,java.lang.Object> variables)
          Called when one or more variables handled by the implementing class are changed.
 void focus()
          Moves keyboard focus to the component.
protected  ActionManager getActionManager()
          Gets the ActionManager used to manage the ShortcutListeners added to this Field.
 int getScrollLeft()
          Gets scroll left offset.
 int getScrollTop()
          Gets scroll top offset.
protected  com.vaadin.shared.ui.panel.PanelState getState()
          Returns the shared state bean with information to be sent from the server to the client.
 int getTabIndex()
          Gets the tabulator index of the Focusable component.
 void paintContent(PaintTarget target)
           Paints the Paintable into a UIDL stream.
<T extends Action & Action.Listener>
void
removeAction(T action)
           
 void removeActionHandler(Action.Handler actionHandler)
          Removes a previously registered action handler for the contents of this container.
 void removeAllActionHandlers()
          Removes all action handlers
 void removeClickListener(MouseEvents.ClickListener listener)
          Remove a click listener from the Panel.
 void removeListener(MouseEvents.ClickListener listener)
          Deprecated. As of 7.0, replaced by #removeClickListener(ClickListener)
 void setCaption(java.lang.String caption)
          Sets the caption of the panel.
 void setScrollLeft(int scrollLeft)
          Sets scroll left offset.
 void setScrollTop(int scrollTop)
          Sets scroll top offset.
 void setTabIndex(int tabIndex)
          Sets the tabulator index of the Focusable component.
 
Methods inherited from class com.vaadin.ui.AbstractSingleComponentContainer
addComponentAttachListener, addComponentDetachListener, fireComponentAttachEvent, fireComponentDetachEvent, getComponentCount, getContent, iterator, removeComponentAttachListener, removeComponentDetachListener, removeFromParent, setContent, setHeight, setWidth
 
Methods inherited from class com.vaadin.ui.AbstractComponent
addListener, addShortcutListener, addStyleName, attach, beforeClientResponse, detach, findAncestor, fireComponentErrorEvent, fireComponentEvent, getCaption, getComponentError, getData, getDebugId, getDescription, getErrorMessage, getHeight, getHeightUnits, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getState, getStyleName, getWidth, getWidthUnits, isConnectorEnabled, isEnabled, isImmediate, isReadOnly, isVisible, removeListener, removeShortcutListener, removeStyleName, setComponentError, setData, setDebugId, setDescription, setEnabled, setHeight, setIcon, setId, setImmediate, setLocale, setParent, setPrimaryStyleName, setReadOnly, setSizeFull, setSizeUndefined, setStyleName, setVisible, setWidth
 
Methods inherited from class com.vaadin.server.AbstractClientConnector
addAttachListener, addDetachListener, addExtension, addListener, addListener, addListener, addMethodInvocationToQueue, createState, encodeState, fireEvent, getAllChildrenIterable, getConnectorId, getErrorHandler, getExtensions, getListeners, getResource, getRpcManager, getRpcProxy, getSession, getStateType, getUI, handleConnectorRequest, hasListeners, markAsDirty, markAsDirtyRecursive, registerRpc, registerRpc, removeAttachListener, removeDetachListener, removeExtension, removeListener, removeListener, removeListener, removeListener, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler, setResource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.vaadin.ui.LegacyComponent
markAsDirty
 
Methods inherited from interface com.vaadin.server.VariableOwner
isEnabled, isImmediate
 
Methods inherited from interface com.vaadin.ui.Component
addListener, addStyleName, attach, getCaption, getDescription, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getUI, isEnabled, isReadOnly, isVisible, removeListener, removeStyleName, setEnabled, setIcon, setId, setPrimaryStyleName, setReadOnly, setStyleName, setVisible
 
Methods inherited from interface com.vaadin.server.ClientConnector
addAttachListener, addDetachListener, beforeClientResponse, detach, encodeState, getErrorHandler, getExtensions, getRpcManager, getStateType, handleConnectorRequest, isConnectorEnabled, markAsDirtyRecursive, removeAttachListener, removeDetachListener, removeExtension, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler, setParent
 
Methods inherited from interface com.vaadin.shared.Connector
getConnectorId
 
Methods inherited from interface com.vaadin.server.Sizeable
getHeight, getHeightUnits, getWidth, getWidthUnits, setHeight, setHeight, setSizeFull, setSizeUndefined, setWidth, setWidth
 

Field Detail

actionManager

protected ActionManager actionManager
Keeps track of the Actions added to this component, and manages the painting and handling as well.

Constructor Detail

Panel

public Panel()
Creates a new empty panel.


Panel

public Panel(Component content)
Creates a new empty panel which contains the given content.

Parameters:
content - the content for the panel.

Panel

public Panel(java.lang.String caption)
Creates a new empty panel with caption.

Parameters:
caption - the caption used in the panel (HTML).

Panel

public Panel(java.lang.String caption,
             Component content)
Creates a new empty panel with the given caption and content.

Parameters:
caption - the caption of the panel (HTML).
content - the content used in the panel.
Method Detail

setCaption

public void setCaption(java.lang.String caption)
Sets the caption of the panel. Note that the caption is interpreted as HTML and therefore care should be taken not to enable HTML injection and XSS attacks using panel captions. This behavior may change in future versions.

Specified by:
setCaption in interface Component
Overrides:
setCaption in class AbstractComponent
Parameters:
caption - the new caption String for the component.
See Also:
AbstractComponent.setCaption(String)

paintContent

public void paintContent(PaintTarget target)
                  throws PaintException
Description copied from interface: LegacyComponent

Paints the Paintable into a UIDL stream. This method creates the UIDL sequence describing it and outputs it to the given UIDL stream.

It is called when the contents of the component should be painted in response to the component first being shown or having been altered so that its visual representation is changed.

Specified by:
paintContent in interface LegacyComponent
Parameters:
target - the target UIDL stream where the component should paint itself to.
Throws:
PaintException - if the paint operation failed.

changeVariables

public void changeVariables(java.lang.Object source,
                            java.util.Map<java.lang.String,java.lang.Object> variables)
Called when one or more variables handled by the implementing class are changed.

Specified by:
changeVariables in interface VariableOwner
Parameters:
source - the Source of the variable change. This is the origin of the event. For example in Web Adapter this is the request.
variables - the Mapping from variable names to new variable values.
See Also:
VariableOwner.changeVariables(Object, Map)

getScrollLeft

public int getScrollLeft()
Description copied from interface: Scrollable
Gets scroll left offset.

Scrolling offset is the number of pixels this scrollable has been scrolled right.

Specified by:
getScrollLeft in interface Scrollable
Returns:
Horizontal scrolling position in pixels.

getScrollTop

public int getScrollTop()
Description copied from interface: Scrollable
Gets scroll top offset.

Scrolling offset is the number of pixels this scrollable has been scrolled down.

Specified by:
getScrollTop in interface Scrollable
Returns:
Vertical scrolling position in pixels.

setScrollLeft

public void setScrollLeft(int scrollLeft)
Description copied from interface: Scrollable
Sets scroll left offset.

Scrolling offset is the number of pixels this scrollable has been scrolled right.

Specified by:
setScrollLeft in interface Scrollable
Parameters:
scrollLeft - the xOffset.

setScrollTop

public void setScrollTop(int scrollTop)
Description copied from interface: Scrollable
Sets scroll top offset.

Scrolling offset is the number of pixels this scrollable has been scrolled down.

The scrolling position is limited by the current height of the content area. If the position is below the height, it is scrolled to the bottom. However, if the same response also adds height to the content area, scrolling to bottom only scrolls to the bottom of the previous content area.

Specified by:
setScrollTop in interface Scrollable
Parameters:
scrollTop - the yOffset.

getActionManager

protected ActionManager getActionManager()
Description copied from class: AbstractComponent
Gets the ActionManager used to manage the ShortcutListeners added to this Field.

Overrides:
getActionManager in class AbstractComponent
Returns:
the ActionManager in use

addAction

public <T extends Action & Action.Listener> void addAction(T action)
Specified by:
addAction in interface Action.Notifier

removeAction

public <T extends Action & Action.Listener> void removeAction(T action)
Specified by:
removeAction in interface Action.Notifier

addActionHandler

public void addActionHandler(Action.Handler actionHandler)
Description copied from interface: Action.Container
Registers a new action handler for this container

Specified by:
addActionHandler in interface Action.Container
Parameters:
actionHandler - the new handler to be added.

removeActionHandler

public void removeActionHandler(Action.Handler actionHandler)
Description copied from interface: Action.Container
Removes a previously registered action handler for the contents of this container.

Specified by:
removeActionHandler in interface Action.Container
Parameters:
actionHandler - the handler to be removed.

removeAllActionHandlers

public void removeAllActionHandlers()
Removes all action handlers


addClickListener

public void addClickListener(MouseEvents.ClickListener listener)
Add a click listener to the Panel. The listener is called whenever the user clicks inside the Panel. Also when the click targets a component inside the Panel, provided the targeted component does not prevent the click event from propagating. Use #removeListener(ClickListener) to remove the listener.

Parameters:
listener - The listener to add

addListener

@Deprecated
public void addListener(MouseEvents.ClickListener listener)
Deprecated. As of 7.0, replaced by #addClickListener(ClickListener)


removeClickListener

public void removeClickListener(MouseEvents.ClickListener listener)
Remove a click listener from the Panel. The listener should earlier have been added using #addListener(ClickListener).

Parameters:
listener - The listener to remove

removeListener

@Deprecated
public void removeListener(MouseEvents.ClickListener listener)
Deprecated. As of 7.0, replaced by #removeClickListener(ClickListener)


getTabIndex

public int getTabIndex()
Gets the tabulator index of the Focusable component.

Specified by:
getTabIndex in interface Component.Focusable
Returns:
tab index set for the Focusable component
See Also:
Component.Focusable.setTabIndex(int)

setTabIndex

public void setTabIndex(int tabIndex)
Sets the tabulator index of the Focusable component. The tab index property is used to specify the order in which the fields are focused when the user presses the Tab key. Components with a defined tab index are focused sequentially first, and then the components with no tab index.
 Form loginBox = new Form();
 loginBox.setCaption("Login");
 layout.addComponent(loginBox);
 
 // Create the first field which will be focused
 TextField username = new TextField("User name");
 loginBox.addField("username", username);
 
 // Set focus to the user name
 username.focus();
 
 TextField password = new TextField("Password");
 loginBox.addField("password", password);
 
 Button login = new Button("Login");
 loginBox.getFooter().addComponent(login);
 
 // An additional component which natural focus order would
 // be after the button.
 CheckBox remember = new CheckBox("Remember me");
 loginBox.getFooter().addComponent(remember);
 
 username.setTabIndex(1);
 password.setTabIndex(2);
 remember.setTabIndex(3); // Different than natural place
 login.setTabIndex(4);
 

After all focusable user interface components are done, the browser can begin again from the component with the smallest tab index, or it can take the focus out of the page, for example, to the location bar.

If the tab index is not set (is set to zero), the default tab order is used. The order is somewhat browser-dependent, but generally follows the HTML structure of the page.

A negative value means that the component is completely removed from the tabulation order and can not be reached by pressing the Tab key at all.

Specified by:
setTabIndex in interface Component.Focusable
Parameters:
tabIndex - the tab order of this component. Indexes usually start from 1. Zero means that default tab order should be used. A negative value means that the field should not be included in the tabbing sequence.
See Also:
Component.Focusable.getTabIndex()

focus

public void focus()
Moves keyboard focus to the component. Component.Focusable.focus()

Specified by:
focus in interface Component.Focusable
Overrides:
focus in class AbstractComponent
See Also:
FieldEvents, FieldEvents.FocusEvent, FieldEvents.FocusListener, FieldEvents.BlurEvent, FieldEvents.BlurListener

getState

protected com.vaadin.shared.ui.panel.PanelState getState()
Description copied from class: AbstractComponent
Returns the shared state bean with information to be sent from the server to the client. Subclasses should override this method and set any relevant fields of the state returned by super.getState().

Overrides:
getState in class AbstractComponent
Returns:
updated component shared state


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.