/** * This util calss provides some general RCP methods * * @author Louis */ public class RcpUtils { /** * Add sorter to the specified column, compares using Collator */ public static void addSorter(final Table table, final TableColumn column) { column.addListener(SWT.Selection, new Listener() { boolean isAscend = true; Collator comparator = Collator.getInstance(Locale.getDefault());
public void handleEvent(Event e) { int columnIndex = getColumnIndex(table, column); TableItem[] items = table.getItems();
public static int getColumnIndex(Table table, TableColumn column) { TableColumn[] columns = table.getColumns(); for (int i = 0; i < columns.length; i++) { if (columns[i].equals(column)) return i; } return -1; }
public static String[] getTableItemText(Table table, TableItem item) { int count = table.getColumnCount(); String[] strs = new String[count]; for (int i = 0; i < count; i++) { strs[i] = item.getText(i); } return strs; } }