code: public List<UiListItem> getUiList(Set<ULocale> localeSet, boolean inSelf, Comparator<Object> collator) {
          return getUiListCompareWholeItems(localeSet, UiListItem.getComparator(collator, inSelf));
      }
docs: Return a list of information used to construct a UI list of locale names.
  @param collator how to collate—should normally be Collator.getInstance(getDisplayLocale())
  @param inSelf if true, compares the nameInSelf, otherwise the nameInDisplayLocale.
  Set depending on which field (displayLocale vs self) is to show up in the UI.
  If both are to show up in the UI, then it should be the one used for the primary sort order.
  @param localeSet a list of locales to present in a UI list. The casing uses the settings in the LocaleDisplayNames instance.
  @return an ordered list of UiListItems.
  @throws IllformedLocaleException if any of the locales in localeSet are malformed.