Class CheckBoxCellEditor

java.lang.Object
javax.swing.AbstractCellEditor
jmt.framework.gui.table.editors.CheckBoxCellEditor
All Implemented Interfaces:
Serializable, CellEditor, TableCellEditor, TableCellRenderer

public class CheckBoxCellEditor extends AbstractCellEditor implements TableCellEditor, CellEditor, TableCellRenderer

Title: CheckBox Table CellViewer/CellEditor

Description: A component to display a CheckBox as both a viewer and an editor in a table. Internally caches already allocated editors to avoid creation of too many CheckBoxes. Renderer instance is a single element cached too.

See Also:
  • Field Details

  • Constructor Details

    • CheckBoxCellEditor

      protected CheckBoxCellEditor()
      Creates a new CheckBox editor/renderer
  • Method Details

    • getEditorInstance

      public static CheckBoxCellEditor getEditorInstance()
      Returns a new instance of CellEditor that will a CheckBox
      Returns:
      CellEditor created or cached copy
    • getRendererInstance

      public static CheckBoxCellEditor getRendererInstance()
      Returns a new instance of CellRenderer that will display current item in a CheckBox
      Returns:
      cached CellRenderer
    • getCellEditorValue

      public Object getCellEditorValue()
      Returns the value contained in the editor
      Specified by:
      getCellEditorValue in interface CellEditor
      Returns:
      the value contained in the editor
    • getTableCellEditorComponent

      public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)
      Sets an initial value for the editor. This will cause the editor to stopEditing and lose any partially edited value if the editor is editing when this method is called.

      Returns the component that should be added to the client's Component hierarchy. Once installed in the client's hierarchy this component will then be able to draw and receive user input.

      Specified by:
      getTableCellEditorComponent in interface TableCellEditor
      Parameters:
      table - the JTable that is asking the editor to edit; can be null
      value - the value of the cell to be edited; it is up to the specific editor to interpret and draw the value. For example, if value is the string "true", it could be rendered as a string or it could be rendered as a check box that is checked. null is a valid value
      isSelected - true if the cell is to be rendered with highlighting
      row - the row of the cell being edited
      column - the column of the cell being edited
      Returns:
      the component for editing
    • getTableCellRendererComponent

      public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
      Returns the component used for drawing the cell. This method is used to configure the renderer appropriately before drawing.
      Specified by:
      getTableCellRendererComponent in interface TableCellRenderer
      Parameters:
      table - the JTable that is asking the renderer to draw; can be null
      value - the value of the cell to be rendered. It is up to the specific renderer to interpret and draw the value. For example, if value is the string "true", it could be rendered as a string or it could be rendered as a check box that is checked. null is a valid value
      isSelected - true if the cell is to be rendered with the selection highlighted; false otherwise
      hasFocus - if true, render cell appropriately. For example, put a special border on the cell, if the cell can be edited, render in the color used to indicate editing
      row - the row index of the cell being drawn. When drawing the header, the value of row is -1
      column - the column index of the cell being drawn