mirror of https://github.com/zlatinb/muwire
proper date sorting
parent
f95e9450f3
commit
800dd1cbba
|
@ -65,10 +65,7 @@ class CertificateControlView {
|
||||||
closureColumn(header : "File Name", type : String, read : {it.name.name})
|
closureColumn(header : "File Name", type : String, read : {it.name.name})
|
||||||
closureColumn(header : "Hash", type : String, read : {Base64.encode(it.infoHash.getRoot())})
|
closureColumn(header : "Hash", type : String, read : {Base64.encode(it.infoHash.getRoot())})
|
||||||
closureColumn(header : "Comment", preferredWidth : 20, type : Boolean, read : {it.comment != null})
|
closureColumn(header : "Comment", preferredWidth : 20, type : Boolean, read : {it.comment != null})
|
||||||
closureColumn(header : "Timestamp", type : String, read : {
|
closureColumn(header : "Timestamp", type : Long, read : { it.timestamp })
|
||||||
def date = new Date(it.timestamp)
|
|
||||||
date.toString()
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -113,6 +110,8 @@ class CertificateControlView {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
certsTable.setDefaultRenderer(Long.class, new DateRenderer())
|
||||||
|
|
||||||
dialog.getContentPane().add(panel)
|
dialog.getContentPane().add(panel)
|
||||||
dialog.pack()
|
dialog.pack()
|
||||||
dialog.setLocationRelativeTo(mainFrame)
|
dialog.setLocationRelativeTo(mainFrame)
|
||||||
|
|
|
@ -34,6 +34,7 @@ class SharedFileView {
|
||||||
def dialog
|
def dialog
|
||||||
def panel
|
def panel
|
||||||
def searchersPanel
|
def searchersPanel
|
||||||
|
def searchersTable
|
||||||
def downloadersPanel
|
def downloadersPanel
|
||||||
def certificatesTable
|
def certificatesTable
|
||||||
def certificatesPanel
|
def certificatesPanel
|
||||||
|
@ -48,14 +49,11 @@ class SharedFileView {
|
||||||
searchersPanel = builder.panel {
|
searchersPanel = builder.panel {
|
||||||
borderLayout()
|
borderLayout()
|
||||||
scrollPane(constraints : BorderLayout.CENTER) {
|
scrollPane(constraints : BorderLayout.CENTER) {
|
||||||
table(autoCreateRowSorter : true, rowHeight : rowHeight) {
|
searchersTable = table(autoCreateRowSorter : true, rowHeight : rowHeight) {
|
||||||
tableModel(list : model.searchers) {
|
tableModel(list : model.searchers) {
|
||||||
closureColumn(header : "Searcher", type : String, read : {it.searcher?.getHumanReadableName()})
|
closureColumn(header : "Searcher", type : String, read : {it.searcher?.getHumanReadableName()})
|
||||||
closureColumn(header : "Query", type : String, read : {it.query})
|
closureColumn(header : "Query", type : String, read : {it.query})
|
||||||
closureColumn(header : "Timestamp", type : String, read : {
|
closureColumn(header : "Timestamp", type : Long, read : {it.timestamp})
|
||||||
Date d = new Date(it.timestamp)
|
|
||||||
d.toString()
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -80,10 +78,7 @@ class SharedFileView {
|
||||||
closureColumn(header : "Issuer", type:String, read : {it.issuer.getHumanReadableName()})
|
closureColumn(header : "Issuer", type:String, read : {it.issuer.getHumanReadableName()})
|
||||||
closureColumn(header : "File Name", type : String, read : {it.name.name})
|
closureColumn(header : "File Name", type : String, read : {it.name.name})
|
||||||
closureColumn(header : "Comment", type : Boolean, read : {it.comment != null})
|
closureColumn(header : "Comment", type : Boolean, read : {it.comment != null})
|
||||||
closureColumn(header : "Timestamp", type : String, read : {
|
closureColumn(header : "Timestamp", type : Long, read : {it.timestamp})
|
||||||
Date d = new Date(it.timestamp)
|
|
||||||
d.toString()
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -114,6 +109,11 @@ class SharedFileView {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
certificatesTable.setDefaultRenderer(Long.class, new DateRenderer())
|
||||||
|
|
||||||
|
|
||||||
|
searchersTable.setDefaultRenderer(Long.class, new DateRenderer())
|
||||||
|
|
||||||
def tabbedPane = new JTabbedPane()
|
def tabbedPane = new JTabbedPane()
|
||||||
tabbedPane.addTab("Search Hits", searchersPanel)
|
tabbedPane.addTab("Search Hits", searchersPanel)
|
||||||
tabbedPane.addTab("Downloaders", downloadersPanel)
|
tabbedPane.addTab("Downloaders", downloadersPanel)
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
package com.muwire.gui
|
||||||
|
|
||||||
|
import javax.swing.JComponent
|
||||||
|
import javax.swing.JLabel
|
||||||
|
import javax.swing.JTable
|
||||||
|
import javax.swing.table.DefaultTableCellRenderer
|
||||||
|
|
||||||
|
import net.i2p.data.DataHelper
|
||||||
|
|
||||||
|
class DateRenderer extends DefaultTableCellRenderer {
|
||||||
|
DateRenderer(){
|
||||||
|
setHorizontalAlignment(JLabel.CENTER)
|
||||||
|
}
|
||||||
|
|
||||||
|
JComponent getTableCellRendererComponent(JTable table, Object value,
|
||||||
|
boolean isSelected, boolean hasFocus, int row, int column) {
|
||||||
|
Long l = (Long) value
|
||||||
|
String formatted = DataHelper.formatTime(l)
|
||||||
|
setText(formatted)
|
||||||
|
if (isSelected) {
|
||||||
|
setForeground(table.getSelectionForeground())
|
||||||
|
setBackground(table.getSelectionBackground())
|
||||||
|
} else {
|
||||||
|
setForeground(table.getForeground())
|
||||||
|
setBackground(table.getBackground())
|
||||||
|
}
|
||||||
|
this
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue