示例#1
0
 public static boolean setComboSelection(Combo combo, String value) {
   if (value == null) {
     return false;
   }
   int count = combo.getItemCount();
   for (int i = 0; i < count; i++) {
     if (value.equals(combo.getItem(i))) {
       combo.select(i);
       return true;
     }
   }
   return false;
 }
  public void populateCustomUIPanel(Shell dialog) {
    ArrayList<String> customNames = new ArrayList<String>();
    for (int i = 0; i < customUIPanels.size(); i++) {
      CustomVfsUiPanel panel = customUIPanels.get(i);
      if (panel.getVfsScheme().equalsIgnoreCase("file")
          || schemeRestrictions == null
          || isRestrictedTo(panel.getVfsScheme())) {
        if (panel.getVfsScheme().equalsIgnoreCase("file") && !showFileScheme) {
          continue;
        }
        customNames.add(panel.getVfsSchemeDisplayText());
      }
    }

    customUIPicker.setItems(customNames.toArray(new String[] {}));
    hideCustomPanelChildren();

    // hide entire panel if no customizations
    if (customNames.size() == 0) {
      customUIPanel.setParent(fakeShell);
    } else {
      if (customNames.size() == 1 && "file".equals(customNames.get(0))) {
        customUIPanel.setParent(fakeShell);
      } else {
        String initialSchemeDisplayText = initialScheme;
        for (int i = 0; i < customUIPanels.size(); i++) {
          if (customUIPanels.get(i).getVfsScheme().equalsIgnoreCase(initialScheme)) {
            initialSchemeDisplayText = customUIPanels.get(i).getVfsSchemeDisplayText();
            break;
          }
        }
        for (int i = 0; i < customUIPicker.getItemCount(); i++) {
          if (customUIPicker.getItem(i).equalsIgnoreCase(initialSchemeDisplayText)) {
            customUIPicker.select(i);
            customUIPicker.notifyListeners(SWT.Selection, null);
          }
        }
      }
    }
  }