Class TableRolloverController<T extends JTable>

java.lang.Object
org.jdesktop.swingx.rollover.RolloverController<T>
org.jdesktop.swingx.rollover.TableRolloverController<T>
All Implemented Interfaces:
PropertyChangeListener, EventListener

public class TableRolloverController<T extends JTable> extends RolloverController<T>
listens to rollover properties. Repaints effected component regions. Updates link cursor.
  • Field Details

    • oldCursor

      private Cursor oldCursor
  • Constructor Details

    • TableRolloverController

      public TableRolloverController()
  • Method Details

    • rollover

      protected void rollover(Point oldLocation, Point newLocation)
      Description copied from class: RolloverController
      called on change of client property Rollover_Key.
      Specified by:
      rollover in class RolloverController<T extends JTable>
      Parameters:
      oldLocation - the old value of the rollover location.
      newLocation - the new value of the rollover location.
    • getPaintRectangles

      private List<Rectangle> getPaintRectangles(List<Rectangle> rectangles, Point cellLocation, boolean paintRow, boolean paintColumn)
      Parameters:
      rectangles - List of rectangles to paint, maybe null
      cellLocation - the location of the cell, guaranteed to be not null
      paintRow - boolean indicating whether the row should be painted
      paintColumn - boolean indicating whether the column should be painted
      Returns:
      list of rectangles to paint, maybe null
    • hasColumn

      private boolean hasColumn(Point cellLocation)
      Parameters:
      cellLocation - the cell location to check, may be null
      Returns:
      a boolean indicating whether the given cellLocation has a column to paint
    • hasRow

      private boolean hasRow(Point cellLocation)
      Parameters:
      cellLocation - the cell location to check, may be null
      Returns:
      a boolean indicating whether the given cellLocation has a row to paint
    • isClickable

      protected boolean isClickable(Point location)
      overridden to return false if cell editable.
      Overrides:
      isClickable in class RolloverController<T extends JTable>
      Parameters:
      location - in cell coordinates, p.x == column, p.y == row.
      Returns:
      true if the cell at the given location is clickable
      See Also:
    • getRolloverRenderer

      protected RolloverRenderer getRolloverRenderer(Point location, boolean prepare)
      Description copied from class: RolloverController
      Returns the rolloverRenderer at the given location.

      The result may be null if there is none or if rollover is not enabled. If the prepare flag is true, the renderer will be prepared with value and state as appropriate for the given location. Note: PRE - the location must be valid in cell coordinate space.

      Specified by:
      getRolloverRenderer in class RolloverController<T extends JTable>
      Parameters:
      location - a valid location in cell coordinates, p.x == column, p.y == row.
      prepare -
      Returns:
      RolloverRenderer at the given location
    • setRolloverCursor

      private void setRolloverCursor(Point location)
    • getFocusedCell

      protected Point getFocusedCell()
      Description copied from class: RolloverController
      The coordinates of the focused cell in view coordinates. This method is called if the click action is invoked by a keyStroke. The returned cell coordinates should be related to what is typically interpreted as "focused" in the context of the component. p.x == focused column, p.y == focused row. A null return value or any coordinate value of invalid input: '<' 0 is interpreted as "outside".
      Specified by:
      getFocusedCell in class RolloverController<T extends JTable>
      Returns:
      the location of the focused cell.