Class CssGridLabelColumnLayoutManager

All Implemented Interfaces:
Serializable, Cloneable, Copyable, DictionaryBean, UifDictionaryBean, LayoutManager, LifecycleElement

public class CssGridLabelColumnLayoutManager extends CssGridLayoutManagerBase
A Css Grid Layout which only takes fields as its content and separates out the field's labels into separate columns

This layout does not use the container's items' colspan property to influence column size.

Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
  • Field Details

    • xsCurrentFieldSize

      protected int xsCurrentFieldSize
    • smCurrentFieldSize

      protected int smCurrentFieldSize
    • mdCurrentFieldSize

      protected int mdCurrentFieldSize
    • lgCurrentFieldSize

      protected int lgCurrentFieldSize
  • Constructor Details

    • CssGridLabelColumnLayoutManager

      public CssGridLabelColumnLayoutManager()
  • Method Details

    • performFinalize

      public void performFinalize(Object model, LifecycleElement component)
      CssGridLabelColumnLayoutManager's performFinalize method calculates and separates the items into rows The last phase before the view is rendered

      Here final preparations can be made based on the updated view state.

      Specified by:
      performFinalize in interface LifecycleElement
      Overrides:
      performFinalize in class LayoutManagerBase
      Parameters:
      model - - top level object containing the data
      component - - parent component
    • calculateCssClassAndSize

      protected void calculateCssClassAndSize(Component item, List<String> cellCssClasses, CssGridSizes defaultSizes, int basicSize)
      Override is used to calculates total field and label size in addition to calculateCssClassAndSize functionality
      Overrides:
      calculateCssClassAndSize in class CssGridLayoutManagerBase
      Parameters:
      item - the item to process classes for
      cellCssClasses - the list of classes to add the new class string to
      defaultSizes - the default fallback sizes to use if items have none
      basicSize - the fallback md size to use if both item and default size have none
      See Also:
    • getLabelColumnCssClass

      public String getLabelColumnCssClass()
      The css class to use on the label column's div "cells"
      Returns:
      the css class to use on label column div "cells"
    • setLabelColumnCssClass

      public void setLabelColumnCssClass(String labelColumnCssClass)
      Parameters:
      labelColumnCssClass - property value
    • getNumberOfLabelColumns

      public int getNumberOfLabelColumns()
      The number of label columns used in this layout

      The only supported values for this property are 1-3 which translates to 2-6 columns per a row. This property defines how many of the total columns are label columns.

      Returns:
      the total number of label columns
    • setNumberOfLabelColumns

      public void setNumberOfLabelColumns(int numberOfLabelColumns)
      Parameters:
      numberOfLabelColumns - property value
    • getLabelColumnSizes

      public CssGridSizes getLabelColumnSizes()
      CssGridSizes that will be used by every label in this layout, unless the label itself has cssGridSizes explicitly set; note that this OVERRIDES any framework automation set by numberOfLabelColumns for label sizes.

      Be careful with the usage of this setting, it's intent is to be set with fieldColumnSizes, or some combination of custom field and label cssGridSizes, or unintended behavior/layout may result. This is an advanced layout configuration setting and requires knowledge of bootstrap css grid layout/behavior.

      Returns:
      the custom labelColumnSizes
    • setLabelColumnSizes

      public void setLabelColumnSizes(CssGridSizes labelColumnSizes)
      See Also:
    • getFieldColumnSizes

      public CssGridSizes getFieldColumnSizes()
      CssGridSizes that will be used by every field in this layout, unless the field itself has cssGridSizes explicitly set; note that this OVERRIDES any framework automation set by numberOfLabelColumns for field sizes.

      Be careful with the usage of this setting, it's intent is to be set with labelColumnSizes, or some combination of custom field and label cssGridSizes, or unintended behavior/layout may result. This is an advanced layout configuration setting and requires knowledge of bootstrap css grid layout/behavior.

      Returns:
    • setFieldColumnSizes

      public void setFieldColumnSizes(CssGridSizes fieldColumnSizes)
      See Also: