src/share/classes/javax/swing/table/TableRowSorter.java
Print this page
*** 129,139 ****
*/
public class TableRowSorter<M extends TableModel> extends DefaultRowSorter<M, Integer> {
/**
* Comparator that uses compareTo on the contents.
*/
! private static final Comparator COMPARABLE_COMPARATOR =
new ComparableComparator();
/**
* Underlying model.
*/
--- 129,139 ----
*/
public class TableRowSorter<M extends TableModel> extends DefaultRowSorter<M, Integer> {
/**
* Comparator that uses compareTo on the contents.
*/
! private static final Comparator<?> COMPARABLE_COMPARATOR =
new ComparableComparator();
/**
* Underlying model.
*/
*** 212,226 ****
* <code>Collator.getInstance</code> is returned.
*
* @throws IndexOutOfBoundsException {@inheritDoc}
*/
public Comparator<?> getComparator(int column) {
! Comparator comparator = super.getComparator(column);
if (comparator != null) {
return comparator;
}
! Class columnClass = getModel().getColumnClass(column);
if (columnClass == String.class) {
return Collator.getInstance();
}
if (Comparable.class.isAssignableFrom(columnClass)) {
return COMPARABLE_COMPARATOR;
--- 212,226 ----
* <code>Collator.getInstance</code> is returned.
*
* @throws IndexOutOfBoundsException {@inheritDoc}
*/
public Comparator<?> getComparator(int column) {
! Comparator<?> comparator = super.getComparator(column);
if (comparator != null) {
return comparator;
}
! Class<?> columnClass = getModel().getColumnClass(column);
if (columnClass == String.class) {
return Collator.getInstance();
}
if (Comparable.class.isAssignableFrom(columnClass)) {
return COMPARABLE_COMPARATOR;
*** 232,246 ****
* {@inheritDoc}
*
* @throws IndexOutOfBoundsException {@inheritDoc}
*/
protected boolean useToString(int column) {
! Comparator comparator = super.getComparator(column);
if (comparator != null) {
return false;
}
! Class columnClass = getModel().getColumnClass(column);
if (columnClass == String.class) {
return false;
}
if (Comparable.class.isAssignableFrom(columnClass)) {
return false;
--- 232,246 ----
* {@inheritDoc}
*
* @throws IndexOutOfBoundsException {@inheritDoc}
*/
protected boolean useToString(int column) {
! Comparator<?> comparator = super.getComparator(column);
if (comparator != null) {
return false;
}
! Class<?> columnClass = getModel().getColumnClass(column);
if (columnClass == String.class) {
return false;
}
if (Comparable.class.isAssignableFrom(columnClass)) {
return false;
*** 297,307 ****
return index;
}
}
! private static class ComparableComparator implements Comparator {
@SuppressWarnings("unchecked")
public int compare(Object o1, Object o2) {
return ((Comparable)o1).compareTo(o2);
}
}
--- 297,307 ----
return index;
}
}
! private static class ComparableComparator implements Comparator<Object> {
@SuppressWarnings("unchecked")
public int compare(Object o1, Object o2) {
return ((Comparable)o1).compareTo(o2);
}
}