@Override
    public void setSelectionInterval(int index0, int index1) {
      if (getSelectionMode() == SINGLE_SELECTION) {
        int index = findSelectableIndex(index0, getLeadSelectionIndex());
        if (0 <= index) super.setSelectionInterval(index, index);
        if (index == 0 && !myInitialSelectionSet) {
          myInitialSelectionSet = true;
          fireValueChanged(0, 0); // enforce listeners to be notified about initial selection
        }
      }
      else {
        super.setSelectionInterval(index0, index1); // TODO: support when needed
      }
    }
@Override
    public void setSelectionInterval(int index0, int index1)