Class UITable
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.prop.ui.UIComp
- com.iizix.prop.ui.UIContainer
- com.iizix.prop.ui.table.UITable
- All Implemented Interfaces:
EventListener,IFocusComp,IMessageBox,IComponent,ICustomDataProvider,IGProp<GProp<?>[]>,IPropCnr,IUIComp,IUIContainer,IUIContextMenuOwner,IUIFocusComp,IUICellSelectionComp,IUIIndexedSelectionComp,IUISelectionComp,IUISingleIndexedSelectionComp,IVSComponentListener,IVSComponentState,IVSFieldListener,IVSGenericComponentListener,IVSTableColumnReferenceOwner,IVSTableListener,java.lang.Cloneable
- Direct Known Subclasses:
EUITable
public class UITable extends UIContainer implements IVSTableListener, IVSTableColumnReferenceOwner, IUISingleIndexedSelectionComp, IUICellSelectionComp
The table UI container.The general recommendation is to program against the VirtualSpace, but if you wish, you can add a specific selection listener to process selection changes on the UITable instance. An event will be fired for a table that is selection capable either on row or cell level, of the selection types SINGLE, EXTENDED, MULTIPLE or TOGGLE. No event will be triggered for selection type NONE, and all methods used to retrieve or set the selection will return no selection or no change respectively.
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.gyro.IMessageBox
IMessageBox.Icon
Nested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.State
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCELL_SELECTION_PNCell selection property name.static java.lang.StringFILTER_CASEFilter case sensitive boolean property name.static java.lang.StringFILTER_CLASSLATER: Filter class ClassReference property name.static java.lang.StringFILTER_DELAYProperty name for the Filter delay.static java.lang.StringFILTER_OPERATIONFilter operation integer property name.static java.lang.StringFILTER_VSFIELDProperty name for the Filter VSField.static java.lang.StringSELECTION_TYPEThe selection type property name.static intSELECTION_TYPE_EXTENDEDSelection type (multiple selection enabled): MULTIPLE.static intSELECTION_TYPE_MULTIPLESelection type (multiple selection enabled): MULTIPLE.static intSELECTION_TYPE_NONESelection type: NONE.static intSELECTION_TYPE_SINGLESelection type: SINGLE.static intSELECTION_TYPE_TOGGLESelection type (multiple selection enabled): TOGGLE.Fields inherited from class com.iizix.prop.ui.UIContainer
UICOMP_CLASS, VS_STATE_FOCUS_PROP_NAME
Fields inherited from class com.iizix.prop.ui.UIComp
EMPTY, REMOTE_FOCUS_EVENT, styles, vsField
Fields inherited from class com.iizix.prop.PropCnr
EMPTY_CLASSES, EMPTY_CNRS, EXTENDS_FRAMEWORK_ERROR_ID
Fields inherited from class com.iizix.prop.GProp
GPDEBUG, PROP_ATTR_STRING_EDITOR_PROP, PROP_ATTR_STRING_ERRORED_NAME, PROP_ATTR_STRING_EXTENDS, PROP_ATTR_STRING_EXTENDS_FINAL, PROP_ATTR_STRING_EXTENDS_PRIVATE, PROP_ATTR_STRING_NULLABLE, PROP_ATTR_STRING_PRIVATE, PROP_ATTR_STRING_PRIVATE_CHANGE_EVENT, PROP_ATTR_STRING_READ_ONLY, PROP_USER_1, PROP_USER_2
Fields inherited from interface com.iizix.prop.IGProp
EQC_ERROR_IGNORE_ALL, EQC_ERROR_IGNORE_REFERENCES, EQC_IGNORE_ARRAY, EQC_IGNORE_VOLATILE_OR_EDITOR, EQC_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
Fields inherited from interface com.iizix.gyro.IMessageBox
ICON_ERROR, ICON_INFORMATION, ICON_MAP, ICON_NONE, ICON_QUESTION, ICON_WARNING
Fields inherited from interface com.iizix.prop.ui.IUIComp
ERROR, INFORMATION, NONE, REMOTE_FOCUS_EVENT, WARNING
Constructor Summary
Constructors Constructor Description UITable()Creates the container without name with a null value.UITable(Atom propertyAtom)Creates the container with the specified name with a null value.UITable(Atom propertyAtom, GProp<?>[] properties)Creates the container with the specified name and properties.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddListener(IUITableSelectionChangeListener listener)Adds a new selection listener for row or cell selection.protected voidaddPredefinedProps()Adds the predefined properties for this container.booleancanAlignX()Returns if the component can be aligned left, right, center, or horizontal fill.booleancanAlignY()Returns if the component can be aligned top, bottom, middle or vertical fill.java.lang.StringclearSelection()Clear the selection.UITableclone()Creates a clone out of this property.protected StylescreateBodyStyles()Creates the Body Styles container (can be overridden by Designer to create EditorStyles).TableCombocreateCellCombo()Creates a new combobox table contents to be used in a cell.protected StylescreateFooterStyles()Creates the Footer Styles container (can be overridden by Designer to create EditorStyles).protected StylescreateHeaderStyles()Creates the Header Styles container (can be overridden by Designer to create EditorStyles).SizegetApproximateSize()Returns the size of the component in pixels.Value.TypegetBestVSFieldValueType(VSRelativeReference<?> reference)Requests the value type that would best suit the listener.UITableColumngetColumn(int index)Gets the columns in the table.intgetColumnCount()Gets the column count.UITableColumn[]getColumns()Gets the columns in the table.ITableContentProvider<?,?,?,?>getContentProvider()Gets the custom table content provider and initializes it if required.intgetDeviceType()Gets the device type: -1=mobile, 0=both, 1=desktop.intgetDisplayedRowCount()Gets the displayed row count after filtering.intgetEvenRowStyle()Gets the even row style.ITableFilter<?,?>getFilter()Gets the filter instance.ITableFilter.OpgetFilterOperation()Gets the operation for filtering.java.lang.StringgetFilterText()Gets the current filter text.intgetFirstSelectedIndex()Gets the first selected index.TableRowgetFirstSelectedRow()Gets the first selected row index for a selection table type, typically single-selection.intgetFirstSelectedRowIndex()Gets the first selected row index for a selection table type, typically single-selection.VSComponentgetMappedVSComponent()Gets the main component that is used to map the UI component to the VirtualSpace.intgetOddRowStyle()Gets the odd row style.java.lang.reflect.MethodgetOnUISelectionMethod()Returns the method to use for onUISelection notifications that is attached to this selection component.voidgetPredefinedProps()Gets potential references to predefined properties for this container.TableRowsgetRowsCnr()Gets the rows container.TCell[]getSelectedCells()Gets the selected cells in the table.intgetSelectedIndex()Gets the first selected row index.int[]getSelectedIndicies()Gets the selected indicies.int[]getSelectedRowIndicies()Gets the selected row indicies for a selection table type.TableRow[]getSelectedRows()Gets the selected rows for a selection table type.IUISelectiongetSelection()Gets the current selection of the component.GenericListener<IUISelectionListener>getSelectionListenerHandler(boolean doCreate)Returns the generic selection listener.AtomgetSelectionPropAtom()Returns the selection property atom for verification of selection changes.intgetSelectionType()Gets the selection type.VSColumnHeader[]getVSColumns()Gets the VS columns for the table.VSTablegetVSTable()Gets the VS table reference of the table.VSTablegetVSTable(VSTableColumnReference ref)Gets the VSTable for a VSTableColumnReference instance.VSTableReferencegetVSTableReference()Gets the VirtualSpace table reference for the table.VSReferenceOwnerData<VSTable,VSTableReference>getVSTableReferenceOwnerData()Gets the table reference owner data for the table column reference.booleanhasImplicitAlignFillX()Returns if the container has implicit component horizontal fill.booleanhasImplicitAlignFillY()Returns if the container has implicit component vertical fill.booleanisCellSelectionEnabled()Returns if cell selection is enabled or not.booleanisColumnHiderEnabled()Returns if the columns hider is enabled, i.e.booleanisFilterCaseSensitive()Gets the filter flag for case sensitive.booleanisHeaderDisplayed()Returns if the header is displayed or not.booleanisMobileContextMenuSupported()Returns if the component can show the context menu in mobile mode.booleanisRowSelectionAllowed()Returns if row selection is allowed or not, i.e.booleanisSelected()Returns the selection of state of the component.booleanmustHaveExplicitHeight()Does this component require an explicitly defined height?booleanmustHaveExplicitWidth()Does this component require an explicitly defined width?booleanmustHaveHeight()Does this component require a height?booleanmustHaveWidth()Does this component require a width?voidonBroken(VSRelativeReference<?> reference, VSField field)Called when the property reference has been broken, i.e.voidonBroken(VSRelativeReference<?> reference, VSTable table)Called when the property reference has been broken, i.e.voidonCellStateChanged(VSField cell, IVSComponentState.State state, boolean on)Called when the cell changes state.voidonCellValueChanged(VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)Called when the cell value is set.voidonEventSelf(GEvent event)Event checking to clear cache.protected voidonPrepare(ClassReference cr, java.util.List<java.lang.Throwable> errors)Called to resolve methods for the component from main "onPrepare" once the ClassReference has been found.protected voidonPropDispose()Called when disposed of.protected voidonPropParentChanged(PropCnr oldParent, PropCnr newParent)Called when the parent is changed for this class.voidonResolved(VSRelativeReference<?> reference, VSField field)Called when the property reference has been resolved.voidonResolved(VSRelativeReference<?> reference, VSTable table)Called when the property reference has been resolved.voidonRowAdded(VSRow row, int index)Called when a row is added.voidonRowRemoved(VSRow row, int index)Called when a row is removed.voidonRowStateChanged(VSRow row, IVSComponentState.State state, boolean on)Called when a row selection state changed.voidonSingleSelectionChanged(VSTable table, int index)Called when the single selection changes.voidonStateChanged(VSTable table, IVSComponentState.State state, boolean on)Called when the table changes state.voidonValueChanged(VSField field, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)Called when the field value is set.protected voidonVirtualizationCompleted(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace, PropCnr virtualizedProp, boolean isPostResolve)Called when virtualization completed.voidrefreshTable(int dirty, java.lang.String reason)Requests a refresh of the entire table.intregisterStyle(java.lang.String stylesRef)Registers the style reference for use with header or row cells.intregisterStyle(java.lang.String stylesRef, boolean logEvent)Registers the style reference for use with header or row cells.booleanremoveListener(IUITableSelectionChangeListener listener)Removes a selection listener for row or cell selection.booleansetContentProvider(ITableContentProvider<?,?,?,?> provider)Sets a custom content provider and initializes it if required.booleansetFilter(ITableFilter<?,?> filter)Sets the filter instance.booleansetFilterCaseSensitive(boolean on)Sets the filter flag for case sensitive and refreshes the table if required.booleansetFilterOperation(ITableFilter.Op op)Sets the operation for filtering and refreshes the table if required.booleansetFilterText(java.lang.String text)Sets the filter text and refreshes the table if required.booleansetSelectedCells(int[] rows, int[] cols)Sets the selected cells in the table.booleansetSelectedCells(TCell[] cells)Sets the selected cells in the table.booleansetSelectedRow(int index)Sets the selected row index for a selection table type.booleansetSelectedRows(int[] indicies)Sets the selected row index for a selection table type.booleansetSelectedRows(TableRow[] rows)Sets the selected rows for a selection table type.java.lang.StringsetSelection(int index)Sets the selection as a single selected item at specified index.java.lang.StringsetSelection(int[] indicies)Sets the selection to the specified indicies.java.lang.StringsetSelection(IUISelection selection)Sets the selection.protected voidupdateTable()Called to update the table if required with new data.Methods inherited from class com.iizix.prop.ui.UIContainer
addPredefinedPropsImpl, canAcceptUIContainerFocus, createCompsCnr, getComponentCount, getComponents, getCompsCnr, getFirstContainerVSStateFocus, getFirstUIComponent, getFirstUIComponentNull, getRadioSelectionComponents, getSelectedRadioComponent, getUIComponent, getUIComponentNull, getVSStateFocus, isEmptyContainerAllowed, onBroken, onComponentSelectedInParent, onResolved, onSelectionChanged, onSelectionChanged, onStateChanged, onVSComponentSelectionChanged, resetComponentID, setRadioSelectionComponent, setUIContainerFocus, updateUICompsReference, verify, verifyComponentScope
Methods inherited from class com.iizix.prop.ui.UIComp
add, addMappings, assignFontInfoResolver, canFillX, canFillY, canRequestFocus, canRequestFocus, clearErrorMessage, couldRequestFocusIfVirtualized, createStyles, createTitleProp, disconnectVSField, enterVSProcessing, exitVSProcessing, fireSelection, fireSelection, forbiddenGetCustomDataMap, getBadge, getComponentID, getComponentMappings, getErrorMessage, getErrorMessage, getErrorMessageEx, getErrorMessageString, getErrorMessageString, getErrorMessageStringEx, getFixHeight, getFixWidth, getFontInfo, getForcedAlignX, getForcedAlignY, getKStringText, getLayout, getLayoutMgr, getLayoutMgr, getMessage, getMessageText, getPixelHeight, getPixelWidth, getSize, getStyles, getStyles, getText, getTitle, getTitleKS, getTitlePKS, getTooltip, getTooltipText, getTrigger, getUIPanel, getUIParent, getValue, getValue, getVirtualSpace, getVSField, hasExplicitHeight, hasExplicitWidth, hasFocus, hasImplicitHeight, hasImplicitWidth, hasSelectionChanged, isEnabled, isMobile, isReadOnly, isRTL, isVisible, isVSFieldDisconnected, onFocusGained, onNotifySelectionChanged, onParentStateChanged, onPrepare, onRemoteEvent, onStateChanged, processVSComponentSelection, reconnectVSField, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusEx, requestFocusEx, requestFocusEx, requestFocusEx, setBadge, setBadge, setComponentToVSField, setEnabled, setEnabled, setErrorMessage, setErrorMessage, setErrorMessage, setErrorMessage, setHTMLText, setLayoutMgr, setMessage, setMessage, setReadOnly, setReadOnly, setText, setText, setTitle, setTitle, setTitle, setTooltip, setTooltip, setVisible, setVisible, setVSFieldMessageToComponent, setVSFieldToComponent
Methods inherited from class com.iizix.prop.PropCnr
__transferChildProps, addProp, addProp, addProp2, addProp2, appendPropValue, completeVirtualize, containsProp, containsProp, convertLoadedProp, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, createVSReference, doPropEqualsArrayValues, doVirtualizePropCnr, enablePropCommunication, enablePropHashMap, equalsTree, equalsTree, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsContainer, getExtendsError, getExtendsName, getExtendsOverride, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropBaseReference, getPropCnr, getPropCount, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue0, getReferences, getRetargetedVerifyContainer, getString, getString, getString, getString, getValueClasses, getVSReference, hasSendData, initializeElement, initializeExtendsFramework, initializeProp, initializeValue, initPropCnr, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, isSibling, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropRemoved, onPropTreeInitialized, onReferenceEvent, paramString, prepare, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, replaceProps, requestFocus, requestFocusEx, resolveReferences, resolveRuntimeReferences, setBool, setBool, setBool, setBool, setCreateRequiredProp, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, shouldCreateProps, shouldSerializeToXML, toElementString, toNativeValue0, usePropHashMap, usesPropIndex, validateChildPropInValue, validateClassInstances, validatePropType, validatePropValue, verifyInternalUseOnly, verifyTree, virtualize
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsErrors, equalsObj, equalsPropValue, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getProjectName, getPropAtom, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParent, getTreeLock, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropPrivateAtCreation, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPropInvalidateCache, onPropValueSet, onVirtualized, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, verifyHasPropertyItem, warning, warning, warning
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.iizix.IComponent
clearErrorMessage, getBadge, getKStringText, getLayoutMgr, getMessage, getMessageText, getStyles, getText, getTooltip, getTooltipText, getUIPanel, getUIParent, isEnabled, isReadOnly, isVisible, messageBox, requestFocus, requestFocus, requestFocusEx, requestFocusEx, setBadge, setBadge, setEnabled, setErrorMessage, setErrorMessage, setHTMLText, setLayoutMgr, setMessage, setMessage, setReadOnly, setText, setText, setTooltip, setTooltip, setVisible
Methods inherited from interface com.iizix.prop.ICustomDataProvider
forbiddenGetCustomDataMap, getCustomData, putCustomData, putCustomDataIfAbsent
Methods inherited from interface com.iizix.gyro.IFocusComp
requestFocus, requestFocus, requestFocusEx, requestFocusEx
Methods inherited from interface com.iizix.prop.IGProp
addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getClientSessionGyro, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getReferences, getRelativePropName, getRootParent, getTreeLock, getValueClasses, getVSReference, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onPropTreeInitialized, onRemoteEvent, removePropError, removePropListener, renameProp, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toElementString, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropType, validatePropValue, verify, verifyHasPropertyItem, warning, warning, warning
Methods inherited from interface com.iizix.gyro.IMessageBox
messageBox, messageBox
Methods inherited from interface com.iizix.prop.IPropCnr
addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, enablePropCommunication, enablePropHashMap, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsError, getExtendsName, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropCnr, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getString, getString, getString, getString, hasFocus, initializeExtendsFramework, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsRoot, isPropAddRemoveAllowed, isPropExtended, isSibling, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, requestFocus, requestFocusEx, setBool, setBool, setBool, setBool, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, usePropHashMap, usesPropIndex, validateClassInstances
Methods inherited from interface com.iizix.prop.ui.selection.IUICellSelectionComp
isSelectionCellBased
Methods inherited from interface com.iizix.prop.ui.IUIComp
canAcceptUIContainerFocus, disconnectVSField, getComponentID, getComponentMappings, getErrorMessage, getErrorMessage, getFirstUIComponent, getFirstUIComponentNull, getFixHeight, getFixWidth, getLayout, getLayoutMgr, getPanelUIComponent, getPanelUIComponentNull, getUIRef, getValue, getValue, getVirtualSpace, getVSField, isMobile, isRTL, isVSFieldDisconnected, reconnectVSField, setComponentToVSField, setErrorMessage, setErrorMessage, setUIContainerFocus, setVSFieldMessageToComponent, setVSFieldToComponent
Methods inherited from interface com.iizix.prop.ui.IUIContextMenuOwner
getContainedContextMenu, getContextMenu, getReferencedContextMenu, isContextMenuSupported, onBroken, onResolved
Methods inherited from interface com.iizix.prop.ui.IUIFocusComp
onFocusGained, onFocusLost
Methods inherited from interface com.iizix.prop.ui.selection.IUIIndexedSelectionComp
isSelectionIndexBased, setSelection, setSelection, setSelection, setSelection, setSelection
Methods inherited from interface com.iizix.prop.ui.selection.IUISelectionComp
addSelectionListener, isSelectionBooleanBased, isSelectionTriStateBased, removeSelectionListener
Methods inherited from interface com.iizix.prop.vs.IVSComponentListener
onParentStateChanged
Methods inherited from interface com.iizix.prop.vs.IVSFieldListener
onStateChanged
Field Detail
SELECTION_TYPE_NONE
public static final int SELECTION_TYPE_NONE
Selection type: NONE.- See Also:
- Constant Field Values
SELECTION_TYPE_SINGLE
public static final int SELECTION_TYPE_SINGLE
Selection type: SINGLE.- See Also:
- Constant Field Values
SELECTION_TYPE_EXTENDED
public static final int SELECTION_TYPE_EXTENDED
Selection type (multiple selection enabled): MULTIPLE.- See Also:
- Constant Field Values
SELECTION_TYPE_MULTIPLE
public static final int SELECTION_TYPE_MULTIPLE
Selection type (multiple selection enabled): MULTIPLE.- See Also:
- Constant Field Values
SELECTION_TYPE_TOGGLE
public static final int SELECTION_TYPE_TOGGLE
Selection type (multiple selection enabled): TOGGLE.- See Also:
- Constant Field Values
SELECTION_TYPE
public static final java.lang.String SELECTION_TYPE
The selection type property name.- See Also:
- Constant Field Values
CELL_SELECTION_PN
public static final java.lang.String CELL_SELECTION_PN
Cell selection property name.- See Also:
- Constant Field Values
FILTER_VSFIELD
public static final java.lang.String FILTER_VSFIELD
Property name for the Filter VSField.- See Also:
- Constant Field Values
FILTER_DELAY
public static final java.lang.String FILTER_DELAY
Property name for the Filter delay.- See Also:
- Constant Field Values
FILTER_CASE
public static final java.lang.String FILTER_CASE
Filter case sensitive boolean property name.- See Also:
- Constant Field Values
FILTER_OPERATION
public static final java.lang.String FILTER_OPERATION
Filter operation integer property name.- See Also:
- Constant Field Values
FILTER_CLASS
public static final java.lang.String FILTER_CLASS
LATER: Filter class ClassReference property name.- See Also:
- Constant Field Values
Constructor Detail
UITable
public UITable()
Creates the container without name with a null value.
UITable
public UITable(Atom propertyAtom)
Creates the container with the specified name with a null value.- Parameters:
propertyAtom- the property atom.
UITable
public UITable(Atom propertyAtom, GProp<?>[] properties) throws PropException
Creates the container with the specified name and properties.- Parameters:
propertyAtom- the property atom.properties- the property array value for the container.- Throws:
PropException- when properties are not correctly defined.
Method Detail
createHeaderStyles
protected Styles createHeaderStyles()
Creates the Header Styles container (can be overridden by Designer to create EditorStyles).
createBodyStyles
protected Styles createBodyStyles()
Creates the Body Styles container (can be overridden by Designer to create EditorStyles).
createFooterStyles
protected Styles createFooterStyles()
Creates the Footer Styles container (can be overridden by Designer to create EditorStyles).
addPredefinedProps
protected void addPredefinedProps() throws PropExceptionAdds the predefined properties for this container. This method is called once just after construction of the property container and sometimes population of it.The method should add properties to create or get reference to using the
maybeAddPropmethod. When the PropCnr instance is cloned, the methodgetPredefinedProps()is called in order for the subclass to be able to retrieve the new instances to these properties, if stored in instance variables.- Overrides:
addPredefinedPropsin classUIContainer- Throws:
PropException- for property exceptions.
getPredefinedProps
public void getPredefinedProps()
Gets potential references to predefined properties for this container. This method is called once just after cloning of the property container.The method should get reference to using the
getProp(...)methods. This allows the subclass to be able to retrieve the new instances to the properties created duringaddPredefinedProps()if stored in instance variables.- Overrides:
getPredefinedPropsin classUIContainer
getRowsCnr
public TableRows getRowsCnr()
Gets the rows container.
getDeviceType
public final int getDeviceType()
Gets the device type: -1=mobile, 0=both, 1=desktop.- Specified by:
getDeviceTypein interfaceIUIComp- Overrides:
getDeviceTypein classUIContainer- Returns:
- Zero: 0=both.
isMobileContextMenuSupported
public boolean isMobileContextMenuSupported()
Returns if the component can show the context menu in mobile mode.- Specified by:
isMobileContextMenuSupportedin interfaceIUIContextMenuOwner- Overrides:
isMobileContextMenuSupportedin classUIContainer- Returns:
- Table component supports context menus for mobile.
clone
public UITable clone()
Creates a clone out of this property. The cloning is overridden by the subclasses in order to handle cloning of its class variables appropriately.Cloning is used for "virtualization" of a property tree in the server. Client property classes will therefore throw
CloneNotSupportedException.Once a tree has been cloned, the change-flag is reset, and the create-flag is set. All listeners are also removed! The new cloned property is an orphan, i.e. has no parent set. All children properties are also (deep) cloned.
Note that the cloning process is done WITHOUT thread synchronization for performance reasons, thus no modifications should be done to the tree!
- Overrides:
clonein classUIContainer
onVirtualizationCompleted
protected void onVirtualizationCompleted(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace, PropCnr virtualizedProp, boolean isPostResolve)
Called when virtualization completed.This method is called to the entire tree of the newly virtualized property container.
- Overrides:
onVirtualizationCompletedin classUIComp- Parameters:
appGyro- The application gyro instance performing the virtualization.clientGyro- The client gyro session, can benullif not initialized from the client gyro.virtualSpace- The virtualized VirtualSpace.virtualizedProp- The property being virtualized.isPostResolve- Flag indicating this call is done after references are attempted to be resolved.
onPropParentChanged
protected void onPropParentChanged(PropCnr oldParent, PropCnr newParent)
Called when the parent is changed for this class. The default implementation does nothing and must be overridden by subclasses.- Overrides:
onPropParentChangedin classGProp<GProp<?>[]>- Parameters:
oldParent- The old parent (or null if none).newParent- The new parent (or null if none).
onPropDispose
protected void onPropDispose()
Called when disposed of.- Overrides:
onPropDisposein classUIComp
mustHaveWidth
public boolean mustHaveWidth()
Does this component require a width?- Overrides:
mustHaveWidthin classUIContainer- Returns:
- true if the width must be defined and non-zero, false otherwise.
mustHaveHeight
public boolean mustHaveHeight()
Does this component require a height?- Overrides:
mustHaveHeightin classUIContainer- Returns:
- true if the height must be defined and non-zero, false otherwise.
mustHaveExplicitWidth
public boolean mustHaveExplicitWidth()
Does this component require an explicitly defined width?- Overrides:
mustHaveExplicitWidthin classUIComp- Returns:
- true if the width must be defined and non-zero, false otherwise.
mustHaveExplicitHeight
public boolean mustHaveExplicitHeight()
Does this component require an explicitly defined height?- Overrides:
mustHaveExplicitHeightin classUIComp- Returns:
- true if the height must be defined and non-zero, false otherwise.
canAlignX
public boolean canAlignX()
Returns if the component can be aligned left, right, center, or horizontal fill.
canAlignY
public boolean canAlignY()
Returns if the component can be aligned top, bottom, middle or vertical fill.
hasImplicitAlignFillX
public boolean hasImplicitAlignFillX()
Returns if the container has implicit component horizontal fill.The default behavior is to forward the reply to
LayoutMgr.hasImplicitAlignFillX().- Overrides:
hasImplicitAlignFillXin classUIContainer- Returns:
- true means component will always fill the space in X, false otherwise.
hasImplicitAlignFillY
public boolean hasImplicitAlignFillY()
Returns if the container has implicit component vertical fill.The default behavior is to forward the reply to
LayoutMgr.hasImplicitAlignFillY().- Overrides:
hasImplicitAlignFillYin classUIContainer- Returns:
- true means component will always fill the space in Y, false otherwise.
getApproximateSize
public Size getApproximateSize()
Returns the size of the component in pixels. The size is a calculation and does not exactly reflect the real size that may be different due to additional styles not taken into account by this method. The size is calculated from the font of the component and default or defined values (such as character length or number of lines for text area).- Overrides:
getApproximateSizein classUIContainer- Returns:
- The size of the component: 400x300.
isHeaderDisplayed
public boolean isHeaderDisplayed()
Returns if the header is displayed or not.- Returns:
- true if header is displayed (default), or false for hidden header.
isColumnHiderEnabled
public boolean isColumnHiderEnabled()
Returns if the columns hider is enabled, i.e. if the user can choose to hide or show columns.- Returns:
- true if enabled, false for disabled (default).
getColumns
public UITableColumn[] getColumns()
Gets the columns in the table.- Returns:
- The array of table columns.
getColumn
public UITableColumn getColumn(int index)
Gets the columns in the table.- Parameters:
index- The column index.- Returns:
- The table column.
- Throws:
java.lang.IndexOutOfBoundsException- If the index is out of bounds.
getColumnCount
public int getColumnCount()
Gets the column count.- Returns:
- The column count.
registerStyle
public int registerStyle(java.lang.String stylesRef)
Registers the style reference for use with header or row cells.- Parameters:
stylesRef- The styles reference string, or null for no style.- Returns:
- The ID of the style, or zero for no style or reference not found.
registerStyle
public int registerStyle(java.lang.String stylesRef, boolean logEvent)Registers the style reference for use with header or row cells.- Parameters:
stylesRef- The styles reference string, or null for no style.logEvent- Flag to log an event if the style is not found (recommended).- Returns:
- The ID of the style, or zero for no style or reference not found.
getOddRowStyle
public int getOddRowStyle()
Gets the odd row style.- Returns:
- The style for odd rows, zero for none.
getEvenRowStyle
public int getEvenRowStyle()
Gets the even row style.- Returns:
- The style for even rows, zero for none.
getDisplayedRowCount
public int getDisplayedRowCount()
Gets the displayed row count after filtering.- Returns:
- The total number of rows in the table.
onEventSelf
public void onEventSelf(GEvent event)
Event checking to clear cache.- Specified by:
onEventSelfin interfaceIGProp<GProp<?>[]>- Overrides:
onEventSelfin classUIComp- Parameters:
event- The property event.
getSelectionType
public int getSelectionType()
Gets the selection type.- Specified by:
getSelectionTypein interfaceIUISelectionComp- Returns:
- The selection type:
SELECTION_TYPE_NONE,SELECTION_TYPE_SINGLE,SELECTION_TYPE_EXTENDED(default),SELECTION_TYPE_MULTIPLEorSELECTION_TYPE_TOGGLE.
isRowSelectionAllowed
public boolean isRowSelectionAllowed()
Returns if row selection is allowed or not, i.e. if the selection type is single or of multiple type and cell selection is disabled.- Returns:
- true if selection is not cell-based and type is not NONE.
isCellSelectionEnabled
public boolean isCellSelectionEnabled()
Returns if cell selection is enabled or not.- Returns:
- true if cells are selected, false otherwise.
addListener
public boolean addListener(IUITableSelectionChangeListener listener)
Adds a new selection listener for row or cell selection. Calling this method multiple times with the same listener will have no effect (but to return false).- Parameters:
listener- The listener to add.- Returns:
- true if the listener was added, false otherwise.
- Throws:
java.lang.NullPointerException- If the listener isnull.
removeListener
public boolean removeListener(IUITableSelectionChangeListener listener)
Removes a selection listener for row or cell selection.- Parameters:
listener- The listener to remove.- Returns:
- true if listener is successfully removed, false otherwise.
getFirstSelectedRowIndex
public int getFirstSelectedRowIndex()
Gets the first selected row index for a selection table type, typically single-selection.Note: the row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Returns:
- The selected row index, or -1 for none or for non-single-selection lists or if cell selection is enabled.
getFirstSelectedRow
public TableRow getFirstSelectedRow()
Gets the first selected row index for a selection table type, typically single-selection.Note: the row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Returns:
- The selected row, or
nullfor none or for non-single-selection lists or if cell selection is enabled.
getSelectedRowIndicies
public int[] getSelectedRowIndicies()
Gets the selected row indicies for a selection table type.Note: each row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Returns:
- An array with the selected row indicies, never null.
getSelectedRows
public TableRow[] getSelectedRows()
Gets the selected rows for a selection table type.Note: each row returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Returns:
- An array with the selected rows, never null.
setSelectedRow
public boolean setSelectedRow(int index)
Sets the selected row index for a selection table type. If the list can handle selection of multiple lines, all lines apart of the specified index will be unselected.Note: the row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Parameters:
index- The row index for the selection (0 to totalRowCount-1 or -1 for none).- Returns:
- true for changed, false for no change in selection (or index is invalid or selection type is SELECTION_TYPE_NONE or cell selection is enabled).
setSelectedRows
public boolean setSelectedRows(int[] indicies)
Sets the selected row index for a selection table type. If the list can handle selection of multiple lines, all lines apart of the specified index will be unselected.Note: the row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Parameters:
indicies- The row indicies for the selection.- Returns:
- true for changed, false for no change in selection (or index is invalid or selection type is SELECTION_TYPE_NONE or cell selection is enabled).
- Throws:
java.lang.IllegalArgumentException- If the indicies array is larger than one and the selection type is SELECTION_TYPE_SINGLE.
setSelectedRows
public boolean setSelectedRows(TableRow[] rows)
Sets the selected rows for a selection table type. If the list can handle selection of multiple lines, all lines apart of the specified index will be unselected.Note: the row index returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Parameters:
rows- The rows to select.- Returns:
- true for changed, false for no change in selection (or index is invalid or selection type is SELECTION_TYPE_NONE or cell selection is enabled).
- Throws:
java.lang.IllegalArgumentException- If the rows array is larger than one and the selection type is SELECTION_TYPE_SINGLE.
getSelectedCells
public TCell[] getSelectedCells()
Gets the selected cells in the table.Note: each row returned applies to visible lines in the table, i.e. when hidden or filtered out rows have been removed.
- Returns:
- An array of selected cells, never null, but empty array if table is not cell selection enabled.
setSelectedCells
public boolean setSelectedCells(TCell[] cells)
Sets the selected cells in the table.Cells that are no longer part of the table are ignored.
- Parameters:
cells- The array of cells to select.- Returns:
- true for changed selection, false for no change. false is also returned if the table is not enabled for cell selection or has the selection type set to SELECTION_TYPE_NONE.
setSelectedCells
public boolean setSelectedCells(int[] rows, int[] cols)Sets the selected cells in the table.The
rowsandcolsarrays forms pairs of cell coordinates in the table for the selected cells.If a column or row index is not part of the table, it is ignored.
- Parameters:
rows- The row indicies.cols- The column indicies.- Returns:
- true for changed selection, false for no change. false is also returned if the table is not enabled for cell selection or has the selection type set to SELECTION_TYPE_NONE.
- Throws:
java.lang.IllegalArgumentException- If therowsandcolsarrays are not of the same length.
getSelectionListenerHandler
public GenericListener<IUISelectionListener> getSelectionListenerHandler(boolean doCreate)
Returns the generic selection listener.- Specified by:
getSelectionListenerHandlerin interfaceIUISelectionComp- Parameters:
doCreate- Create the listener handler if it doesn't exist, false not to.- Returns:
- The selection listener handler, or null if not created.
getSelectionPropAtom
public Atom getSelectionPropAtom()
Returns the selection property atom for verification of selection changes.This method is used by the framework in UIComp to fire selection events when the property value changes.
- Specified by:
getSelectionPropAtomin interfaceIUISelectionComp- Returns:
- The atom of the selection property, or null if a selection property is not used.
getOnUISelectionMethod
public java.lang.reflect.Method getOnUISelectionMethod()
Returns the method to use for onUISelection notifications that is attached to this selection component. The method name is not important, but must have the annotation and signature:@OnUISelection(name = "some/property")
public void onUISelection(UISelectionEvent event)- Specified by:
getOnUISelectionMethodin interfaceIUISelectionComp- Returns:
- The method, or null if none is registered.
isSelected
public boolean isSelected()
Returns the selection of state of the component.This method does not apply for cell selection tables.
For a multiple-selection capable component, this indicates any selection, i.e. true is returned as soon as at least one element is selected, false for none.
- Specified by:
isSelectedin interfaceIUISelectionComp- Returns:
- true if the table has at least one row selected, false otherwise.
getSelection
public IUISelection getSelection()
Gets the current selection of the component.- Specified by:
getSelectionin interfaceIUISelectionComp- Returns:
- The current selection as:
- For tables with cell selection, an instance of
is returned,CellSelection - a
for single selection tables, orSingleIndexSelection for multiple selection tables.MultipleIndiciesSelection
- For tables with cell selection, an instance of
clearSelection
public java.lang.String clearSelection()
Clear the selection.This method does not apply for cell selection tables.
- Specified by:
clearSelectionin interfaceIUIIndexedSelectionComp- Returns:
- null for success, otherwise the error message with the reason why it failed.
getFirstSelectedIndex
public int getFirstSelectedIndex()
Gets the first selected index.This method does not apply for cell selection tables.
- Specified by:
getFirstSelectedIndexin interfaceIUIIndexedSelectionComp- Specified by:
getFirstSelectedIndexin interfaceIUISingleIndexedSelectionComp- Returns:
- The first index in the current selection, or -1 for none.
getSelectedIndicies
public int[] getSelectedIndicies()
Gets the selected indicies.This method does not apply for cell selection tables.
- Specified by:
getSelectedIndiciesin interfaceIUIIndexedSelectionComp- Specified by:
getSelectedIndiciesin interfaceIUISingleIndexedSelectionComp- Returns:
- A new array of the selected indices (that may be modified to your liking), or a static zero in length array for no selection.
setSelection
public java.lang.String setSelection(int index)
Sets the selection as a single selected item at specified index.This method does not apply for cell selection tables.
- Specified by:
setSelectionin interfaceIUIIndexedSelectionComp- Parameters:
index- The single item to select at index, -1 to clear the selection.- Returns:
- null for success, otherwise an error message why the selection failed.
setSelection
public java.lang.String setSelection(int[] indicies)
Sets the selection to the specified indicies.This method does not apply for cell selection tables.
- Specified by:
setSelectionin interfaceIUIIndexedSelectionComp- Specified by:
setSelectionin interfaceIUISingleIndexedSelectionComp- Parameters:
indicies- The indicies.- Returns:
- null for success, otherwise the error message with the reason why it failed.
setSelection
public java.lang.String setSelection(IUISelection selection)
Sets the selection.This method does not apply for cell selection tables.
- Specified by:
setSelectionin interfaceIUISelectionComp- Parameters:
selection- The selection.- Returns:
- null if selection is set successfully, otherwise the reason why the selection failed to be set, e.g. "Unsupported selection base" if the selection is indexed for a checkbox that only supports tri-state based selections.
getSelectedIndex
public int getSelectedIndex()
Gets the first selected row index.This method does not apply for cell selection tables.
- Specified by:
getSelectedIndexin interfaceIUISingleIndexedSelectionComp- Returns:
- The first index in the current selection, or -1 for none.
createCellCombo
public TableCombo createCellCombo()
Creates a new combobox table contents to be used in a cell.
getVSColumns
public VSColumnHeader[] getVSColumns()
Gets the VS columns for the table.- Returns:
- The array of VS columns for the table. Note that an item in the array may be null if no VS column connection is present!
getVSTableReference
public VSTableReference getVSTableReference()
Gets the VirtualSpace table reference for the table.- Returns:
- The VSTableReference, null for none.
getVSTableReferenceOwnerData
public VSReferenceOwnerData<VSTable,VSTableReference> getVSTableReferenceOwnerData()
Gets the table reference owner data for the table column reference.- Specified by:
getVSTableReferenceOwnerDatain interfaceIVSTableColumnReferenceOwner- Returns:
- The VSReferenceOwnerData instance, always non-null.
getVSTable
public VSTable getVSTable(VSTableColumnReference ref)
Gets the VSTable for a VSTableColumnReference instance.- Specified by:
getVSTablein interfaceIVSTableColumnReferenceOwner- Parameters:
ref- The reference instance, null when property-editing the reference in the Designer.- Returns:
- The table for the reference, or null if not found.
getVSTable
public VSTable getVSTable()
Gets the VS table reference of the table.- Returns:
- The VS table connected to this table, null for none.
onResolved
public void onResolved(VSRelativeReference<?> reference, VSTable table)
Called when the property reference has been resolved. UI components use this method to set its state according to the field.- Specified by:
onResolvedin interfaceIVSTableListener- Parameters:
reference- The VSRelativeReference instance holding the reference.table- The target reference.
onBroken
public void onBroken(VSRelativeReference<?> reference, VSTable table)
Called when the property reference has been broken, i.e. unresolved.- Specified by:
onBrokenin interfaceIVSTableListener- Parameters:
reference- The VSRelativeReference instance holding the reference.table- The target reference.
onStateChanged
public void onStateChanged(VSTable table, IVSComponentState.State state, boolean on)
Called when the table changes state.- Specified by:
onStateChangedin interfaceIVSTableListener- Parameters:
table- The VS table.state- The state change.on- New state.
onSingleSelectionChanged
public void onSingleSelectionChanged(VSTable table, int index)
Called when the single selection changes.- Specified by:
onSingleSelectionChangedin interfaceIVSTableListener- Parameters:
table- The table.index- The row index, -1 if table is unselected.
getMappedVSComponent
public VSComponent getMappedVSComponent()
Gets the main component that is used to map the UI component to the VirtualSpace.- Overrides:
getMappedVSComponentin classUIComp- Returns:
- The VS component, or null for none. Default is to return the VSField of UIComp. Override e.g. for actions.
onRowAdded
public void onRowAdded(VSRow row, int index)
Called when a row is added.- Specified by:
onRowAddedin interfaceIVSTableListener- Parameters:
row- The row.index- The index.
onRowRemoved
public void onRowRemoved(VSRow row, int index)
Called when a row is removed.- Specified by:
onRowRemovedin interfaceIVSTableListener- Parameters:
row- The row.index- The index.
onRowStateChanged
public void onRowStateChanged(VSRow row, IVSComponentState.State state, boolean on)
Called when a row selection state changed.- Specified by:
onRowStateChangedin interfaceIVSTableListener- Parameters:
row- The row.state- The state change.on- New state.
onCellStateChanged
public void onCellStateChanged(VSField cell, IVSComponentState.State state, boolean on)
Called when the cell changes state.- Specified by:
onCellStateChangedin interfaceIVSTableListener- Parameters:
cell- The VS cell.state- The state change.on- New state.
onCellValueChanged
public void onCellValueChanged(VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the cell value is set.- Specified by:
onCellValueChangedin interfaceIVSTableListener- Parameters:
cell- The VS field.value- The value, never null, butvalue.isNull()could be true.trigger- The trigger property that may be null.postProcessing- Post-processing instance.
setFilter
public boolean setFilter(ITableFilter<?,?> filter)
Sets the filter instance.- Parameters:
filter- The instance. Ifnulla default filter instance will be used.- Returns:
- true for changed, false for no change.
getFilter
public ITableFilter<?,?> getFilter()
Gets the filter instance. If no specific filtering is defined, an instance of theis returned.DefaultTableFilter- Returns:
- The filtering instance, never null.
getFilterText
public java.lang.String getFilterText()
Gets the current filter text.- Returns:
- The filter text, or null for no filtering.
setFilterText
public boolean setFilterText(java.lang.String text)
Sets the filter text and refreshes the table if required.- Parameters:
text- The new text for filtering, null or empty string for no filtering.- Returns:
- true for changed, false for no change.
isFilterCaseSensitive
public boolean isFilterCaseSensitive()
Gets the filter flag for case sensitive.- Returns:
- true for case sensitive matching, false for case insensitive (default).
setFilterCaseSensitive
public boolean setFilterCaseSensitive(boolean on)
Sets the filter flag for case sensitive and refreshes the table if required.- Parameters:
on- true for case sensitive filtering, false for case insensitive.- Returns:
- true for changed, false for no change.
getFilterOperation
public ITableFilter.Op getFilterOperation()
Gets the operation for filtering.- Returns:
- The filtering operation.
setFilterOperation
public boolean setFilterOperation(ITableFilter.Op op)
Sets the operation for filtering and refreshes the table if required.- Parameters:
op- The new operation.- Returns:
- true if changed, false otherwise.
- Throws:
java.lang.NullPointerException- ifopis null.
getBestVSFieldValueType
public Value.Type getBestVSFieldValueType(VSRelativeReference<?> reference)
Requests the value type that would best suit the listener.- Specified by:
getBestVSFieldValueTypein interfaceIVSFieldListener- Overrides:
getBestVSFieldValueTypein classUIComp- Parameters:
reference- The VSRelativeReference instance holding the reference.- Returns:
- null if none is available.
onResolved
public void onResolved(VSRelativeReference<?> reference, VSField field)
Called when the property reference has been resolved. UI components use this method to set its state according to the field, this is handled in by theUICompclass.Components must override to provide the implementation for e.g. value contents, styles, etc.
- Specified by:
onResolvedin interfaceIVSFieldListener- Overrides:
onResolvedin classUIComp- Parameters:
reference- The VSRelativeReference instance holding the reference.field- The target reference.
onBroken
public void onBroken(VSRelativeReference<?> reference, VSField field)
Called when the property reference has been broken, i.e. unresolved.- Specified by:
onBrokenin interfaceIVSFieldListener- Overrides:
onBrokenin classUIComp- Parameters:
reference- The VSRelativeReference instance holding the reference.field- The target reference.
onValueChanged
public void onValueChanged(VSField field, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the field value is set.Components must override to provide the implementation when they are not implementing IPlainTextComponent, in this case the default implementation transports the field string value to this text components plain text.
- Specified by:
onValueChangedin interfaceIVSFieldListener- Overrides:
onValueChangedin classUIComp- Parameters:
field- The VS field.value- The value, never null, butvalue.isNull()could be true.trigger- The trigger property that may be null.postProcessing- Post-processing instance.
setContentProvider
public boolean setContentProvider(ITableContentProvider<?,?,?,?> provider)
Sets a custom content provider and initializes it if required.- Parameters:
provider- The content provider, or null for a new instance of a.DefaultTableContentProvider- Returns:
- true for changed, false for no change.
getContentProvider
public ITableContentProvider<?,?,?,?> getContentProvider()
Gets the custom table content provider and initializes it if required.- Returns:
- The custom table content provider, never null.
refreshTable
public void refreshTable(int dirty, java.lang.String reason)Requests a refresh of the entire table.This method is called e.g. when a new column is added to rebuild the table contents. Be careful when calling this method as it may cause a lot of processing at a later stage, triggering new contents to be sent to the client side. The table is not refreshed upon returning from the call, it is done at a later stage.
- Parameters:
dirty- The dirty flags.reason- The reason string for debug purposes.
updateTable
protected void updateTable()
Called to update the table if required with new data. The method does nothing if e.g. a call torefreshTable(int,String)hasn't been called.
onPrepare
protected void onPrepare(ClassReference cr, java.util.List<java.lang.Throwable> errors)
Called to resolve methods for the component from main "onPrepare" once the ClassReference has been found.Components should override this method to load it's required methods.