org.jfree.ui.about

## Class SystemPropertiesTableModel

- java.lang.Object
- - javax.swing.table.AbstractTableModel
  - - org.jfree.ui.SortableTableModel
    - - org.jfree.ui.about.SystemPropertiesTableModel

All Implemented Interfaces:
  java.io.Serializable, javax.swing.table.TableModel

    public class SystemPropertiesTableModel
    extends SortableTableModel

A sortable table model containing the system properties.

Author:
  David Gilbert
See Also:
  Serialized Form

### Nested Class Summary

Nested Classes
`protected static class` `SystemPropertiesTableModel.SystemProperty` Useful class for holding the name and value of a system property.
`protected static class` `SystemPropertiesTableModel.SystemPropertyComparator` A class for comparing SystemProperty objects.

### Field Summary

### Fields inherited from class javax.swing.table.AbstractTableModel

`listenerList`

### Constructor Summary

Constructors
Constructor and Description
`SystemPropertiesTableModel()` Creates a new table model using the properties of the current Java Virtual Machine.

### Method Summary

Methods
`int` `getColumnCount()` Returns the number of columns in the table model.
`java.lang.String` `getColumnName(int column)` Returns the name of the specified column.
`int` `getRowCount()` Returns the number of rows in the table model (that is, the number of system properties).
`java.lang.Object` `getValueAt(int row, int column)` Returns the value at the specified row and column.
`boolean` `isSortable(int column)` Returns true for the first column, and false otherwise - sorting is only allowed on the first column.
`void` `sortByColumn(int column, boolean ascending)` Sorts on the specified column.

### Methods inherited from class org.jfree.ui.SortableTableModel

`getSortingColumn, isAscending, setAscending`

### Methods inherited from class javax.swing.table.AbstractTableModel

`addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### SystemPropertiesTableModel

    public SystemPropertiesTableModel()

Creates a new table model using the properties of the current Java Virtual Machine.

### Method Detail

#### isSortable

    public boolean isSortable(int column)

Returns true for the first column, and false otherwise - sorting is only allowed on the first column.

Overrides:
  `isSortable` in class `SortableTableModel`
Parameters:
  `column` - the column index.
Returns:
  true for column 0, and false for all other columns.

#### getRowCount

    public int getRowCount()

Returns the number of rows in the table model (that is, the number of system properties).

Returns:
  the row count.

#### getColumnCount

    public int getColumnCount()

Returns the number of columns in the table model. In this case, there are two columns: one for the property name, and one for the property value.

Returns:
  the column count (always 2 in this case).

#### getColumnName

    public java.lang.String getColumnName(int column)

Returns the name of the specified column.

Specified by:
  `getColumnName` in interface `javax.swing.table.TableModel`
Overrides:
  `getColumnName` in class `javax.swing.table.AbstractTableModel`
Parameters:
  `column` - the column index.
Returns:
  the column name.

#### getValueAt

    public java.lang.Object getValueAt(int row,
                              int column)

Returns the value at the specified row and column. This method supports the TableModel interface.

Parameters:
  `row` - the row index.
  `column` - the column index.
Returns:
  the value.

#### sortByColumn

    public void sortByColumn(int column,
                    boolean ascending)

Sorts on the specified column.

Overrides:
  `sortByColumn` in class `SortableTableModel`
Parameters:
  `column` - the column index.
  `ascending` - a flag that controls the sort order.