public class TickUpdateCellEditDialog extends CellEditDialog
CellEditDialog
that adds additional functionality
to also use tick updates on the cell value(s). By selecting another edit type
than set, the value entered in the editor control will be processed with the
current value instead of simply setting this value. As using e.g. increase/decrease
on the current value allows different values than on set, the validator needs
to be wrapped so it is skipped for entering the value for processing.cell, cellEditHandler, cellEditor, configRegistry, editDialogSettings, originalCanonicalValue
blockedHandler, buttonBar, DIALOG_DEFAULT_BOUNDS, DIALOG_PERSISTLOCATION, DIALOG_PERSISTSIZE, dialogArea, DLG_IMG_ERROR, DLG_IMG_HELP, DLG_IMG_INFO, DLG_IMG_MESSAGE_ERROR, DLG_IMG_MESSAGE_INFO, DLG_IMG_MESSAGE_WARNING, DLG_IMG_QUESTION, DLG_IMG_WARNING, ELLIPSIS
DIALOG_MESSAGE, DIALOG_SHELL_ICON, DIALOG_SHELL_LOCATION, DIALOG_SHELL_RESIZABLE, DIALOG_SHELL_SIZE, DIALOG_SHELL_TITLE
Constructor and Description |
---|
TickUpdateCellEditDialog(org.eclipse.swt.widgets.Shell parentShell,
Object originalCanonicalValue,
ILayerCell cell,
ICellEditor cellEditor,
IConfigRegistry configRegistry,
ITickUpdateHandler tickUpdateHandler) |
Modifier and Type | Method and Description |
---|---|
Object |
calculateValue(Object currentValue,
Object processValue)
In case
ICellEditDialog.getEditType() returns an edit type for processing
values, this method should implemented to do that transformation. |
protected org.eclipse.swt.widgets.Control |
createDialogArea(org.eclipse.swt.widgets.Composite parent) |
EditTypeEnum |
getEditType() |
cancelPressed, configureShell, getCommittedValue, getEscKeyListener, getInitialLocation, getInitialSize, isResizable, okPressed, setDialogSettings
applyDialogFont, buttonPressed, close, convertHeightInCharsToPixels, convertHeightInCharsToPixels, convertHorizontalDLUsToPixels, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, convertVerticalDLUsToPixels, convertWidthInCharsToPixels, convertWidthInCharsToPixels, create, createButton, createButtonBar, createButtonsForButtonBar, createContents, dialogFontIsDefault, getBlockedHandler, getButton, getButtonBar, getCancelButton, getDialogArea, getDialogBoundsSettings, getDialogBoundsStrategy, getImage, getOKButton, initializeBounds, initializeDialogUnits, setBlockedHandler, setButtonLayoutData, setButtonLayoutFormData, shortenText
canHandleShellCloseEvent, constrainShellSize, createShell, getConstrainedShellBounds, getContents, getDefaultImage, getDefaultImages, getDefaultOrientation, getLayout, getParentShell, getReturnCode, getShell, getShellListener, getShellStyle, getWindowManager, handleFontChange, handleShellCloseEvent, open, setBlockOnOpen, setDefaultImage, setDefaultImages, setDefaultModalParent, setDefaultOrientation, setExceptionHandler, setParentShell, setReturnCode, setShellStyle, setWindowManager
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
open
public TickUpdateCellEditDialog(org.eclipse.swt.widgets.Shell parentShell, Object originalCanonicalValue, ILayerCell cell, ICellEditor cellEditor, IConfigRegistry configRegistry, ITickUpdateHandler tickUpdateHandler)
parentShell
- the parent shell, or null
to create a top-level
shelloriginalCanonicalValue
- The value that should be propagated to the editor
control. Needed because for multi cell editing or editor activation by
letter/digit key will result in a different value to populate for some
editors than populating the value out of the cell/data model directly.cell
- The cell that should be edited. Needed because editor activation
retrieves the configuration for editing directly out of the cell.cellEditor
- The ICellEditor
that will be used as editor control
within the dialog.configRegistry
- The IConfigRegistry
containing the configuration of
the current NatTable instance the command should be executed for. This is
necessary because the edit controllers in the current architecture are not
aware of the instance they are running in and therefore it is needed for
activation of editors.tickUpdateHandler
- The ITickUpdateHandler
that will be used to process
the tick updates after closing this editor by pressing ok.protected org.eclipse.swt.widgets.Control createDialogArea(org.eclipse.swt.widgets.Composite parent)
createDialogArea
in class CellEditDialog
public EditTypeEnum getEditType()
getEditType
in interface ICellEditDialog
getEditType
in class CellEditDialog
EditTypeEnum.SET
is returned, which
will simply set the committed value to the data model. Every other
edit type will do some calculation based on the committed value and
the current value in the data model.public Object calculateValue(Object currentValue, Object processValue)
CellEditDialog
ICellEditDialog.getEditType()
returns an edit type for processing
values, this method should implemented to do that transformation.calculateValue
in interface ICellEditDialog
calculateValue
in class CellEditDialog
currentValue
- The current value for the cell before data model updateprocessValue
- The value committed to the editor that should be used for
calculation on the current value.ICellEditDialog
implementation and therefore the value
that was committed to the editor will be updated to the data model.Copyright © 2013. All Rights Reserved.