com.itmill.toolkit.ui
Class Panel

java.lang.Object
  extended by com.itmill.toolkit.terminal.Identifiable
      extended by com.itmill.toolkit.ui.AbstractComponent
          extended by com.itmill.toolkit.ui.AbstractComponentContainer
              extended by com.itmill.toolkit.ui.Panel
All Implemented Interfaces:
MethodEventSource, Paintable, Scrollable, Sizeable, VariableOwner, Component, ComponentContainer, ComponentContainer.ComponentAttachListener, ComponentContainer.ComponentDetachListener, EventListener
Direct Known Subclasses:
Window

public class Panel
extends AbstractComponentContainer
implements Sizeable, Scrollable, ComponentContainer.ComponentAttachListener, ComponentContainer.ComponentDetachListener

Panel - a simple single component container.

Since:
3.0
Version:
4.1.4
Author:
IT Mill Ltd.

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.itmill.toolkit.ui.ComponentContainer
ComponentContainer.ComponentAttachEvent, ComponentContainer.ComponentAttachListener, ComponentContainer.ComponentDetachEvent, ComponentContainer.ComponentDetachListener
 
Nested classes/interfaces inherited from interface com.itmill.toolkit.ui.Component
Component.ErrorEvent, Component.ErrorListener, Component.Event, Component.Focusable, Component.Listener
 
Nested classes/interfaces inherited from interface com.itmill.toolkit.terminal.Paintable
Paintable.RepaintRequestEvent, Paintable.RepaintRequestListener
 
Field Summary
 
Fields inherited from interface com.itmill.toolkit.terminal.Sizeable
UNIT_SYMBOLS, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS, UNITS_ROWS
 
Constructor Summary
Panel()
          Creates a new empty panel.
Panel(Layout layout)
          Creates a new empty panel with given layout.
Panel(String caption)
          Creates a new empty panel with caption.
Panel(String caption, Layout layout)
          Creates a new empty panel with caption.
 
Method Summary
 void addComponent(Component c)
          Adds the component into this container.
 void attach()
          Notifies the component that it is connected to an application.
 void changeVariables(Object source, Map variables)
          Called when one or more variables handled by the implementing class are changed.
 void componentAttachedToContainer(ComponentContainer.ComponentAttachEvent event)
          A new component is attached to container.
 void componentDetachedFromContainer(ComponentContainer.ComponentDetachEvent event)
          A component has been detached from container.
 void detach()
          Notifies the component that it is detached from the application.
 Iterator getComponentIterator()
          Gets the component container iterator for going trough all the components in the container.
 int getHeight()
          Gets the height in pixels.
 int getHeightUnits()
          Gets the height property units.
 Layout getLayout()
          Gets the current layout of the panel.
 int getScrollOffsetX()
          Gets scroll X offset.
 int getScrollOffsetY()
          Gets scroll Y offset.
 String getTag()
          Gets the component UIDL tag.
 int getWidth()
          Gets the Width in pixel.
 int getWidthUnits()
          Gets the width property units.
 boolean isScrollable()
          Is the scrolling enabled.
 void paintContent(PaintTarget target)
          Paints the content of this component.
 void removeAllComponents()
          Removes all components from this container.
 void removeComponent(Component c)
          Removes the component from this container.
 void replaceComponent(Component oldComponent, Component newComponent)
          Replaces the component in the container with another one without changing position.
 void setHeight(int height)
          Sets the height in pixels.
 void setHeightUnits(int units)
          Sets the height units.
 void setLayout(Layout layout)
          Sets the layout of the panel.
 void setScrollable(boolean isScrollingEnabled)
          Enables or disables scrolling..
 void setScrollOffsetX(int pixelsScrolledLeft)
          Sets scroll X offset.
 void setScrollOffsetY(int pixelsScrolledDown)
          Sets scroll Y offset.
 void setWidth(int width)
          Sets the width in pixels.
 void setWidthUnits(int units)
          Sets the width units.
 
Methods inherited from class com.itmill.toolkit.ui.AbstractComponentContainer
addListener, addListener, fireComponentAttachEvent, fireComponentDetachEvent, moveComponentsFrom, removeListener, removeListener
 
