Esempio n. 1
0
 @Override
 public synchronized void inc(String reason) {
   if (waitCount.size() == 0) {
     StringBuffer reasons = new StringBuffer("<ul>Please Wait...");
     waitCount.add(reason);
     for (String wait : waitCount) {
       reasons.append("<li>" + wait + "</li>");
     }
     reasons.append("</ul>");
     wait.setHTML(reasons.toString());
     wait.setAnimationEnabled(true);
     wait.setModal(true);
     wait.center();
     wait.show();
   }
 }
 public void setDialogTitle(SafeHtml title) {
   dialogBox.setHTML(title);
 }
  @SuppressWarnings("unchecked")
  public void populateFilesList(
      SolutionBrowserPerspective perspective, SolutionTree solutionTree, TreeItem item) {
    filesList.clear();
    ArrayList<Element> files = (ArrayList<Element>) item.getUserObject();
    // let's sort this list based on localized name
    Collections.sort(
        files,
        new Comparator<Element>() {
          public int compare(Element o1, Element o2) {
            String name1 = o1.getAttribute("localized-name"); // $NON-NLS-1$
            String name2 = o2.getAttribute("localized-name"); // $NON-NLS-1$
            return name1.compareTo(name2);
          }
        });
    if (files != null) {
      int rowCounter = 0;
      for (int i = 0; i < files.size(); i++) {
        Element fileElement = files.get(i);
        if ("false".equals(fileElement.getAttribute("isDirectory"))) { // $NON-NLS-1$ //$NON-NLS-2$
          String name = fileElement.getAttribute("name"); // $NON-NLS-1$
          String solution = solutionTree.getSolution();
          String path = solutionTree.getPath();
          String lastModifiedDateStr = fileElement.getAttribute("lastModifiedDate"); // $NON-NLS-1$
          String url = fileElement.getAttribute("url"); // $NON-NLS-1$
          ContentTypePlugin plugin = PluginOptionsHelper.getContentTypePlugin(name);
          String icon = null;
          if (plugin != null) {
            icon = plugin.getFileIcon();
          }
          String localizedName = fileElement.getAttribute("localized-name");
          String description = fileElement.getAttribute("description");
          String tooltip = localizedName;
          if (solutionTree.isUseDescriptionsForTooltip() && !StringUtils.isEmpty(description)) {
            tooltip = description;
          }
          final FileItem fileLabel =
              new FileItem(
                  name,
                  localizedName,
                  tooltip,
                  solution,
                  path, //$NON-NLS-1$
                  lastModifiedDateStr,
                  url,
                  this,
                  PluginOptionsHelper.getEnabledOptions(name),
                  toolbar.getSupportsACLs(),
                  icon);
          // BISERVER-2317: Request for more IDs for Mantle UI elements
          // set element id as the filename
          fileLabel.getElement().setId("file-" + name); // $NON-NLS-1$
          fileLabel.addFileSelectionChangedListener(toolbar);
          fileLabel.setWidth("100%"); // $NON-NLS-1$
          try {
            perspective.getDragController().makeDraggable(fileLabel);
          } catch (Exception e) {
            Throwable throwable = e;
            String text = "Uncaught exception: ";
            while (throwable != null) {
              StackTraceElement[] stackTraceElements = throwable.getStackTrace();
              text += throwable.toString() + "\n";
              for (int ii = 0; ii < stackTraceElements.length; ii++) {
                text += "    at " + stackTraceElements[ii] + "\n";
              }
              throwable = throwable.getCause();
              if (throwable != null) {
                text += "Caused by: ";
              }
            }
            DialogBox dialogBox = new DialogBox(true);
            DOM.setStyleAttribute(dialogBox.getElement(), "backgroundColor", "#ABCDEF");
            System.err.print(text);
            text = text.replaceAll(" ", "&nbsp;");
            dialogBox.setHTML("<pre>" + text + "</pre>");
            dialogBox.center();
          }
          filesList.setWidget(rowCounter++, 0, fileLabel);

          if (selectedFileItem != null
              && selectedFileItem.getFullPath().equals(fileLabel.getFullPath())) {
            fileLabel.setStyleName("fileLabelSelected"); // $NON-NLS-1$
            selectedFileItem = fileLabel;
          } else {
            fileLabel.setStyleName("fileLabel"); // $NON-NLS-1$
          }
        }
      }
    }
  }