ch.uzh.ifi.attempto.echocomp
Class DelayedComponent

java.lang.Object
  extended by nextapp.echo.app.Component
      extended by nextapp.echo.app.Column
          extended by ch.uzh.ifi.attempto.echocomp.DelayedComponent
All Implemented Interfaces:
java.io.Serializable, nextapp.echo.app.RenderIdSupport

public abstract class DelayedComponent
extends nextapp.echo.app.Column

This abstract class can be used to create components that are initialized asynchronously in the background. This is makes sense for components that require some time to create themselves (e.g. because of time expensive calculations). The possibly time consuming creation of the component can be done in a synchronized way so that at most one such creation process (per application instance) is running at a time.

Author:
Tobias Kuhn
See Also:
Serialized Form

Field Summary
 
Fields inherited from class nextapp.echo.app.Column
PROPERTY_BORDER, PROPERTY_CELL_SPACING, PROPERTY_INSETS
 
Fields inherited from class nextapp.echo.app.Component
CHILD_VISIBLE_CHANGED_PROPERTY, CHILDREN_CHANGED_PROPERTY, ENABLED_CHANGED_PROPERTY, FOCUS_NEXT_ID_CHANGED_PROPERTY, FOCUS_PREVIOUS_ID_CHANGED_PROPERTY, LAYOUT_DIRECTION_CHANGED_PROPERTY, LOCALE_CHANGED_PROPERTY, PROPERTY_BACKGROUND, PROPERTY_FONT, PROPERTY_FOREGROUND, PROPERTY_LAYOUT_DATA, STYLE_CHANGED_PROPERTY, STYLE_NAME_CHANGED_PROPERTY, VISIBLE_CHANGED_PROPERTY
 
Constructor Summary
DelayedComponent()
          Creates a new delayed component with no temporary component.
DelayedComponent(boolean synchronize)
          Creates a new delayed component with no temporary component.
DelayedComponent(nextapp.echo.app.Component tempComponent)
          Creates a new delayed component with the given temporary component.
DelayedComponent(nextapp.echo.app.Component tempComponent, boolean synchronize)
          Creates a new delayed component which shows the temporary component until the real component is ready.
 
Method Summary
 void finalizeAction()
          Override this method to run code in the appliction context (e.g.
abstract  nextapp.echo.app.Component initComponent()
          This method should contain the (possibly time-consuming) operations to create the actual GUI component.
 
Methods inherited from class nextapp.echo.app.Column
getBorder, getCellSpacing, getInsets, setBorder, setCellSpacing, setInsets
 
Methods inherited from class nextapp.echo.app.Component
add, add, addPropertyChangeListener, addPropertyChangeListener, dispose, firePropertyChange, get, getApplicationInstance, getBackground, getComponent, getComponent, getComponentCount, getComponents, getEventListenerList, getFocusNextId, getFocusPreviousId, getFont, getForeground, getId, getIndex, getLayoutData, getLayoutDirection, getLocale, getLocalStyle, getParent, getRenderId, getRenderIndexedProperty, getRenderIndexedProperty, getRenderLocale, getRenderProperty, getRenderProperty, getStyle, getStyleName, getVisibleComponent, getVisibleComponentCount, getVisibleComponents, hasEventListenerList, indexOf, init, isAncestorOf, isEnabled, isFocusTraversalParticipant, isRegistered, isRenderEnabled, isRenderVisible, isValidChild, isValidParent, isVisible, processInput, remove, remove, removeAll, removePropertyChangeListener, removePropertyChangeListener, set, setBackground, setComponents, setEnabled, setFocusNextId, setFocusPreviousId, setFocusTraversalParticipant, setFont, setForeground, setId, setIndex, setLayoutData, setLayoutDirection, setLocale, setRenderId, setStyle, setStyleName, setVisible, validate, verifyInput, visibleIndexOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DelayedComponent

public DelayedComponent(nextapp.echo.app.Component tempComponent,
                        boolean synchronize)
Creates a new delayed component which shows the temporary component until the real component is ready.

Parameters:
tempComponent - The temporary component.
synchronize - Defines whether the calculation should be performed in a synchronized way.

DelayedComponent

public DelayedComponent(nextapp.echo.app.Component tempComponent)
Creates a new delayed component with the given temporary component. The calculation is not synchronized.

Parameters:
tempComponent - The temporary component.

DelayedComponent

public DelayedComponent(boolean synchronize)
Creates a new delayed component with no temporary component.

Parameters:
synchronize - Defines whether the calculation should be performed in a synchronized way.

DelayedComponent

public DelayedComponent()
Creates a new delayed component with no temporary component. The calculation is not synchronized.

Method Detail

initComponent

public abstract nextapp.echo.app.Component initComponent()
This method should contain the (possibly time-consuming) operations to create the actual GUI component. This operation will be performed asynchronously. As soon as it is finished, the temporary component (if present) is replaced by the component this method returns.

Returns:
The GUI component.

finalizeAction

public void finalizeAction()
Override this method to run code in the appliction context (e.g. for GUI changes) after the asynchronous operation has finished.



Copyright 2008-2012, AceWiki developers