Class ListingTextField

Constructor Detail

  • Method Detail

    • createSingleLineTextField

      public static ListingTextField createSingleLineTextField​(FieldFactory factory,
                                                               ProxyObj proxy,
                                                               FieldElement fieldElement,
                                                               int startX,
                                                               int width,
                                                               HighlightProvider provider)
      Creates a new ListingTextField that displays the text on a single line, clipping as needed.
      Parameters:
      factory - the field factory that generated this field
      proxy - the object used to populate this field
      fieldElement - the individual element within the field. This holds text, attributes and location information.
      startX - the starting X position of the field
      width - the width of the field
      provider - the highlight provider.
    • createWordWrappedTextField

      public static ListingTextField createWordWrappedTextField​(FieldFactory factory,
                                                                ProxyObj proxy,
                                                                FieldElement fieldElement,
                                                                int startX,
                                                                int width,
                                                                int maxLines,
                                                                HighlightProvider provider)
      Displays the given text, word-wrapping as needed to avoid clipping (up to the max number of lines.)
      Parameters:
      factory - the field factory that generated this field
      proxy - the object used to populate this field
      fieldElement - the individual element within the field. This holds text, attributes and location information.
      startX - the starting X position of the field
      width - the width of the field
      maxLines - the maxLines to display.
      provider - the highlight provider.
    • createPackedTextField

      public static ListingTextField createPackedTextField​(FieldFactory factory,
                                                           ProxyObj proxy,
                                                           FieldElement[] textElements,
                                                           int startX,
                                                           int width,
                                                           int maxLines,
                                                           HighlightProvider provider)
      Displays the list of text strings, packing as many as it can on a line before wrapping to the next line.
      Parameters:
      factory - the field factory that generated this field
      proxy - the object used to populate this field
      textElements - the array of elements for the field. Each of these holds text, attributes and location information.
      startX - the starting X position of the field
      width - the width of the field
      maxLines - the maxLines to display.
      provider - the highlight provider.
    • createMultilineTextField

      public static ListingTextField createMultilineTextField​(FieldFactory factory,
                                                              ProxyObj proxy,
                                                              FieldElement[] textElements,
                                                              int startX,
                                                              int width,
                                                              int maxLines,
                                                              HighlightProvider provider)
      Displays the given array of text, each on its own line.
      Parameters:
      factory - the field factory that generated this field
      proxy - the object used to populate this field
      textElements - the array of elements for the field. Each of these holds text, attributes and location information.
      startX - the starting X position of the field
      width - the widht of the field
      maxLines - the maxLines to display.
      provider - the highlight provider
    • dataToScreenLocation

      public RowColLocation dataToScreenLocation​(int dataRow,
                                                 int dataColumn)
      Description copied from interface: TextField
      Translates a data row and column into a screen row and column.
      Specified by:
      dataToScreenLocation in interface TextField
      Parameters:
      dataRow - row as defined by the factory
      dataColumn - the character offset into the dataRow
      Returns:
      row and column in the screen coordinate system.
      See Also:
      TextField.dataToScreenLocation(int, int)
    • screenToDataLocation

      public RowColLocation screenToDataLocation​(int screenRow,
                                                 int screenColumn)
      Description copied from interface: TextField
      Translates a screen coordinate to a row and column in the data from the factory
      Specified by:
      screenToDataLocation in interface TextField
      Parameters:
      screenRow - the row in the displayed field text.
      screenColumn - the column in the displayed field text.
      Returns:
      a RowColLocation containing the row and column within the data from the factory.
      See Also:
      TextField.screenToDataLocation(int, int)
    • getWidth

      public int getWidth()
      Description copied from interface: Field
      Returns the current width of this field.
      Specified by:
      getWidth in interface Field
      See Also:
      Field.getWidth()
    • getPreferredWidth

      public int getPreferredWidth()
      Description copied from interface: Field
      The minimum required width to paint the contents of this field
      Specified by:
      getPreferredWidth in interface Field
      Returns:
      the minimum required width to paint the contents of this field
    • getHeight

      public int getHeight()
      Description copied from interface: Field
      Returns the height of this field when populated with the given data.
      Specified by:
      getHeight in interface Field
      See Also:
      Field.getHeight()
    • getStartX

      public int getStartX()
      Description copied from interface: Field
      Returns the horizontal position of this field.
      Specified by:
      getStartX in interface Field
      See Also:
      Field.getStartX()
    • paint

      public void paint​(javax.swing.JComponent c,
                        java.awt.Graphics g,
                        PaintContext context,
                        FieldBackgroundColorManager map,
                        RowColLocation cursorLoc,
                        int rowHeight)
      Description copied from interface: Field
      Paints this field.
      Specified by:
      paint in interface Field
      g - the graphics context.
      context - common paint parameters
      map - contains background color information for the field.
      cursorLoc - the row,column cursor location within the field or null if the field does not contain the cursor
      See Also:
      docking.widgets.fieldpanel.field.Field#paint(java.awt.Graphics, docking.widgets.fieldpanel.internal.PaintContext, boolean, docking.widgets.fieldpanel.support.RowColLocation)
    • contains

      public boolean contains​(int x,
                              int y)
      Description copied from interface: Field
      Returns true if the given point is in this field.
      Specified by:
      contains in interface Field
      Parameters:
      x - the horizontal coordinate of the point.
      y - the relatve y position in this layout
      See Also:
      Field.contains(int, int)
    • getNumRows

      public int getNumRows()
      Description copied from interface: Field
      Returns the number of rows in this field
      Specified by:
      getNumRows in interface Field
      See Also:
      Field.getNumRows()
    • getNumCols

      public int getNumCols​(int row)
      Description copied from interface: Field
      Returns the number of columns in the given row.
      Specified by:
      getNumCols in interface Field
      Parameters:
      row - the row from which to get the number of columns.
      See Also:
      Field.getNumCols(int)
    • getX

      public int getX​(int row,
                      int col)
      Description copied from interface: Field
      Returns the x coordinate for the given cursor position.
      Specified by:
      getX in interface Field
      Parameters:
      row - the text row of interest.
      col - the character column.
      See Also:
      Field.getX(int, int)
    • getY

      public int getY​(int row)
      Description copied from interface: Field
      Returns the y coordinate for the given row.
      Specified by:
      getY in interface Field
      Parameters:
      row - the text row of interest.
      See Also:
      Field.getY(int)
    • getRow

      public int getRow​(int y)
      Description copied from interface: Field
      Returns the row containing the given y coordinate.
      Specified by:
      getRow in interface Field
      Parameters:
      y - vertical pixel coordinate relative to the top of the screen.
      See Also:
      Field.getRow(int)
    • getCol

      public int getCol​(int row,
                        int x)
      Description copied from interface: Field
      Returns the cursor column position for the given x coordinate on the given row.
      Specified by:
      getCol in interface Field
      Parameters:
      row - the text row to find the column on.
      x - the horizontal pixel coordinate for which to find the character position.
      See Also:
      Field.getCol(int, int)
    • isValid

      public boolean isValid​(int row,
                             int col)
      Description copied from interface: Field
      Returns true if the given row and column represent a valid location for this field with the given data;
      Specified by:
      isValid in interface Field
      Parameters:
      row - the text row.
      col - the character position.
      See Also:
      Field.isValid(int, int)
    • getCursorBounds

      public java.awt.Rectangle getCursorBounds​(int row,
                                                int col)
      Description copied from interface: Field
      Returns a bounding rectangle for the cursor at the given position.
      Specified by:
      getCursorBounds in interface Field
      Parameters:
      row - the text row.
      col - the character postion.
      See Also:
      Field.getCursorBounds(int, int)
    • getScrollableUnitIncrement

      public int getScrollableUnitIncrement​(int topOfScreen,
                                            int direction,
                                            int max)
      Description copied from interface: Field
      Returns the amount to scroll to the next or previous line
      Specified by:
      getScrollableUnitIncrement in interface Field
      Parameters:
      topOfScreen - - the current y pos of the top of the screen.
      direction - - the direction of the scroll (1 down, -1 up)
      max - - the maximum amount to scroll for the entire row - will be positive for down, and negative for up)
      See Also:
      Field.getScrollableUnitIncrement(int, int, int)
    • isPrimary

      public boolean isPrimary()
      Description copied from interface: Field
      Returns true if this field is "primary" (the most important) field; used to determine the "primary" line in the layout.
      Specified by:
      isPrimary in interface Field
      See Also:
      Field.isPrimary()
    • rowHeightChanged

      public void rowHeightChanged​(int heightAbove,
                                   int heightBelow)
      Description copied from interface: Field
      notifies field that the rowHeight changed
      Specified by:
      rowHeightChanged in interface Field
      Parameters:
      heightAbove - the height above the baseline
      heightBelow - the height below the baseline.
      See Also:
      Field.rowHeightChanged(int, int)
    • getText

      public java.lang.String getText()
      Description copied from interface: Field
      Returns a string containing all the text in the field.
      Specified by:
      getText in interface Field
      See Also:
      Field.getText()
    • getTextWithLineSeparators

      public java.lang.String getTextWithLineSeparators()
      Description copied from interface: Field
      Returns a string containing all the text in the field with extra linefeeds
      Specified by:
      getTextWithLineSeparators in interface Field
      Returns:
    • textOffsetToScreenLocation

      public RowColLocation textOffsetToScreenLocation​(int textOffset)
      Description copied from interface: Field
      Returns the row, column position for an offset into the string returned by getText().
      Specified by:
      textOffsetToScreenLocation in interface Field
      Parameters:
      textOffset - the offset into the entire text string for this field.
      Returns:
      a RowColLocation that contains the row,column location in the field for a position in the overall field text.
      See Also:
      Field.textOffsetToScreenLocation(int)
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
      See Also:
      Object.toString()
    • getFieldElement

      public FieldElement getFieldElement​(int screenRow,
                                          int screenColumn)
      Description copied from interface: TextField
      Returns the FieldElement at the given screen location.
      Specified by:
      getFieldElement in interface TextField
      Parameters:
      screenRow - the row on the screen
      screenColumn - the column on the screen
      Returns:
      the FieldElement at the given screen location.