On 22/04/2013 10:44, Henry wrote:
I got these code:
///****************************/////////////
      ListHandler<List<String>> columnSortHandler = new 
ListHandler<List<String>>(
                     list);
             columnSortHandler.setComparator(nameColumn,
                     new Comparator<List<String>>() {
                       public int compare(List<String> o1, List<String> o2) {
                         if (o1 == o2) {
                           return 0;
                         }

                         // Compare the name columns.
                         if (o1 != null) {
                           return (o2 != null) ? o1.get(0).compareTo(o2.get(0)) 
: 1;
                         }
                         return -1;
                       }
                     });

                 table.addColumnSortHandler(columnSortHandler);

///****************************/////////////
[...]
Is there anything wrong with the code above?

public int compare(List<String> o1, List<String> o2) {
    return o1.get(0).compareTo(o2.get(0));
}

But in this case, the default comparator provided by GWT will do the same job.
I did that for a numerical comparison of values with units, for example:

@Override
public int compare(List<String> o1, List<String> o2)
{
    String v1 = o1.get(columnIndex);
    String v2 = o2.get(columnIndex);
    double d1 = DataService.parseValue(v1);
    double d2 = DataService.parseValue(v2);
    if (d1 == 0 && d2 == 0)
        return v1.compareTo(v2); // String comparison
    return Double.compare(d1, d2);
}

The DataService.parseValue() parses the double at the start of the string, stopping on the unit symbol.
The columnIndex is a member of my Comparator, since we do the same sorting for 
all columns.

--
Philippe Lhoste
--  (near) Paris -- France
--  http://Phi.Lho.free.fr
--  --  --  --  --  --  --  --  --  --  --  --  --  --

--
You received this message because you are subscribed to the Google Groups "Google 
Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to