/** * Helper method to ask for a property representant of column. * @param Index of a visible column */ Property propertyForColumn(int column) { if (column >= 0) { column = propertyColumns[column]; } return propertyForColumnEx(column); }
private void setSortingColumn(int index) { tableModel.setSortingColumnEx(index); if (index != -1) { getSortedNodeTreeModel().setSortedByProperty( tableModel.propertyForColumnEx(index), !tableModel.isSortOrderDescending() ); treeColumnProperty.setSortingColumn(false); } else { getSortedNodeTreeModel().setSortedByName(true, !treeColumnProperty.isSortOrderDescending()); treeColumnProperty.setSortingColumn(true); } // to change sort icon treeTable.getTableHeader().repaint(); }
/** Set columns. * @param props each column is constructed from Node.Property */ public void setProperties(Property[] props) { tableModel.setProperties(props); treeColumnProperty.setProperty(tableModel.propertyForColumn(-1)); if (treeColumnProperty.isComparable() || tableModel.existsComparableColumn()) { setAllowSortingByColumn(true); if (treeColumnProperty.isSortingColumn()) { getSortedNodeTreeModel().setSortedByName(true, !treeColumnProperty.isSortOrderDescending()); } else { int index = tableModel.getSortingColumn(); if (index != -1) { getSortedNodeTreeModel().setSortedByProperty( tableModel.propertyForColumnEx(index), !tableModel.isSortOrderDescending() ); } } } }