Example #1
0
 /**
  * Sets the font level.
  *
  * @param level the desired font level
  */
 protected void setFontLevel(int level) {
   FontSizer.setFonts(this, level);
   // set cell height of collectionList
   Font font = collectionList.getFont();
   font = FontSizer.getResizedFont(font, level);
   int space = 8 + level;
   collectionList.setFixedCellHeight(font.getSize() + space);
   resizeLabels();
 }
Example #2
0
  protected void refreshCacheTab() {
    // refresh list of cache hosts
    cacheBox.removeAll();
    ArrayList<JLabel> labels = new ArrayList<JLabel>();
    File cache = ResourceLoader.getOSPCache();
    File[] hosts = cache == null ? new File[0] : cache.listFiles(ResourceLoader.OSP_CACHE_FILTER);
    clearCacheButton.setEnabled(hosts.length > 0);

    if (hosts.length == 0) {
      JLabel label = new JLabel(ToolsRes.getString("LibraryManager.Cache.IsEmpty")); // $NON-NLS-1$
      label.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0));
      Box box = Box.createHorizontalBox();
      box.add(label);
      box.add(Box.createHorizontalGlue());
      cacheBox.add(box);
      return;
    }

    for (File hostFile : hosts) {
      // eliminate the "osp-" that starts all cache host filenames
      String hostText = hostFile.getName().substring(4).replace('_', '.');
      long bytes = getFileSize(hostFile);
      long size = bytes / (1024 * 1024);
      if (bytes > 0) {
        if (size > 0) hostText += " (" + size + " MB)"; // $NON-NLS-1$ //$NON-NLS-2$
        else hostText += " (" + bytes / 1024 + " kB)"; // $NON-NLS-1$ //$NON-NLS-2$
      }
      JLabel label = new JLabel(hostText);
      label.setToolTipText(hostFile.getAbsolutePath());
      labels.add(label);

      ClearHostButton button = new ClearHostButton(hostFile);

      Box bar = Box.createHorizontalBox();
      bar.add(label);
      bar.add(button);
      bar.add(Box.createHorizontalGlue());

      cacheBox.add(bar);
      FontSizer.setFonts(cacheBox, FontSizer.getLevel());
    }

    // set label sizes
    FontRenderContext frc = new FontRenderContext(null, false, false);
    Font font = labels.get(0).getFont();
    int w = 0;
    for (JLabel next : labels) {
      Rectangle2D rect = font.getStringBounds(next.getText(), frc);
      w = Math.max(w, (int) rect.getWidth());
    }
    Dimension labelSize = new Dimension(w + 48, 20);
    for (JLabel next : labels) {
      next.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0));
      next.setPreferredSize(labelSize);
    }
  }
Example #3
0
 /**
  * Constructs a RemoveButton.
  *
  * @param path
  */
 public SearchCheckBox(String path) {
   urlPath = path;
   setText(ToolsRes.getString("LibraryManager.Checkbox.Search")); // $NON-NLS-1$
   setFont(sharedFont);
   setSelected(!library.noSearchSet.contains(path));
   setOpaque(false);
   int space = 20 + FontSizer.getLevel() * 5;
   setBorder(BorderFactory.createEmptyBorder(0, 0, 0, space));
 }
Example #4
0
  protected void refreshSearchTab() {
    // refresh list of cached search targets
    searchBox.removeAll();
    checkboxes.clear();
    ArrayList<JLabel> labels = new ArrayList<JLabel>();
    for (LibraryResource next : browser.getSearchCacheTargets()) {
      String path = next.collectionPath;
      if (path == null) continue;

      String name = next.toString();
      JLabel label = new JLabel(name);
      label.setToolTipText(path);
      labels.add(label);

      SearchCheckBox checkbox = new SearchCheckBox(path);
      checkboxes.add(checkbox);
      JButton button = new DeleteButton(path);

      Box bar = Box.createHorizontalBox();
      bar.add(label);
      bar.add(checkbox);
      bar.add(button);
      bar.add(Box.createHorizontalGlue());

      searchBox.add(bar);
      FontSizer.setFonts(searchBox, FontSizer.getLevel());
    }
    if (labels.isEmpty()) return;

    // set label sizes
    FontRenderContext frc = new FontRenderContext(null, false, false);
    Font font = labels.get(0).getFont();
    int w = 0;
    for (JLabel next : labels) {
      Rectangle2D rect = font.getStringBounds(next.getText(), frc);
      w = Math.max(w, (int) rect.getWidth());
    }
    Dimension labelSize = new Dimension(w + 48, 20);
    for (JLabel next : labels) {
      next.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0));
      next.setPreferredSize(labelSize);
    }
  }
Example #5
0
 /**
  * Constructor for a frame
  *
  * @param browser a LibraryBrowser
  * @param frame the frame
  */
 protected LibraryManager(LibraryBrowser browser, JFrame frame) {
   super(frame, true);
   this.browser = browser;
   library = browser.library;
   setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE);
   createGUI();
   Dimension dim = new Dimension(defaultSize);
   double factor = 1 + FontSizer.getLevel() * 0.25;
   dim.width = (int) (dim.width * factor);
   dim.height = (int) (dim.height * factor);
   setSize(dim);
 }
Example #6
0
  @Override
  protected Widget createMainWidget() {
    context_ = new FindResultContext();

    FindOutputResources resources = GWT.create(FindOutputResources.class);
    resources.styles().ensureInjected();

    table_ =
        new FastSelectTable<FindResult, CodeNavigationTarget, Object>(
            new FindOutputCodec(resources), resources.styles().selectedRow(), true, false);
    FontSizer.applyNormalFontSize(table_);
    table_.addStyleName(resources.styles().findOutput());
    table_.addClickHandler(
        new ClickHandler() {
          @Override
          public void onClick(ClickEvent event) {
            if (event.getNativeButton() != NativeEvent.BUTTON_LEFT) return;

            if (dblClick_.checkForDoubleClick(event.getNativeEvent())) fireSelectionCommitted();
          }

          private final DoubleClickState dblClick_ = new DoubleClickState();
        });

    table_.addKeyDownHandler(
        new KeyDownHandler() {
          @Override
          public void onKeyDown(KeyDownEvent event) {
            if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) fireSelectionCommitted();
            event.stopPropagation();
            event.preventDefault();
          }
        });

    scrollPanel_ = new ScrollPanel(table_);
    scrollPanel_.setSize("100%", "100%");
    return scrollPanel_;
  }