Collections.sort(listOfTracks, comparator);
  private void load() {    // Sort first    Collections.sort(listOfTracks, comparator);        System.out.println("TrackTable: Resizing"); //$NON-NLS-1$    // Update the list of tracks    int size = listOfTracks.size();    while (table.getItemCount() > size)      table.remove(table.getItemCount() - 1);    while (table.getItemCount() < size)      new TableItem(table, SWT.NONE);          System.out.println("TrackTable: Updating"); //$NON-NLS-1$    // Update the table        int i = 0;    hashByTrack = new Hashtable();    hashByTableItem = new Hashtable();    for (Iterator itr = listOfTracks.iterator(); itr.hasNext(); i++) {      TableItem tableItem = table.getItem(i);      Track track = (Track) itr.next();      updateTableItem(tableItem, track);      hashByTrack.put(track, tableItem);      hashByTableItem.put(tableItem, track);    }        System.out.println("TrackTable: Done"); //$NON-NLS-1$    // Make sure the correct track is selected    if (selected != null)      select(selected);  }