|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.swing.table.AbstractTableModel
edu.harvard.deas.hyperenc.gui.MessageTableModel
public class MessageTableModel
A TableModel backed by a MessageStorage object. Displays a list of messages stored in a MessageStorage, one message per row, with selected fields of the message (for example: subject, sender, date) displayed in each of several columns.
TODO document how to use this -- when are update events fired, etc. TODO store all messages and use a filter instead of the ridiculous acrobatics we do now TODO this whole class sucks -- replace with a simpler version (use RowFilter)
Field Summary |
---|
Fields inherited from class javax.swing.table.AbstractTableModel |
---|
listenerList |
Constructor Summary | |
---|---|
MessageTableModel(MessageStorage msgStorage)
TODO document constructor |
Method Summary | |
---|---|
void |
addMessage(GuiMessage gm)
Adds a new GuiMessage to the underlying MessageStorage. |
Class<?> |
getColumnClass(int column)
|
int |
getColumnCount()
|
String |
getColumnName(int column)
|
GuiMessage |
getMessageAtRow(int rowNum)
Returns the GuiMessage represented by the specified row. |
int |
getRowCount()
|
Contact |
getSelectedSender()
Returns the sender for which this model is set to show messages. |
Object |
getValueAt(int rowIndex,
int columnIndex)
|
boolean |
isCellEditable(int row,
int col)
Always returns false ; no cells are editable. |
void |
markRead(int rowNum)
Marks the GuiMessage in the specified row as read. |
void |
markUnread(int rowNum)
Marks the GuiMessage in the specified row as unread. |
void |
removeMessage(int id)
Removes the GuiMessage with the given ID from the underlying MessageStorage. |
GuiMessage |
replaceMessageAtRow(int rowNum,
GuiMessage gm)
Replaces the GuiMessage in row rowNum with gm . |
void |
selectSender(Contact contact)
Sets this model to show only those messages in the HyperStorage from the given sender. |
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 |
Constructor Detail |
---|
public MessageTableModel(MessageStorage msgStorage)
msgStorage
- Method Detail |
---|
public String getColumnName(int column)
getColumnName
in interface TableModel
getColumnName
in class AbstractTableModel
public Class<?> getColumnClass(int column)
getColumnClass
in interface TableModel
getColumnClass
in class AbstractTableModel
public int getColumnCount()
public int getRowCount()
public Object getValueAt(int rowIndex, int columnIndex)
public boolean isCellEditable(int row, int col)
false
; no cells are editable.
isCellEditable
in interface TableModel
isCellEditable
in class AbstractTableModel
false
public void selectSender(Contact contact)
contact
- e-mail contact of the desired senderpublic Contact getSelectedSender()
selectSender(Contact)
public void addMessage(GuiMessage gm)
gm
- the message to addpublic GuiMessage getMessageAtRow(int rowNum)
rowNum
- a row number
public GuiMessage replaceMessageAtRow(int rowNum, GuiMessage gm)
rowNum
with gm
.
rowNum
- the row to place the message ingm
- the new message to insert
public void markRead(int rowNum)
rowNum
- the row to mark readpublic void markUnread(int rowNum)
rowNum
- the row to mark unreadpublic void removeMessage(int id)
id
- the message ID to remove
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |