Package org.ka2ddo.yaac.gui
Class OutstandingMessageTableModel
java.lang.Object
javax.swing.table.AbstractTableModel
org.ka2ddo.yaac.gui.OutstandingMessageTableModel
- All Implemented Interfaces:
Serializable
,TableModel
,ColumnSizingTableModel
,FastComparableTableModel
,SendableMessageListener
public class OutstandingMessageTableModel
extends AbstractTableModel
implements ColumnSizingTableModel, SendableMessageListener, FastComparableTableModel
This class displays all the outstanding messages that have been transmitted by this YAAC
instance.
- Author:
- Andrew Pavlin, KA2DDO
- See Also:
-
Field Summary
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
-
Method Summary
Modifier and TypeMethodDescriptionint
compareRows
(int rowIndex1, int rowIndex2, int columnIndex) Compare the selected column of the two rows.void
deleteOutgoingMessage
(int index, SendableMessage sendableMessage, boolean isGuiDispatchThread) Report that a message has been deleted from the outgoing retransmitted message list.Class<?>
getColumnClass
(int columnIndex) Returns the Class of the column's values.int
Returns the number of columns in the model.getColumnName
(int column) Returns the name for the column.int
getColumnWidth
(int columnIndex) Specifies the default initial width of a column from this model.static OutstandingMessageTableModel
Get the OutstandingMessageTableModel instance.int
Returns the number of rows in the model.getValueAt
(int rowIndex, int columnIndex) Returns the value for the cell atcolumnIndex
androwIndex
.void
insertOutgoingMessage
(int index, boolean isGuiDispatchThread) Report that a new message has been added to the outgoing retransmitted message list.boolean
isCellEditable
(int rowIndex, int columnIndex) Returns true if the cell atrowIndex
andcolumnIndex
is editable.boolean
isSizeToFit
(int columnIndex) Specifies whether setWidthToFit() should be enabled on this columnstatic void
Display the OutstandingMessage table window.void
updateOutgoingMessage
(int index, boolean isGuiDispatchThread) Report that an existing message has been updated in the outgoing retransmitted message list.Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener, setValueAt
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface javax.swing.table.TableModel
addTableModelListener, removeTableModelListener, setValueAt
-
Method Details
-
getRowCount
public int getRowCount()Returns the number of rows in the model. AJTable
uses this method to determine how many rows it should display. This method should be quick, as it is called frequently during rendering.- Specified by:
getRowCount
in interfaceTableModel
- Returns:
- the number of rows in the model
- See Also:
-
getColumnCount
public int getColumnCount()Returns the number of columns in the model.- Specified by:
getColumnCount
in interfaceTableModel
- Returns:
- the number of columns in the model
- See Also:
-
getColumnName
Returns the name for the column.- Specified by:
getColumnName
in interfaceTableModel
- Overrides:
getColumnName
in classAbstractTableModel
- Parameters:
column
- the column being queried- Returns:
- a string containing the name of
column
-
getColumnClass
Returns the Class of the column's values.- Specified by:
getColumnClass
in interfaceTableModel
- Overrides:
getColumnClass
in classAbstractTableModel
- Parameters:
columnIndex
- the column being queried- Returns:
- the Class
-
getValueAt
Returns the value for the cell atcolumnIndex
androwIndex
.- Specified by:
getValueAt
in interfaceTableModel
- Parameters:
rowIndex
- the row whose value is to be queriedcolumnIndex
- the column whose value is to be queried- Returns:
- the value Object at the specified cell
-
compareRows
public int compareRows(int rowIndex1, int rowIndex2, int columnIndex) Compare the selected column of the two rows.- Specified by:
compareRows
in interfaceFastComparableTableModel
- Parameters:
rowIndex1
- 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 compare- Returns:
- +1 if the 1st row's column is after the 2nd row's column, -1 if before, or 0 if equal precedence
-
isCellEditable
public boolean isCellEditable(int rowIndex, int columnIndex) Returns true if the cell atrowIndex
andcolumnIndex
is editable. Otherwise,setValueAt
on the cell will not change the value of that cell.- Specified by:
isCellEditable
in interfaceTableModel
- Overrides:
isCellEditable
in classAbstractTableModel
- Parameters:
rowIndex
- the row whose value to be queriedcolumnIndex
- the column whose value to be queried- Returns:
- true if the cell is editable
- See Also:
-
getColumnWidth
public int getColumnWidth(int columnIndex) Specifies the default initial width of a column from this model. Should only be queried at table creation time.- Specified by:
getColumnWidth
in interfaceColumnSizingTableModel
- Parameters:
columnIndex
- int index of the model's column whose width should be obtained- Returns:
- the width, in the same units used by the TableColumn class's setWidth() method, or -1 to indicate the width should not be forced
-
isSizeToFit
public boolean isSizeToFit(int columnIndex) Specifies whether setWidthToFit() should be enabled on this column- Specified by:
isSizeToFit
in interfaceColumnSizingTableModel
- Parameters:
columnIndex
- int index of the model's column whose width should be obtained- Returns:
- boolean true if sizeWidthToFit() should be called on this column
-
showOutstandingTable
public static void showOutstandingTable()Display the OutstandingMessage table window. -
getInstance
Get the OutstandingMessageTableModel instance.- Returns:
- singleton OutstandingMessageTableModel
-
insertOutgoingMessage
public void insertOutgoingMessage(int index, boolean isGuiDispatchThread) Report that a new message has been added to the outgoing retransmitted message list.- Specified by:
insertOutgoingMessage
in interfaceSendableMessageListener
- Parameters:
index
- position of message in the list.isGuiDispatchThread
- boolean true if caller is the GUI dispatch thread
-
updateOutgoingMessage
public void updateOutgoingMessage(int index, boolean isGuiDispatchThread) Report that an existing message has been updated in the outgoing retransmitted message list.- Specified by:
updateOutgoingMessage
in interfaceSendableMessageListener
- Parameters:
index
- position of message in the list.isGuiDispatchThread
- boolean true if caller is the GUI dispatch thread
-
deleteOutgoingMessage
public void deleteOutgoingMessage(int index, SendableMessage sendableMessage, boolean isGuiDispatchThread) Report that a message has been deleted from the outgoing retransmitted message list.- Specified by:
deleteOutgoingMessage
in interfaceSendableMessageListener
- Parameters:
index
- position of message in the list.sendableMessage
- the SendableMessage that is being cancelledisGuiDispatchThread
- boolean true if caller is the GUI dispatch thread
-