org.eclipse.nebula.widgets.nattable.blink
Class BlinkLayer<T>

java.lang.Object
  extended by org.eclipse.nebula.widgets.nattable.layer.AbstractLayer
      extended by org.eclipse.nebula.widgets.nattable.layer.AbstractLayerTransform
          extended by org.eclipse.nebula.widgets.nattable.blink.BlinkLayer<T>
Type Parameters:
T - Type of the Bean in the backing IDataProvider
All Implemented Interfaces:
ILayer, ILayerListener, IUniqueIndexLayer, IPersistable

public class BlinkLayer<T>
extends AbstractLayerTransform
implements IUniqueIndexLayer

Blinks cells when they are updated. Returns blinking cell styles for the cells which have been updated. Every time its asked for config labels: Checks the UpdateEventsCache for changes to the cell If a cell is updated The cell is tracked as 'blinking' and blinking config labels are returned A TimerTask is started which will stop the blinking after the blink period is over


Field Summary
protected  boolean blinkingEnabled
           
 
Fields inherited from class org.eclipse.nebula.widgets.nattable.layer.AbstractLayerTransform
underlyingLayer
 
Fields inherited from class org.eclipse.nebula.widgets.nattable.layer.AbstractLayer
layerPainter
 
Fields inherited from interface org.eclipse.nebula.widgets.nattable.persistence.IPersistable
DOT, VALUE_SEPARATOR
 
Constructor Summary
BlinkLayer(IUniqueIndexLayer dataLayer, IRowDataProvider<T> listDataProvider, IRowIdAccessor<T> rowIdAccessor, IColumnPropertyResolver columnPropertyResolver, IConfigRegistry configRegistry)
           
BlinkLayer(IUniqueIndexLayer dataLayer, IRowDataProvider<T> listDataProvider, IRowIdAccessor<T> rowIdAccessor, IColumnPropertyResolver columnPropertyResolver, IConfigRegistry configRegistry, boolean triggerBlinkOnRowUpdate)
           
BlinkLayer(IUniqueIndexLayer dataLayer, IRowDataProvider<T> listDataProvider, IRowIdAccessor<T> rowIdAccessor, IColumnPropertyResolver columnPropertyResolver, IConfigRegistry configRegistry, boolean triggerBlinkOnRowUpdate, ScheduledExecutorService scheduler)
           
 
Method Summary
 void dispose()
           
 int getColumnPositionByIndex(int columnIndex)
           
 LabelStack getConfigLabelsByPosition(int columnPosition, int rowPosition)
           
 int getRowPositionByIndex(int rowIndex)
           
 void handleLayerEvent(ILayerEvent event)
          Handle layer event notification.
 LabelStack resolveConfigTypes(ILayerCell cell, Object oldValue, Object newValue)
          Find the IBlinkingCellResolver from the ConfigRegistry.
 void setBlinkDurationInMilis(int blinkDurationInMilis)
           
 void setBlinkingEnabled(boolean enabled)
           
 
Methods inherited from class org.eclipse.nebula.widgets.nattable.layer.AbstractLayerTransform
configure, doCommand, getCellByPosition, getCellPainter, getColumnCount, getColumnIndexByPosition, getColumnPositionByX, getColumnWidthByPosition, getDataValueByPosition, getDisplayModeByPosition, getHeight, getLayerPainter, getPreferredColumnCount, getPreferredHeight, getPreferredRowCount, getPreferredWidth, getRegionLabelsByXY, getRowCount, getRowHeightByPosition, getRowIndexByPosition, getRowPositionByY, getStartXOfColumnPosition, getStartYOfRowPosition, getUnderlyingLayer, getUnderlyingLayerByPosition, getUnderlyingLayersByColumnPosition, getUnderlyingLayersByRowPosition, getWidth, isColumnPositionResizable, isRowPositionResizable, loadState, localToUnderlyingColumnPosition, localToUnderlyingRowPosition, saveState, setClientAreaProvider, setUnderlyingLayer, underlyingToLocalColumnPosition, underlyingToLocalColumnPositions, underlyingToLocalRowPosition, underlyingToLocalRowPositions
 
