Пример #1
0
 /** @param picklistKey */
 public void selectEntryByKey(String picklistKey) {
   if (picklistKey != null) {
     Collection<IPicklistEntry> values = entries.values();
     for (IPicklistEntry pe : values) {
       if (pe.getKey().equals(picklistKey)) {
         selectEntry(pe);
         return;
       }
     }
   }
 }
Пример #2
0
  /**
   * set an internal array for the given list of entries
   *
   * @param lang
   * @param entryList
   */
  protected void setupEntries(String lang, List<IPicklistEntry> entryList) {
    clear();
    this.lang = lang;

    if (null != entryList) {
      entries = new HashMap<Integer, IPicklistEntry>();

      for (IPicklistEntry iPicklistEntry : entryList) {
        IPicklistEntry entry = iPicklistEntry;
        if (!entry.isVeraltet()) {
          entries.put(new Integer(entry.getId()), entry);
          this.picklistKey = entry.getPickliste().getKey();
        }
      }

      // sort the list
      Collections.sort(entryList, comparator);

      // add empty selection
      if (allowEmptySelection) {
        entries.put(new Integer(0), null);
        addElement(emptySelectionText, "0");
      }

      String preSelection = null;

      // add entries into combo
      for (int i = 0; i < entryList.size(); i++) {
        IPicklistEntry entry = entryList.get(i);
        if (!entry.isVeraltet()) {
          addElement(entry.getBezeichnung(lang), Integer.toString(entry.getId()));
        }

        if (i == 0) {
          preSelection = Integer.toString(entry.getId());
        }
      }

      if (allowEmptySelection) {
        setSelectedKey("0");
      } else if (preSelection != null) {
        setSelectedKey(preSelection);
      }
    }
  }
Пример #3
0
  /**
   * @param pEntry
   * @return
   */
  protected String getKey(IPicklistEntry pEntry) {
    String key = null;
    if (null != entries && null != pEntry) {
      boolean found = false;

      int id = pEntry.getId();
      if (entries.containsKey(new Integer(id))) {
        found = true;
        key = Integer.toString(id);
      }

      if (!found && pEntry.isVeraltet()) {
        entries.put(new Integer(id), pEntry);
        addElement("[" + pEntry.getBezeichnung(lang) + "]", Integer.toString(id));
        key = Integer.toString(entries.size() - 1);
      }

    } else {
      if (entries != null && pEntry == null && allowEmptySelection) {
        key = "0";
      }
    }
    return key;
  }