summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table
diff options
context:
space:
mode:
authorSimon Rettberg2015-08-26 17:04:11 +0200
committerSimon Rettberg2015-08-26 17:04:11 +0200
commitf1dcbcfed3176b08f15f462ffd40015ce0f3b404 (patch)
treeb1437bd2f58b873de44397f0335bb85433df11c4 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table
parent[client] LectureImageListPage user feedback based on his selection (diff)
downloadtutor-module-f1dcbcfed3176b08f15f462ffd40015ce0f3b404.tar.gz
tutor-module-f1dcbcfed3176b08f15f462ffd40015ce0f3b404.tar.xz
tutor-module-f1dcbcfed3176b08f15f462ffd40015ce0f3b404.zip
[client] Fix searching in ImageTable
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java26
1 files changed, 14 insertions, 12 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
index bfd8879e..36c6b18b 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
@@ -22,9 +22,9 @@ public abstract class ListTable<T> extends JTable {
private final static Logger LOGGER = Logger.getLogger(ListTable.class);
- private final ListModel model;
+ private final ListModel<T> model;
- private final TableRowSorter<ListModel> sorter;
+ private final TableRowSorter<ListModel<T>> sorter;
private List<RowSorter.SortKey> sortKeys = new ArrayList<>();
@@ -46,8 +46,8 @@ public abstract class ListTable<T> extends JTable {
public ListTable(String[] columnNames, Class<?>[] columnClasses, Comparator<T> itemComparator) {
super();
- this.model = new ListModel(columnNames, columnClasses);
- this.sorter = new TableRowSorter<ListModel>(model);
+ this.model = new ListModel<T>(this, columnNames, columnClasses);
+ this.sorter = new TableRowSorter<ListModel<T>>(model);
this.adjuster = new TableColumnAdjuster(this, 5);
this.itemComparator = itemComparator;
this.setModel(model);
@@ -131,7 +131,7 @@ public abstract class ListTable<T> extends JTable {
}
@Override
- public TableRowSorter<ListModel> getRowSorter() {
+ public TableRowSorter<ListModel<T>> getRowSorter() {
return sorter;
}
@@ -172,19 +172,21 @@ public abstract class ListTable<T> extends JTable {
/**
* Model for our table
*/
- private class ListModel extends AbstractTableModel {
+ public static class ListModel<T> extends AbstractTableModel {
private final String[] columnNames;
private final Class<?>[] columnClasses;
- protected ArrayList<T> data = null;
+ private ArrayList<T> data = null;
- public ListModel(String[] columnNames, Class<?>[] columnClasses) {
+ private final ListTable<T> table;
+
+ public ListModel(ListTable<T> table, String[] columnNames, Class<?>[] columnClasses) {
if (columnClasses != null && columnClasses.length != columnNames.length)
throw new IllegalArgumentException();
-
+ this.table = table;
this.columnNames = columnNames;
this.columnClasses = columnClasses;
}
@@ -219,9 +221,9 @@ public abstract class ListTable<T> extends JTable {
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
- T item = getModelRow(rowIndex);
- int realColumn = convertColumnIndexToModel(columnIndex);
- return getValueAtInternal(item, realColumn);
+ T item = table.getModelRow(rowIndex);
+ int realColumn = table.convertColumnIndexToModel(columnIndex);
+ return table.getValueAtInternal(item, realColumn);
}
}