Methods inherited from class com.itmill.toolkit.ui.AbstractComponent
addListener, addListener, addListener, addListener, childRequestedRepaint, dependsOn, fireComponentErrorEvent, fireComponentEvent, fireEvent, getApplication, getCaption, getComponentError, getData, getDescription, getDirectDependencies, getErrorMessage, getIcon, getLocale, getParent, getStyle, getWindow, isEnabled, isImmediate, isReadOnly, isVisible, paint, removeDirectDependency, removeListener, removeListener, removeListener, removeListener, removeListener, requestRepaint, requestRepaintRequests, setCaption, setComponentError, setData, setDescription, setEnabled, setIcon, setImmediate, setLocale, setParent, setReadOnly, setStyle, setVisible
 
Methods inherited from class com.itmill.toolkit.terminal.Identifiable
getDebugId, getUIID, setDebugId, setUIID
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.itmill.toolkit.ui.Component
addListener, childRequestedRepaint, getApplication, getCaption, getIcon, getLocale, getParent, getStyle, getWindow, isEnabled, isReadOnly, isVisible, removeListener, setEnabled, setParent, setReadOnly, setStyle, setVisible
 
Methods inherited from interface com.itmill.toolkit.terminal.Paintable
addListener, paint, removeListener, requestRepaint, requestRepaintRequests
 
Methods inherited from interface com.itmill.toolkit.terminal.VariableOwner
dependsOn, getDirectDependencies, isImmediate, removeDirectDependency
 

Constructor Detail

Panel

public Panel()
Creates a new empty panel. Ordered layout is used.


Panel

public Panel(Layout layout)
Creates a new empty panel with given layout. Layout must be non-null.

Parameters:
layout - the layout used in the panel.

Panel

public Panel(String caption)
Creates a new empty panel with caption. Ordered layout is used.

Parameters:
caption - the caption used in the panel.

Panel

public Panel(String caption,
             Layout layout)
Creates a new empty panel with caption.

Parameters:
caption - the caption of the panel.
layout - the layout used in the panel.
Method Detail

getLayout

public Layout getLayout()
Gets the current layout of the panel.

Returns:
the Current layout of the panel.

setLayout

public void setLayout(Layout layout)
Sets the layout of the panel. All the components are moved to new layout.

Parameters:
layout - the New layout of the panel.

paintContent

public void paintContent(PaintTarget target)
                  throws PaintException
Paints the content of this component.

Overrides:
paintContent in class AbstractComponent
Parameters:
target - the Paint Event.
Throws:
PaintException - if the paint operation failed.

getTag

public String getTag()
Gets the component UIDL tag.

Specified by:
getTag in class AbstractComponent
Returns:
the Component UIDL tag as string.

addComponent

public void addComponent(Component c)
Adds the component into this container.

Specified by:
addComponent in interface ComponentContainer
Overrides:
addComponent in class AbstractComponentContainer
Parameters:
c - the component to be added.
See Also:
AbstractComponentContainer.addComponent(com.itmill.toolkit.ui.Component)

removeComponent

public void removeComponent(Component c)
Removes the component from this container.

Specified by:
removeComponent in interface ComponentContainer
Overrides:
removeComponent in class AbstractComponentContainer
Parameters:
c - The component to be added.
See Also:
AbstractComponentContainer.removeComponent(com.itmill.toolkit.ui.Component)

getComponentIterator

public Iterator getComponentIterator()
Gets the component container iterator for going trough all the components in the container.

Specified by:
getComponentIterator in interface ComponentContainer
Returns:
the Iterator of the components inside the container.
See Also:
ComponentContainer.getComponentIterator()

getHeight

public int getHeight()
Gets the height in pixels.

Specified by:
getHeight in interface Sizeable
Returns:
The height in pixels or negative value if not assigned.
See Also:
Sizeable.getHeight()

getWidth

public int getWidth()
Gets the Width in pixel.

Specified by:
getWidth in interface Sizeable
Returns:
The width in pixels or negative value if not assigned.
See Also:
Sizeable.getWidth()

setHeight

public void setHeight(int height)
Sets the height in pixels. Use negative value to let the client decide the height.

Specified by:
setHeight in interface Sizeable
Parameters:
height - the height to set.
See Also:
Sizeable.setHeight(int)

setWidth

public void setWidth(int width)
Sets the width in pixels. Use negative value to allow the client decide the width.

Specified by:
setWidth in interface Sizeable
Parameters:
width - the width to set.
See Also:
Sizeable.setWidth(int)

changeVariables

public void changeVariables(Object source,
                            Map variables)
Called when one or more variables handled by the implementing class are changed.

Specified by:
changeVariables in interface VariableOwner
Overrides:
changeVariables in class AbstractComponent
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)

getHeightUnits

public int getHeightUnits()
Gets the height property units.

