/** {@inheritDoc} */ public SortOrder getSortOrder(int columnIndex) { for(int k = 0; k < this.sortKeys.size(); k++) { SortKey s = this.sortKeys.get(k); if(s.getColumn() == columnIndex) return s.getSortOrder(); } return SortOrder.UNSORTED; } }
/** {@inheritDoc} */ public SortOrder getSortOrder(int columnIndex) { for(int k = 0; k < this.sortKeys.size(); k++) { SortKey s = this.sortKeys.get(k); if(s.getColumn() == columnIndex) return s.getSortOrder(); } return SortOrder.UNSORTED; } }
/** * Returns the first SortKey in the list which is sorted. * If none is sorted, null is returned. * * @param keys a list of SortKeys to search * @return the first SortKey which is sorted or null, if no * is found. */ public static SortKey getFirstSortingKey(List<? extends SortKey> keys) { for (SortKey key : keys) { if (key.getSortOrder().isSorted()) { return key; } } return null; }
TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(getModel()) { Map<Integer, SortKey> keys = new HashMap<Integer, SortKey>(); public void toggleSortOrder(int column) { SortKey key = keys.get(column); SortOrder order = null; // Get last sort order. if (key != null) { if (key.getSortOrder() == SortOrder.DESCENDING){ order = SortOrder.ASCENDING; } else { order = SortOrder.DESCENDING; } } else { order = SortOrder.DESCENDING; } keys.put(new SortKey(column, order)); getTableModel().sort(keys); } }; setRowSorter(sorter);
/** {@inheritDoc} */ public void toggleSortOrder(int columnIndex, Comparator comparator) { List<SortKey> newSortKeys = new ArrayList<SortKey>(getSortKeys()); // see if we're already sorting with this column SortOrder columnSortOrder = SortOrder.ASCENDING; for(Iterator<? extends SortKey> s = newSortKeys.iterator(); s.hasNext(); ) { SortKey sortKey = s.next(); if(sortKey.getSortOrder() == SortOrder.UNSORTED) continue; if(sortKey.getColumn() == columnIndex) { columnSortOrder = (sortKey.getSortOrder() == SortOrder.ASCENDING) ? SortOrder.DESCENDING : SortOrder.ASCENDING; s.remove(); break; } } // prepare the new sort order if(!multipleColumnSort) newSortKeys.clear(); newSortKeys.add(new SortKey(columnSortOrder, columnIndex)); // kick off the sort setSortKeys(newSortKeys); }
/** {@inheritDoc} */ public void toggleSortOrder(int columnIndex, Comparator comparator) { List<SortKey> newSortKeys = new ArrayList<SortKey>(getSortKeys()); // see if we're already sorting with this column SortOrder columnSortOrder = SortOrder.ASCENDING; for(Iterator<? extends SortKey> s = newSortKeys.iterator(); s.hasNext(); ) { SortKey sortKey = s.next(); if(sortKey.getSortOrder() == SortOrder.UNSORTED) continue; if(sortKey.getColumn() == columnIndex) { columnSortOrder = (sortKey.getSortOrder() == SortOrder.ASCENDING) ? SortOrder.DESCENDING : SortOrder.ASCENDING; s.remove(); break; } } // prepare the new sort order if(!multipleColumnSort) newSortKeys.clear(); newSortKeys.add(new SortKey(columnSortOrder, columnIndex)); // kick off the sort setSortKeys(newSortKeys); }
protected Icon getIcon(JTable table, int column) { SortKey sortKey = getSortKey(table, column); if (sortKey != null && table.convertColumnIndexToView( sortKey.getColumn()) == column) { switch (sortKey.getSortOrder()) { case ASCENDING: return UIManager.getIcon("Table.ascendingSortIcon"); case DESCENDING: return UIManager.getIcon("Table.descendingSortIcon"); } } return null; }
TableModel tableModel = sorter.getModel(); int n = sorter.getModelRowCount(); final SortOrder sortOrder = sortKey.getSortOrder(); for(int i=0;i<n;i++){ position.put(tableModel.getValueAt(i, column), sorter.convertRowIndexToView(i));
while(it.hasNext()){ SortKey sortKey = it.next(); if(sortKey.getSortOrder().compareTo(SortOrder.UNSORTED)!=0 ){ index[i] = sortKey.getColumn(); i++;
/** * Returns the SortOrder. * * @return the interactive sorter's SortOrder * or SortOrder.UNSORTED */ public SortOrder getSortOrder() { SortController sortController = getSortController(); if (sortController == null) return SortOrder.UNSORTED; SortKey sortKey = SortKey.getFirstSortKeyForColumn(sortController.getSortKeys(), 0); return sortKey != null ? sortKey.getSortOrder() : SortOrder.UNSORTED; }
for(int k = 0; k < this.sortKeys.size(); k++) { SortKey sortKey = this.sortKeys.get(k); if(sortKey.getSortOrder() == SortOrder.UNSORTED) continue; if(sortKey.getSortOrder() == SortOrder.DESCENDING) comparator = GlazedLists.reverseComparator(comparator);
SortKey key = keys.get(0); if (key.getColumn() == table.convertColumnIndexToModel(column)) { return key.getSortOrder();
for(int k = 0; k < this.sortKeys.size(); k++) { SortKey sortKey = this.sortKeys.get(k); if(sortKey.getSortOrder() == SortOrder.UNSORTED) continue; if(sortKey.getSortOrder() == SortOrder.DESCENDING) comparator = GlazedLists.reverseComparator(comparator);
columnToSort = (k.getSortOrder() == SortOrder.ASCENDING ? '+' : '-') + colName; } else { columnToSort = null;
/** * Returns the SortOrder of the given column. * * @param columnIndex the column index in view coordinates. * @return the interactive sorter's SortOrder if matches the column or * SortOrder.UNSORTED */ public SortOrder getSortOrder(int columnIndex) { SortController sortController = getSortController(); if (sortController == null) return SortOrder.UNSORTED; SortKey sortKey = SortKey.getFirstSortKeyForColumn(sortController .getSortKeys(), convertColumnIndexToModel(columnIndex)); return sortKey != null ? sortKey.getSortOrder() : SortOrder.UNSORTED; }
if ((sortKey == null) || (!sortKey.getSortOrder().isSorted())) { throw new IllegalArgumentException("SortKey must not be null with sorted SortOrder"); if (ascending != sortKey.getSortOrder().isAscending()) { forceRefresh = true; ascending = sortKey.getSortOrder().isAscending();
/** * Returns the SortOrder of the given column. * * PENDING: JW - define the behaviour if the identifier is not found. This * can happen if either there's no column at all with the identifier or if * there's no column of type TableColumnExt. Currently returns * SortOrder.UNSORTED. * * @param identifier the column's identifier. * @return the interactive sorter's SortOrder if matches the column or * SortOrder.UNSORTED */ public SortOrder getSortOrder(Object identifier) { SortController sortController = getSortController(); if (sortController == null) return SortOrder.UNSORTED; TableColumnExt columnExt = getColumnExt(identifier); if (columnExt == null) return SortOrder.UNSORTED; int modelIndex = columnExt.getModelIndex(); SortKey sortKey = SortKey.getFirstSortKeyForColumn(sortController .getSortKeys(), modelIndex); return sortKey != null ? sortKey.getSortOrder() : SortOrder.UNSORTED; }
SortKey sortKey = (SortKey) sortKeyObject; if (sortKey.getColumn() == columnIndex) { SortOrder sortOrder = sortKey.getSortOrder(); if (sortOrder == SortOrder.DESCENDING) { result *= -1;