public class BulletinBoard extends javax.swing.table.AbstractTableModel implements ColumnSizingTableModel, FontChangeListener, FastComparableTableModel, ClearableTableModel, TrackerListener
ClearableTableModel.ClearType| Modifier and Type | Field and Description |
|---|---|
static java.util.List<javax.swing.RowSorter.SortKey> |
DEFAULT_SORT_KEYS
Default sort order for Bulletin Board table.
|
| Modifier and Type | Method and Description |
|---|---|
int |
compareRows(int rowIndex1,
int rowIndex2,
int columnIndex)
Compare the selected column of the two rows.
|
int |
deleteAllRows(ClearableTableModel.ClearType clearType)
Delete all rows from this table.
|
void |
fontChanged(java.lang.String category,
java.awt.Font newFont)
Report that the font choice for the specified category has changed.
|
java.lang.Class<?> |
getColumnClass(int columnIndex)
Returns the data Class for the specified column.
|
int |
getColumnCount()
Returns the number of columns in the model.
|
java.lang.String |
getColumnName(int column)
Returns the localized name for the column.
|
int |
getColumnWidth(int columnIndex)
Specifies the default initial width of a column from this model.
|
static BulletinBoard |
getInstance()
Get the BulletinBoard model instance.
|
java.lang.String |
getRecordTypeTag()
Get a tag that can be given to the
Localizer to return the
term for the records to be or that have been deleted. |
int |
getRowCount()
Returns the number of rows in the model.
|
java.lang.Object |
getValueAt(int rowIndex,
int columnIndex)
Returns the value for the cell at
columnIndex and
rowIndex. |
boolean |
isCellEditable(int rowIndex,
int columnIndex) |
boolean |
isSizeToFit(int columnIndex)
Specifies whether setWidthToFit() should be enabled on this column
|
void |
messageAdded(StationState ss,
int index,
AX25Message msg)
Called when a AX25Message is added to the history for a station in the tracker.
|
void |
messageDeleted(StationState ss,
int index,
AX25Message msg)
Called when a AX25Message is deleted from the history for a station in the tracker.
|
static void |
showBulletinBoard()
Display the BulletinBoard window.
|
void |
stationAdded(StationState ss,
int index)
Called when a new station is initially added to the tracker.
|
void |
stationDeleted(StationState ss,
int index)
Called when an existing station is deleted from the tracker.
|
void |
stationUpdated(StationState ss)
Called when an existing station is updated with new information in the tracker.
|
boolean |
tableCanContainPlayback()
Identifies whether this table can contain playback (historical) data.
|
boolean |
tableCanContainRealtime()
Identifies whether this table can contain realtime data.
|
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener, setValueAtpublic static final java.util.List<javax.swing.RowSorter.SortKey> DEFAULT_SORT_KEYS
public static BulletinBoard getInstance()
public static void showBulletinBoard()
public void messageAdded(StationState ss, int index, AX25Message msg)
messageAdded in interface TrackerListenerss - StationState containing the station's informationindex - zero-based index of the message added to the StationState objectmsg - APRS Message object being added to the tracker; note that non-APRS packets
that can still be decoded (such as OpenTRAC) will also be passed
here; AX25Frames that cannot be decoded will pass null herepublic void stationAdded(StationState ss, int index)
stationAdded in interface TrackerListenerss - StationState containing the station's information; the initial AX25Message
will not yet be stored within the StationState objectindex - zero-based integer sequence number for this station in the StationTrackerpublic void stationUpdated(StationState ss)
stationUpdated in interface TrackerListenerss - StationState containing the station's informationpublic void stationDeleted(StationState ss, int index)
stationDeleted in interface TrackerListenerss - StationState containing the station's informationindex - zero-based integer sequence number for this station in the StationTrackerpublic void messageDeleted(StationState ss, int index, AX25Message msg)
messageDeleted in interface TrackerListenerss - StationState containing the station's information; the AX25Message
will already be removed from the StationState objectindex - zero-based index of the message removed from the StationState objectmsg - APRS Message object being removed from the tracker; note that non-APRS packets
that can still be decoded (such as OpenTRAC) will also be passed
here; AX25Frames that cannot be decoded will pass null herepublic int getRowCount()
JTable uses this method to determine how many rows it
should display. This method should be quick, as it
is called frequently during rendering.getRowCount in interface javax.swing.table.TableModelgetColumnCount()public int getColumnCount()
getColumnCount in interface javax.swing.table.TableModelgetRowCount()public java.lang.String getColumnName(int column)
getColumnName in interface javax.swing.table.TableModelgetColumnName in class javax.swing.table.AbstractTableModelcolumn - the column being queriedcolumnpublic java.lang.Class<?> getColumnClass(int columnIndex)
getColumnClass in interface javax.swing.table.TableModelgetColumnClass in class javax.swing.table.AbstractTableModelcolumnIndex - the column being queriedpublic boolean isCellEditable(int rowIndex,
int columnIndex)
isCellEditable in interface javax.swing.table.TableModelisCellEditable in class javax.swing.table.AbstractTableModelpublic java.lang.Object getValueAt(int rowIndex,
int columnIndex)
columnIndex and
rowIndex.getValueAt in interface javax.swing.table.TableModelrowIndex - the row whose value is to be queriedcolumnIndex - the column whose value is to be queriedpublic int getColumnWidth(int columnIndex)
getColumnWidth in interface ColumnSizingTableModelcolumnIndex - int index of the model's column whose width should be obtainedpublic boolean isSizeToFit(int columnIndex)
isSizeToFit in interface ColumnSizingTableModelcolumnIndex - int index of the model's column whose width should be obtainedpublic int compareRows(int rowIndex1,
int rowIndex2,
int columnIndex)
compareRows in interface FastComparableTableModelrowIndex1 - zero-based model row index of first row to comparerowIndex2 - zero-based model row index of second row to comparecolumnIndex - zero-based model column index of column to comparepublic void fontChanged(java.lang.String category,
java.awt.Font newFont)
fontChanged in interface FontChangeListenercategory - String font family name (as defined by Font class)newFont - actual font instancepublic int deleteAllRows(ClearableTableModel.ClearType clearType)
deleteAllRows in interface ClearableTableModelclearType - type of records to deletepublic boolean tableCanContainPlayback()
tableCanContainPlayback in interface ClearableTableModelpublic boolean tableCanContainRealtime()
tableCanContainRealtime in interface ClearableTableModelpublic java.lang.String getRecordTypeTag()
Localizer to return the
term for the records to be or that have been deleted. Should translate
to a plural term, i.e., "messages" rather than "message".getRecordTypeTag in interface ClearableTableModel