mirror of https://github.com/zlatinb/muwire
different table columns for outgoing folders
parent
c3cd32f9c4
commit
9b7fb00f6e
|
@ -24,6 +24,7 @@ import javax.swing.table.DefaultTableCellRenderer
|
||||||
import java.awt.BorderLayout
|
import java.awt.BorderLayout
|
||||||
import java.awt.event.MouseAdapter
|
import java.awt.event.MouseAdapter
|
||||||
import java.awt.event.MouseEvent
|
import java.awt.event.MouseEvent
|
||||||
|
import java.util.stream.Collectors
|
||||||
|
|
||||||
import static com.muwire.gui.Translator.trans
|
import static com.muwire.gui.Translator.trans
|
||||||
|
|
||||||
|
@ -52,6 +53,7 @@ class MessageFolderView {
|
||||||
splitPane(orientation: JSplitPane.VERTICAL_SPLIT, continuousLayout: true, dividerLocation: 500) {
|
splitPane(orientation: JSplitPane.VERTICAL_SPLIT, continuousLayout: true, dividerLocation: 500) {
|
||||||
scrollPane {
|
scrollPane {
|
||||||
table(id: "message-header-table", autoCreateRowSorter: true, rowHeight: rowHeight) {
|
table(id: "message-header-table", autoCreateRowSorter: true, rowHeight: rowHeight) {
|
||||||
|
if (!model.outgoing) {
|
||||||
tableModel(list: model.messageHeaders) {
|
tableModel(list: model.messageHeaders) {
|
||||||
closureColumn(header: trans("SENDER"), preferredWidth: 200, type: String, read: { it.message.sender.getHumanReadableName() })
|
closureColumn(header: trans("SENDER"), preferredWidth: 200, type: String, read: { it.message.sender.getHumanReadableName() })
|
||||||
closureColumn(header: trans("SUBJECT"), preferredWidth: 300, type: String, read: { it.message.subject })
|
closureColumn(header: trans("SUBJECT"), preferredWidth: 300, type: String, read: { it.message.subject })
|
||||||
|
@ -59,6 +61,15 @@ class MessageFolderView {
|
||||||
closureColumn(header: trans("DATE"), preferredWidth: 50, type: Long, read: { it.message.timestamp })
|
closureColumn(header: trans("DATE"), preferredWidth: 50, type: Long, read: { it.message.timestamp })
|
||||||
closureColumn(header: trans("UNREAD"), preferredWidth: 20, type: Boolean, read: { it.status })
|
closureColumn(header: trans("UNREAD"), preferredWidth: 20, type: Boolean, read: { it.status })
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
tableModel(list : model.messageHeaders) {
|
||||||
|
closureColumn(header: trans("RECIPIENTS"), preferredWidth: 400, type: String, read : {
|
||||||
|
it.message.recipients.stream().map({it.getHumanReadableName()}).collect(Collectors.joining(","))
|
||||||
|
})
|
||||||
|
closureColumn(header: trans("SUBJECT"), preferredWidth: 300, type: String, read: { it.message.subject })
|
||||||
|
closureColumn(header: trans("DATE"), preferredWidth: 50, type: Long, read: { it.message.timestamp })
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
panel {
|
panel {
|
||||||
|
@ -153,8 +164,9 @@ class MessageFolderView {
|
||||||
messageHeaderTable.setDefaultRenderer(Long.class, new DateRenderer())
|
messageHeaderTable.setDefaultRenderer(Long.class, new DateRenderer())
|
||||||
messageHeaderTable.rowSorter.addRowSorterListener({evt -> lastMessageHeaderTableSortEvent = evt})
|
messageHeaderTable.rowSorter.addRowSorterListener({evt -> lastMessageHeaderTableSortEvent = evt})
|
||||||
messageHeaderTable.rowSorter.setSortsOnUpdates(true)
|
messageHeaderTable.rowSorter.setSortsOnUpdates(true)
|
||||||
def sortKey = new RowSorter.SortKey(3, SortOrder.ASCENDING)
|
def sortKey = new RowSorter.SortKey(model.outgoing ? 2 : 3, SortOrder.ASCENDING)
|
||||||
messageHeaderTable.rowSorter.setSortKeys(Collections.singletonList(sortKey))
|
messageHeaderTable.rowSorter.setSortKeys(Collections.singletonList(sortKey))
|
||||||
|
|
||||||
def selectionModel = messageHeaderTable.getSelectionModel()
|
def selectionModel = messageHeaderTable.getSelectionModel()
|
||||||
selectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION)
|
selectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION)
|
||||||
selectionModel.addListSelectionListener({
|
selectionModel.addListSelectionListener({
|
||||||
|
|
Loading…
Reference in New Issue