Class DataCollectionNodeMatrixContainer
java.lang.Object
overit.geocall.platform.ui.UINode
overit.geocall.ui.Component
overit.geocall.ui.Control
overit.geocall.basic.ui.Container
overit.geocallapp.wfm.core.ux.datacollection.node.container.components.matrix.DataCollectionNodeMatrixContainer
- All Implemented Interfaces:
Serializable,overit.geocall.marks.MethodExposer,overit.geocall.marks.NameExposer,Badgeable,Identified,Tool,overit.geocall.ux.configurability.UIConfigurable,overit.geocall.ux.edm.ModelConfigurable
Container that manages the events and UI interactions for a data collection matrix node.
This class handles the display, editing, and manipulation of matrix data including rows,
columns, and headers.
- Since:
- 21.0
- See Also:
- GCApi:
- component
-
Nested Class Summary
Nested classes/interfaces inherited from class overit.geocall.ui.Component
Component.Configurable, Component.ConfigurableAttribute, Component.ConfigurableAttributes, Component.FilterCriteria, Component.Registry -
Field Summary
FieldsModifier and TypeFieldDescriptionMap of column index to column header componentsprotected intstatic final StringParameter name for the number of columns in the matrixstatic final StringPrefix for matrix column identifiersstatic final StringField name for the row identifierprotected PanelDataCollectionNodeColumnsMatrixPanel for editing matrix column valuesprotected PanelDataCollectionNodeMatrixHeadersPanel for editing matrix column headersprotected TableViewFields inherited from class overit.geocall.basic.ui.Container
_rofields, _rules, DALINK_NO, DALINK_YES, DATE_MAX, DATE_MIN, TIME_MAX, TIME_MIN, TYPE_ACTION, TYPE_BOOLEAN, TYPE_DATE, TYPE_DOUBLE, TYPE_DTZ, TYPE_EURO, TYPE_FILE, TYPE_FILES, TYPE_INTEGER, TYPE_LONG, TYPE_LONGARRAY, TYPE_MAP, TYPE_MAXDATE, TYPE_MAXTIME, TYPE_MEASURE, TYPE_MINDATE, TYPE_MINTIME, TYPE_NEWACTION, TYPE_STRING, TYPE_STRINGARRAY, TYPE_SUBSET, TYPE_SUBSETRANGE, TYPE_SUPPORT, TYPE_TIMERANGEFields inherited from class overit.geocall.ui.Control
_blank, _cleaner, _dblink, _enabled, _ro, _title, altEventIconsList, altIcon, ariaDescription, ariaLabel, badge, badgeformat, FILTER_PREFIXES, LABEL_ATTRIBUTE, LABEL_IN_LINE_ATTRIBUTE, STATE_BLANK, STATE_NORMAL, STATE_RO, STATE_ROBLANKFields inherited from class overit.geocall.ui.Component
_basic, _childrenContainers, _currentId, _gridalign, _gridcols, _gridrows, _gridvalign, _iconElement, _id, _keylabel, _label, _layoutName, _name, _parentContainer, _registryName, _shortcut, _tabindex, _transformations, _valuesContainer, aliasField, BR, configHidden, configuredLabel, configuredLabelInLine, defaultHidden, ELEMENT_BR, ELEMENT_NULL, entityContainer, entityName, extendedField, fullHeight, important, labelInLine, layoutLabel, PIXEL_IMG, safeInlineService -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidUpdates the visibility of columns based on the current matrix configuration.protected voidUpdates the column headers in the UI based on the current matrix data.protected voidUpdates the matrix display by refreshing columns, headers, and row data.protected voidUpdates the table view with current row data.protected voidCleans row values that are no longer needed after column changes.Gets the matrix business object, creating it if it doesn't exist.protected voidInitializes the column header components from the registry.protected voidInitializes UI components and matrix data structures.protected voidInitializes the DBView for the matrix table with the required columns.booleanonDeleteRow(UIMessage uim) Handles deleting a row from the matrix.booleanonEditHeader(UIMessage uim) Handles editing the column headers.booleanHandles creating a new row in the matrix.voidInitializes components when the container is opened.booleanonRowClick(UIMessage uim) Handles row click event to edit an existing row.booleanpostEditHeader(List<BODataCollectionNodeMatrixColumnHeader> columnHeaders) Callback after editing headers to update the matrix data.booleanpostEditRow(BODataCollectionNodeMatrixRow matrixRow) Callback after editing a row to update the matrix data.voidsetBoDataCollectionNodeMatrix(BODataCollectionNodeMatrix boDataCollectionNodeMatrix) Sets the matrix business object.protected voidUpdates the UI components to reflect the current matrix state.Methods inherited from class overit.geocall.basic.ui.Container
alert, applyRule, getBASIC, getBLANK, getHtml, getRO, getROField, onClose, onOpenChildContainer, onRestore, onRule, prepareName, rulesNewValues, setROField, setValues, setValuesMethods inherited from class overit.geocall.ui.Control
avoidNull, clean, getBadgeFormat, getBadgeValue, getCleaner, getConfigurableProperties, getDAValues, getDBLINK, getKEYLABEL, getLABEL, getState, getTITLE, getValues, getWM, isEnabled, isEnabledBasedOnFunction, isFunctionEnabled, isImportant, isRoBasedOnFunction, nameWithNoFilterPrefix, setALTEVENTICON, setALTICON, setARIADESCRIPTION, setARIALABEL, setBADGEFORMAT, setBADGEVALUE, setBLANK, setCLEANER, setConfiguredProperty, setDBLINK, setENABLED, setFUNCTION, setModelProperties, setRO, setTitle, setTITLEMethods inherited from class overit.geocall.ui.Component
adapt, ajaxQuery, appendAttribute, buildDisplayScript, buildSetupScript, calcKeyLabel, calcLabel, calcShortcut, canBeConfigured, changed, clearConfiguredProperties, componentIterator, componentSize, connect, containerIterator, createAjaxFrame, deprecate, fillSetupScript, generateFlexableFullHeightContainer, generateId, getBoolean, getBoolean, getChildrenComponents, getChildrenContainers, getDefaultLabel, getDefaultLayoutLabel, getEntityContainer, getEntityName, getFullHeight, getGridAlign, getGridCols, getGridRows, getGridVAlign, getHtmlLabel, getHtmlLabel, getIcon, getId, getIdentity, getint, getLayoutLabel, getLayoutName, getNAME, getParentComponent, getParentContainer, getPublishedChildrenList, getRegistryName, getSHORTCUT, getTabIndex, getTeacher, getValuesContainer, getWindow, initChilds, isActivable, isActive, isAliasField, isConfigHidden, isDefaultHidden, isExtendedField, isLabelInLine, onInit, setActivable, setActive, setAliasField, setBASIC, setConfigHidden, setDEFAULTHIDDEN, setEntityName, setExtendedField, setFULLHEIGHT, setGRIDALIGN, setGRIDCOLS, setGRIDROWS, setGRIDVALIGN, setICON, setIdentity, setIMPORTANT, setLabel, setLABEL, setLABELINLINE, setLAYOUTLABEL, setLAYOUTNAME, setNAME, setREGISTRYNAME, setTooltip, setup, setValuesContainer, stringForJs, tabIndexerMethods inherited from class overit.geocall.platform.ui.UINode
addChild, addChildText, getChildren, getNodeId, getParent, getRoot, getSchema, setNodeId, setParent, setSchemaMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface overit.geocall.ui.Badgeable
badgeFormat, makeBadgedIcon
-
Field Details
-
INPUT_NUM_COLUMNS
Parameter name for the number of columns in the matrix- See Also:
-
MATRIX_COLUMNS_PREFIX
Prefix for matrix column identifiers- See Also:
-
MATRIX_FIELD_ID
Field name for the row identifier- See Also:
-
tvDataCollectionNodeMatrix
-
panelDataCollectionNodeMatrixHeaders
Panel for editing matrix column headers -
panelDataCollectionNodeColumnsMatrix
Panel for editing matrix column values -
columnTableHeaders
Map of column index to column header components -
editRowNum
protected int editRowNum
-
-
Constructor Details
-
DataCollectionNodeMatrixContainer
public DataCollectionNodeMatrixContainer()
-
-
Method Details
-
getBoDataCollectionNodeMatrix
Gets the matrix business object, creating it if it doesn't exist.- Returns:
- The matrix business object
-
setBoDataCollectionNodeMatrix
Sets the matrix business object.- Parameters:
boDataCollectionNodeMatrix- The matrix business object to set
-
onOpen
Initializes components when the container is opened. -
showComponent
protected void showComponent()Updates the UI components to reflect the current matrix state. This includes column visibility, headers, and row data. -
initComponents
protected void initComponents()Initializes UI components and matrix data structures. -
onNewRow
Handles creating a new row in the matrix.- Parameters:
uim- The UI message containing event data- Returns:
- true if the operation was successful
-
onRowClick
Handles row click event to edit an existing row.- Parameters:
uim- The UI message containing event data- Returns:
- true if the operation was successful
-
postEditRow
Callback after editing a row to update the matrix data. Adds a new row or updates an existing one based on the edit state.- Parameters:
matrixRow- The edited row data- Returns:
- true if the operation was successful
-
changeRows
protected void changeRows()Updates the table view with current row data. Clears the view and repopulates it with the current matrix rows. -
onEditHeader
Handles editing the column headers.- Parameters:
uim- The UI message containing event data- Returns:
- true if the operation was successful
-
postEditHeader
Callback after editing headers to update the matrix data.- Parameters:
columnHeaders- The list of edited column headers- Returns:
- true if the operation was successful
-
changeMatrix
protected void changeMatrix()Updates the matrix display by refreshing columns, headers, and row data. -
changeHeader
protected void changeHeader()Updates the column headers in the UI based on the current matrix data. -
onDeleteRow
Handles deleting a row from the matrix.- Parameters:
uim- The UI message containing event data- Returns:
- true if the operation was successful
-
initMatrixDBView
protected void initMatrixDBView()Initializes the DBView for the matrix table with the required columns. -
initColumnTableHeaders
protected void initColumnTableHeaders()Initializes the column header components from the registry. -
changeColumnsVisibility
protected void changeColumnsVisibility()Updates the visibility of columns based on the current matrix configuration. Shows or hides columns depending on the number of columns defined in the matrix. -
cleanRowValues
protected void cleanRowValues()Cleans row values that are no longer needed after column changes. Ensures data consistency when the matrix structure changes.
-