Methods inherited from class org.eclipse.nebula.widgets.nattable.layer.AbstractLayer
addConfiguration, addLayerListener, clearConfiguration, fireLayerEvent, getBoundsByPosition, getClientAreaProvider, getConfigLabelAccumulator, getRegionName, hasLayerListener, registerCommandHandler, registerCommandHandlers, registerEventHandler, registerPersistable, removeLayerListener, setConfigLabelAccumulator, setLayerPainter, setRegionName, toString, unregisterCommandHandler, unregisterEventHandler, unregisterPersistable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.nebula.widgets.nattable.layer.ILayer
addLayerListener, configure, doCommand, fireLayerEvent, getBoundsByPosition, getCellByPosition, getCellPainter, getClientAreaProvider, getColumnCount, getColumnIndexByPosition, getColumnPositionByX, getColumnWidthByPosition, getDataValueByPosition, getDisplayModeByPosition, getHeight, getLayerPainter, getPreferredColumnCount, getPreferredHeight, getPreferredRowCount, getPreferredWidth, getRegionLabelsByXY, getRowCount, getRowHeightByPosition, getRowIndexByPosition, getRowPositionByY, getStartXOfColumnPosition, getStartYOfRowPosition, getUnderlyingLayerByPosition, getUnderlyingLayersByColumnPosition, getUnderlyingLayersByRowPosition, getWidth, hasLayerListener, isColumnPositionResizable, isRowPositionResizable, localToUnderlyingColumnPosition, localToUnderlyingRowPosition, registerCommandHandler, registerPersistable, removeLayerListener, setClientAreaProvider, underlyingToLocalColumnPosition, underlyingToLocalColumnPositions, underlyingToLocalRowPosition, underlyingToLocalRowPositions, unregisterCommandHandler, unregisterPersistable
 
Methods inherited from interface org.eclipse.nebula.widgets.nattable.persistence.IPersistable
loadState, saveState
 

Field Detail

blinkingEnabled

protected boolean blinkingEnabled
Constructor Detail

BlinkLayer

public BlinkLayer(IUniqueIndexLayer dataLayer,
                  IRowDataProvider<T> listDataProvider,
                  IRowIdAccessor<T> rowIdAccessor,
                  IColumnPropertyResolver columnPropertyResolver,
                  IConfigRegistry configRegistry)

BlinkLayer

public BlinkLayer(IUniqueIndexLayer dataLayer,
                  IRowDataProvider<T> listDataProvider,
                  IRowIdAccessor<T> rowIdAccessor,
                  IColumnPropertyResolver columnPropertyResolver,
                  IConfigRegistry configRegistry,
                  boolean triggerBlinkOnRowUpdate)

BlinkLayer

public BlinkLayer(IUniqueIndexLayer dataLayer,
                  IRowDataProvider<T> listDataProvider,
                  IRowIdAccessor<T> rowIdAccessor,
                  IColumnPropertyResolver columnPropertyResolver,
                  IConfigRegistry configRegistry,
                  boolean triggerBlinkOnRowUpdate,
                  ScheduledExecutorService scheduler)
Method Detail

dispose

public void dispose()
Specified by:
dispose in interface ILayer
Overrides:
dispose in class AbstractLayerTransform

getConfigLabelsByPosition

public LabelStack getConfigLabelsByPosition(int columnPosition,
                                            int rowPosition)
Specified by:
getConfigLabelsByPosition in interface ILayer
Overrides:
getConfigLabelsByPosition in class AbstractLayerTransform

resolveConfigTypes

public LabelStack resolveConfigTypes(ILayerCell cell,
                                     Object oldValue,
                                     Object newValue)
Find the IBlinkingCellResolver from the ConfigRegistry. Use this to find the config types associated with a blinking cell.

Parameters:
cell - the cell
oldValue - the old value
newValue - the new value
Returns:
a LabelStack containing resolved config types associated with the cell

handleLayerEvent

public void handleLayerEvent(ILayerEvent event)
Description copied from class: AbstractLayer
Handle layer event notification. Convert it to your context and propagate UP. If you override this method you MUST NOT FORGET to raise the event up the layer stack by calling super.fireLayerEvent(event) - unless you plan to eat the event yourself.

Specified by:
handleLayerEvent in interface ILayerListener
Overrides:
handleLayerEvent in class AbstractLayer
Parameters:
event - the event

setBlinkingEnabled

public void setBlinkingEnabled(boolean enabled)

getColumnPositionByIndex

public int getColumnPositionByIndex(int columnIndex)
Specified by:
getColumnPositionByIndex in interface IUniqueIndexLayer

getRowPositionByIndex

public int getRowPositionByIndex(int rowIndex)
Specified by:
getRowPositionByIndex in interface IUniqueIndexLayer

setBlinkDurationInMilis

public void setBlinkDurationInMilis(int blinkDurationInMilis)


Copyright © 2014. All rights reserved.