Bug 267242 [JFace] Add API to configure table and tree columns in a keyboard-accessible way
bundles/org.eclipse.jface/src/org/eclipse/jface/internal/ConfigureColumnsDialog.java
result = result && moveable;
			cObjects[i] = new ColumnObject(c, i, getColumnName(c),
					getColumnImage(c), getColumnWidth(c), moveable,
					getResizable(c), true);
		}
		int[] columnOrder = getColumnOrder();
		columnObjects = new ColumnObject[columns.length];
		for (int i = 0; i < columnOrder.length; i++) {
			columnObjects[i] = cObjects[columnOrder[i]];
		}
		return result;
	}
	/**
	 * @param c
	 * @return
	 */
	private Image getColumnImage(Item item) {
		if (item instanceof TableColumn) {
			return ((TableColumn) item).getImage();
		} else if (item instanceof TreeColumn) {
			return ((TreeColumn) item).getImage();
		}
		return null;
	}
	/**
	 * @return
	 */
	private int[] getColumnOrder() {
		if (targetControl instanceof Table) {
			return ((Table) targetControl).getColumnOrder();