Class PanelDataCollectionNodeMatrixHeaders

All Implemented Interfaces:
Serializable, overit.geocall.marks.MethodExposer, overit.geocall.marks.NameExposer, AjaxableComponent, Badgeable, Hideable, Identified, Tool, overit.geocall.ux.configurability.UIConfigurable, overit.geocall.ux.edm.ModelConfigurable

public class PanelDataCollectionNodeMatrixHeaders extends PanelDataCollectionNodeMatrixBase
Class for matrix-based data collection panels. This panel allows users to define and configure matrix column headers including their descriptions and grouping properties.

The panel supports dynamic addition and removal of columns, with a maximum defined by the parent class. Each column can be configured with a description and marked as a group column.

Since:
21.0
See Also:
GCApi:
controller
  • Field Details

  • Constructor Details

    • PanelDataCollectionNodeMatrixHeaders

      public PanelDataCollectionNodeMatrixHeaders()
  • Method Details

    • initComponents

      protected void initComponents()
      Initializes the panel components. Retrieves and maps column group checkboxes from the window registry.
      Overrides:
      initComponents in class PanelDataCollectionNodeMatrixBase
    • show

      public void show()
      Shows the panel and updates column visibility and values. Populates the form with existing column header descriptions and group settings.
      Overrides:
      show in class PanelDataCollectionNodeMatrixBase
    • hideShowColumns

      protected void hideShowColumns()
      Controls the visibility of column-related components based on the number of visible columns. Hides or shows column header inputs and group checkboxes accordingly.
      Overrides:
      hideShowColumns in class PanelDataCollectionNodeMatrixBase
    • onSave

      public boolean onSave(UIMessage uim)
      Handles the save action for matrix column headers. Creates new column headers based on form values and applies them using the postEditHeader function.
      Parameters:
      uim - The UI message containing event data
      Returns:
      true to break the responsibility chain
    • onRemoveColumn

      public boolean onRemoveColumn(UIMessage uim)
      Handles the remove column action. Decreases the number of visible columns and updates the UI accordingly.
      Parameters:
      uim - The UI message containing event data
      Returns:
      true to break the responsibility chain
    • onAddColumn

      public boolean onAddColumn(UIMessage uim)
      Handles the add column action. Increases the number of visible columns and updates the UI accordingly.
      Parameters:
      uim - The UI message containing event data
      Returns:
      true to break the responsibility chain
    • getPostEditHeader

      Gets the function that processes column headers after editing.
      Returns:
      The post-edit header processing function
    • setPostEditHeader

      public void setPostEditHeader(Function<List<BODataCollectionNodeMatrixColumnHeader>,Boolean> postEditHeader)
      Sets the function that processes column headers after editing.
      Parameters:
      postEditHeader - The function to process headers after editing
    • getFormRegistryName

      protected String getFormRegistryName()
      Gets the form registry name for this panel.
      Specified by:
      getFormRegistryName in class PanelDataCollectionNodeMatrixBase
      Returns:
      The form registry name
    • getInputPrefix

      protected String getInputPrefix()
      Gets the input prefix used for column header fields.
      Specified by:
      getInputPrefix in class PanelDataCollectionNodeMatrixBase
      Returns:
      The input prefix for column headers