forked from LupusNobilis/java-org.hwo.ui
TableMapper sortierung optional
parent
0c72517c3c
commit
82124f8e9e
|
@ -25,6 +25,7 @@ import javax.swing.JFrame;
|
||||||
import javax.swing.JTable;
|
import javax.swing.JTable;
|
||||||
import javax.swing.event.ListSelectionListener;
|
import javax.swing.event.ListSelectionListener;
|
||||||
import javax.swing.table.AbstractTableModel;
|
import javax.swing.table.AbstractTableModel;
|
||||||
|
import javax.swing.table.TableRowSorter;
|
||||||
|
|
||||||
import org.hwo.csv.CSV;
|
import org.hwo.csv.CSV;
|
||||||
import org.hwo.csv.CSVRecord;
|
import org.hwo.csv.CSVRecord;
|
||||||
|
@ -272,6 +273,7 @@ public class TableMapper extends AbstractTableModel
|
||||||
private MouseAdapter mouseAdapter;
|
private MouseAdapter mouseAdapter;
|
||||||
|
|
||||||
private boolean editorEnabled;
|
private boolean editorEnabled;
|
||||||
|
private boolean sortingEnabled;
|
||||||
|
|
||||||
private LinkedList<TableMapperListener> tableMapperListeners;
|
private LinkedList<TableMapperListener> tableMapperListeners;
|
||||||
|
|
||||||
|
@ -310,7 +312,8 @@ public class TableMapper extends AbstractTableModel
|
||||||
table.setModel(this);
|
table.setModel(this);
|
||||||
table.setColumnModel(new TableMapperColumnModel(this));
|
table.setColumnModel(new TableMapperColumnModel(this));
|
||||||
|
|
||||||
table.setAutoCreateRowSorter(true);
|
table.setAutoCreateRowSorter(false);
|
||||||
|
setSortingEnabled(true);
|
||||||
|
|
||||||
mouseAdapter = new MouseAdapter() {
|
mouseAdapter = new MouseAdapter() {
|
||||||
|
|
||||||
|
@ -364,6 +367,23 @@ public class TableMapper extends AbstractTableModel
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void initializeJTable(){
|
||||||
|
if (sortingEnabled){
|
||||||
|
this.jTable.setRowSorter(new TableRowSorter<TableMapper>(this));
|
||||||
|
} else {
|
||||||
|
this.jTable.setRowSorter(null);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isSortingEnabled() {
|
||||||
|
return sortingEnabled;
|
||||||
|
}
|
||||||
|
public void setSortingEnabled(boolean sortingEnabled) {
|
||||||
|
this.sortingEnabled = sortingEnabled;
|
||||||
|
initializeJTable();
|
||||||
|
}
|
||||||
|
|
||||||
public void addListSelectionListener(ListSelectionListener listener)
|
public void addListSelectionListener(ListSelectionListener listener)
|
||||||
{
|
{
|
||||||
jTable.getSelectionModel().addListSelectionListener(listener);
|
jTable.getSelectionModel().addListSelectionListener(listener);
|
||||||
|
@ -727,6 +747,10 @@ public class TableMapper extends AbstractTableModel
|
||||||
return this.p_columns.get(columnIndex).getLabel();
|
return this.p_columns.get(columnIndex).getLabel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public <T> T getSelectedRow(Class<T> c){
|
||||||
|
return (T)getSelectedRow();
|
||||||
|
}
|
||||||
|
|
||||||
public Object getSelectedRow()
|
public Object getSelectedRow()
|
||||||
{
|
{
|
||||||
if (jTable.getSelectedRow()!=-1)
|
if (jTable.getSelectedRow()!=-1)
|
||||||
|
|
Loading…
Reference in New Issue