Class CompositeFieldElement

java.lang.Object
docking.widgets.fieldpanel.field.CompositeFieldElement
All Implemented Interfaces:
FieldElement

public class CompositeFieldElement extends Object implements FieldElement
A FieldElement that is composed of other FieldElements. The elements are laid out horizontally.
  • Constructor Details

    • CompositeFieldElement

      public CompositeFieldElement(List<? extends FieldElement> elements)
    • CompositeFieldElement

      public CompositeFieldElement(FieldElement[] fieldElements)
  • Method Details

    • getMaxCharactersForWidth

      public int getMaxCharactersForWidth(int width)
      Description copied from interface: FieldElement
      As the name implies, this method returns the maximum number of characters from this field element that will fit within the given width.
      Specified by:
      getMaxCharactersForWidth in interface FieldElement
      Parameters:
      width - The width constraint
      Returns:
      the maximum number of characters from this field element that will fit within the given width.
    • getColor

      public Color getColor(int index)
      Description copied from interface: FieldElement
      Returns the color for a given character within this element, since different colors may be applied to different characters.
      Specified by:
      getColor in interface FieldElement
      Parameters:
      index - The character index
      Returns:
      the color for a given character within this element.
    • charAt

      public char charAt(int index)
      Description copied from interface: FieldElement
      Returns the character at the given index.
      Specified by:
      charAt in interface FieldElement
      Parameters:
      index - the index of the character in this field element.
      Returns:
      the character at the given index.
    • getHeightAbove

      public int getHeightAbove()
      Description copied from interface: FieldElement
      Returns the amount of height above the baseline of this element.
      Specified by:
      getHeightAbove in interface FieldElement
      Returns:
      the amount of height above the baseline of this element.
    • getHeightBelow

      public int getHeightBelow()
      Description copied from interface: FieldElement
      Returns the amount of height below the baseline of this element.
      Specified by:
      getHeightBelow in interface FieldElement
      Returns:
      the amount of height below the baseline of this element.
    • replaceAll

      public FieldElement replaceAll(char[] targets, char repacement)
      Description copied from interface: FieldElement
      Returns a new FieldElement with all occurrences of the target characters replaced with the given replacement character.
      Specified by:
      replaceAll in interface FieldElement
      Parameters:
      targets - The array of characters to replace.
      repacement - The replacement character.
      Returns:
      a new FieldElement with all occurrences of the target characters replaced with the given replacement character.
    • substring

      public FieldElement substring(int start)
      Description copied from interface: FieldElement
      Returns a new FieldElement containing just the characters beginning at the given index.
      Specified by:
      substring in interface FieldElement
      Parameters:
      start - The starting index (inclusive) from which to substring this element.
      Returns:
      a new FieldElement containing just the characters beginning at the given index.
    • substring

      public FieldElement substring(int start, int end)
      Description copied from interface: FieldElement
      Returns a new FieldElement containing just the characters beginning at the given start index (inclusive) and ending at the given end index (exclusive).
      Specified by:
      substring in interface FieldElement
      Parameters:
      start - The starting index (inclusive) from which to substring this element.
      end - The end index (exclusive) to which the substring will be performed.
      Returns:
      a new FieldElement containing just the characters beginning at the given index.
    • getFieldElement

      public FieldElement getFieldElement(int column)
      Description copied from interface: FieldElement
      Returns the inner-most FieldElement inside this field element at the given location
      Specified by:
      getFieldElement in interface FieldElement
      Parameters:
      column - the character offset.
      Returns:
      the inner-most FieldElement inside this field element at the given location
    • length

      public int length()
      Description copied from interface: FieldElement
      Returns the length of the text within this element. This is a convenience method for calling getText().length().
      Specified by:
      length in interface FieldElement
      Returns:
      the length of the text within this element.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getStringWidth

      public int getStringWidth()
      Description copied from interface: FieldElement
      Returns the string width of this element. The width is based upon the associated FontMetrics object within this element.
      Specified by:
      getStringWidth in interface FieldElement
      Returns:
      the string width of this element.
    • getText

      public String getText()
      Description copied from interface: FieldElement
      Returns the text contained by this field element.
      Specified by:
      getText in interface FieldElement
      Returns:
      the text contained by this field element.
    • paint

      public void paint(JComponent c, Graphics g, int x, int y)
      Description copied from interface: FieldElement
      Paints the text contained in this field element at the given x,y screen coordinate using the given Graphics object.
      Specified by:
      paint in interface FieldElement
      Parameters:
      c - the component being painted.
      g - the Graphics object used to paint the field text.
      x - the horizontal screen position to paint
      y - the vertical screen position to paint.
    • getNumElements

      public int getNumElements()
      Returns the number of sub-elements contained in this field
      Returns:
      the number of sub-elements contained in this field
    • getFieldElementByIndex NEW

      protected FieldElement getFieldElementByIndex(int index)
    • getDataLocationForCharacterIndex

      public RowColLocation getDataLocationForCharacterIndex(int characterIndex)
      Description copied from interface: FieldElement
      Translates the given character index to a data location related to the data model, as determined by the FieldFactory.
      Specified by:
      getDataLocationForCharacterIndex in interface FieldElement
      Parameters:
      characterIndex - The character index to translate.
      Returns:
      The data location in the model coordinates.
    • getCharacterIndexForDataLocation

      public int getCharacterIndexForDataLocation(int dataRow, int dataColumn)
      Description copied from interface: FieldElement
      Returns the character index appropriate for the given data location
      Specified by:
      getCharacterIndexForDataLocation in interface FieldElement
      Parameters:
      dataRow - the row in the data model as determined by the creating field factory.
      dataColumn - the column in the data model as determined by the creating field factory.
      Returns:
      the character index appropriate for the given data location; -1 if this field does not contain the given location