Hallo,
Ich möchte meine Spalte sortieren, über die Zellen die in der Spalte sind...
Ich möchte/kann kein ViewSorter benutzen weil ich dort in der compare methode die Objekte bekomme die ich im TableViewer int setInput reinschmeiße... Diese Objekte können bei jedem TableViewer anders sein. Ich wollte eine Sort methode(Spalte) die für alle Tabellen gülitig ist, darum dachte ich ich geh über die TableItems und deren Inhalte und lass danach sortieren. Was auch wunderbar klappt, bis auf das anzeigen. Weiß jemand wie ich dieses Vorhaben umsetzen könnte Oder wie ich die neuen Items anzeigen kann(ohne sie zu disposen weil es kein clone gibt)?
Ich möchte meine Spalte sortieren, über die Zellen die in der Spalte sind...
Ich möchte/kann kein ViewSorter benutzen weil ich dort in der compare methode die Objekte bekomme die ich im TableViewer int setInput reinschmeiße... Diese Objekte können bei jedem TableViewer anders sein. Ich wollte eine Sort methode(Spalte) die für alle Tabellen gülitig ist, darum dachte ich ich geh über die TableItems und deren Inhalte und lass danach sortieren. Was auch wunderbar klappt, bis auf das anzeigen. Weiß jemand wie ich dieses Vorhaben umsetzen könnte Oder wie ich die neuen Items anzeigen kann(ohne sie zu disposen weil es kein clone gibt)?
Code:
private void sort(Event e, Table table)
{
final TableColumn sortColumn = table.getSortColumn();
final TableColumn currentColumn = (TableColumn) e.widget;
int dir = table.getSortDirection();
if (sortColumn == currentColumn)
{
dir = dir == SWT.UP ? SWT.DOWN : SWT.UP;
}
else
{
table.setSortColumn(currentColumn);
dir = SWT.UP;
}
final TableItem[] items = table.getItems();
Arrays.sort(items, new TableSorter(mSortIdentifier, dir, mColumnNumber));
table.setSortDirection(dir);
}