Specified by:
getHeightUnits in interface Sizeable
Returns:
units used in height property.
See Also:
Sizeable.getHeightUnits()

getWidthUnits

public int getWidthUnits()
Gets the width property units.

Specified by:
getWidthUnits in interface Sizeable
Returns:
units used in width property.
See Also:
Sizeable.getWidthUnits()

setHeightUnits

public void setHeightUnits(int units)
Sets the height units. Panel supports only Sizeable.UNITS_PIXELS and this is ignored.

Specified by:
setHeightUnits in interface Sizeable
Parameters:
units - the units used in height property.
See Also:
Sizeable.setHeightUnits(int)

setWidthUnits

public void setWidthUnits(int units)
Sets the width units. Panel supports only Sizeable.UNITS_PIXELS, and this is ignored.

Specified by:
setWidthUnits in interface Sizeable
Parameters:
units - the units used in width property.
See Also:
Sizeable.setWidthUnits(int)

getScrollOffsetX

public int getScrollOffsetX()
Description copied from interface: Scrollable
Gets scroll X offset.

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

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

getScrollOffsetY

public int getScrollOffsetY()
Description copied from interface: Scrollable
Gets scroll Y offset.

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

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

isScrollable

public boolean isScrollable()
Description copied from interface: Scrollable
Is the scrolling enabled.

Enabling scrolling allows the user to scroll the scrollable view interactively

Specified by:
isScrollable in interface Scrollable
Returns:
true if the scrolling is allowed, otherwise false.

setScrollable

public void setScrollable(boolean isScrollingEnabled)
Description copied from interface: Scrollable
Enables or disables scrolling..

Enabling scrolling allows the user to scroll the scrollable view interactively

Specified by:
setScrollable in interface Scrollable
Parameters:
isScrollingEnabled - true if the scrolling is allowed.

setScrollOffsetX

public void setScrollOffsetX(int pixelsScrolledLeft)
Description copied from interface: Scrollable
Sets scroll X offset.

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

Specified by:
setScrollOffsetX in interface Scrollable
Parameters:
pixelsScrolledLeft - the xOffset.

setScrollOffsetY

public void setScrollOffsetY(int pixelsScrolledDown)
Description copied from interface: Scrollable
Sets scroll Y offset.

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

Specified by:
setScrollOffsetY in interface Scrollable
Parameters:
pixelsScrolledDown - the yOffset.

replaceComponent

public void replaceComponent(Component oldComponent,
                             Component newComponent)
Description copied from interface: ComponentContainer
Replaces the component in the container with another one without changing position.

This method replaces component with another one is such way that the new component overtakes the position of the old component. If the old component is not in the container, the new component is added to the container. If the both component are already in the container, their positions are swapped. Component attach and detach events should be taken care as with add and remove.

Specified by:
replaceComponent in interface ComponentContainer
Parameters:
oldComponent - the old component that will be replaced.
newComponent - the new component to be replaced.

componentAttachedToContainer

public void componentAttachedToContainer(ComponentContainer.ComponentAttachEvent event)
A new component is attached to container.

Specified by:
componentAttachedToContainer in interface ComponentContainer.ComponentAttachListener
Parameters:
event - the component attach event.
See Also:
ComponentContainer.ComponentAttachListener.componentAttachedToContainer(com.itmill.toolkit.ui.ComponentContainer.ComponentAttachEvent)

componentDetachedFromContainer

public void componentDetachedFromContainer(ComponentContainer.ComponentDetachEvent event)
A component has been detached from container.

Specified by:
componentDetachedFromContainer in interface ComponentContainer.ComponentDetachListener
Parameters:
event - the component detach event.
See Also:
ComponentContainer.ComponentDetachListener.componentDetachedFromContainer(com.itmill.toolkit.ui.ComponentContainer.ComponentDetachEvent)

attach

public void attach()
Notifies the component that it is connected to an application.

Specified by:
attach in interface Component
Overrides:
attach in class AbstractComponentContainer
See Also:
Component.attach()

detach

public void detach()
Notifies the component that it is detached from the application.

Specified by:
detach in interface Component
Overrides:
detach in class AbstractComponentContainer
See Also:
Component.detach()

removeAllComponents

public void removeAllComponents()
Removes all components from this container.

Specified by:
removeAllComponents in interface ComponentContainer
Overrides:
removeAllComponents in class AbstractComponentContainer
See Also:
ComponentContainer.removeAllComponents()


Copyright © 2000-2008 IT Mill Ltd. All Rights Reserved.