split pane instead of gridlayout
This commit is contained in:
@@ -11,6 +11,7 @@ import javax.swing.JComponent
|
|||||||
import javax.swing.JLabel
|
import javax.swing.JLabel
|
||||||
import javax.swing.JMenuItem
|
import javax.swing.JMenuItem
|
||||||
import javax.swing.JPopupMenu
|
import javax.swing.JPopupMenu
|
||||||
|
import javax.swing.JSplitPane
|
||||||
import javax.swing.JTable
|
import javax.swing.JTable
|
||||||
import javax.swing.ListSelectionModel
|
import javax.swing.ListSelectionModel
|
||||||
import javax.swing.SwingConstants
|
import javax.swing.SwingConstants
|
||||||
@@ -48,39 +49,41 @@ class SearchTabView {
|
|||||||
def resultsTable
|
def resultsTable
|
||||||
def sendersTable
|
def sendersTable
|
||||||
def pane = panel {
|
def pane = panel {
|
||||||
gridLayout(rows : 2, cols: 1)
|
gridLayout(rows :1, cols : 1)
|
||||||
panel {
|
splitPane(orientation: JSplitPane.VERTICAL_SPLIT, continuousLayout : true, dividerLocation: 300 ) {
|
||||||
borderLayout()
|
panel {
|
||||||
scrollPane (constraints : BorderLayout.CENTER) {
|
borderLayout()
|
||||||
sendersTable = table(id : "senders-table", autoCreateRowSorter : true) {
|
scrollPane (constraints : BorderLayout.CENTER) {
|
||||||
tableModel(list : model.senders) {
|
sendersTable = table(id : "senders-table", autoCreateRowSorter : true) {
|
||||||
closureColumn(header : "Sender", preferredWidth : 500, type: String, read : {row -> row.getHumanReadableName()})
|
tableModel(list : model.senders) {
|
||||||
closureColumn(header : "Results", preferredWidth : 20, type: Integer, read : {row -> model.sendersBucket[row].size()})
|
closureColumn(header : "Sender", preferredWidth : 500, type: String, read : {row -> row.getHumanReadableName()})
|
||||||
closureColumn(header : "Trust", preferredWidth : 50, type: String, read : { row ->
|
closureColumn(header : "Results", preferredWidth : 20, type: Integer, read : {row -> model.sendersBucket[row].size()})
|
||||||
model.core.trustService.getLevel(row.destination).toString()
|
closureColumn(header : "Trust", preferredWidth : 50, type: String, read : { row ->
|
||||||
})
|
model.core.trustService.getLevel(row.destination).toString()
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
panel(constraints : BorderLayout.SOUTH) {
|
||||||
panel(constraints : BorderLayout.SOUTH) {
|
button(text : "Trust", enabled: bind {model.trustButtonsEnabled }, trustAction)
|
||||||
button(text : "Trust", enabled: bind {model.trustButtonsEnabled }, trustAction)
|
button(text : "Distrust", enabled : bind {model.trustButtonsEnabled}, distrustAction)
|
||||||
button(text : "Distrust", enabled : bind {model.trustButtonsEnabled}, distrustAction)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
panel {
|
|
||||||
borderLayout()
|
|
||||||
scrollPane (constraints : BorderLayout.CENTER) {
|
|
||||||
resultsTable = table(id : "results-table", autoCreateRowSorter : true) {
|
|
||||||
tableModel(list: model.results) {
|
|
||||||
closureColumn(header: "Name", preferredWidth: 350, type: String, read : {row -> row.name.replace('<','_')})
|
|
||||||
closureColumn(header: "Size", preferredWidth: 20, type: Long, read : {row -> row.size})
|
|
||||||
closureColumn(header: "Direct Sources", preferredWidth: 50, type : Integer, read : { row -> model.hashBucket[row.infohash].size()})
|
|
||||||
closureColumn(header: "Possible Sources", preferredWidth : 50, type : Integer, read : {row -> model.sourcesBucket[row.infohash].size()})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
panel(constraints : BorderLayout.SOUTH) {
|
panel {
|
||||||
button(text : "Download", enabled : bind {model.downloadActionEnabled}, downloadAction)
|
borderLayout()
|
||||||
|
scrollPane (constraints : BorderLayout.CENTER) {
|
||||||
|
resultsTable = table(id : "results-table", autoCreateRowSorter : true) {
|
||||||
|
tableModel(list: model.results) {
|
||||||
|
closureColumn(header: "Name", preferredWidth: 350, type: String, read : {row -> row.name.replace('<','_')})
|
||||||
|
closureColumn(header: "Size", preferredWidth: 20, type: Long, read : {row -> row.size})
|
||||||
|
closureColumn(header: "Direct Sources", preferredWidth: 50, type : Integer, read : { row -> model.hashBucket[row.infohash].size()})
|
||||||
|
closureColumn(header: "Possible Sources", preferredWidth : 50, type : Integer, read : {row -> model.sourcesBucket[row.infohash].size()})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
panel(constraints : BorderLayout.SOUTH) {
|
||||||
|
button(text : "Download", enabled : bind {model.downloadActionEnabled}, downloadAction)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user