// Clear previous selection if SHIFT (add to selection) is not
// pressed. Cannot use "setSelected()" because it will cause a
// fireSelectionChanged event which is unnecessary at this point.
if((mods & MouseEvent.SHIFT_DOWN_MASK) == 0) {
ds.clearSelection();
}
// This will cycle through the available items.
if(firstSelected == null) {
ds.addSelected(firstItem);