/** Populate recent bookmarks. */ public void populateRecentBookmarks() { JMenu bookmarksMenu = this.recentBookmarksMenu; bookmarksMenu.removeAll(); Collection<HistoryEntry<BookmarkInfo>> historyEntries = BookmarksHistory.getInstance().getRecentEntries(PREFERRED_MAX_MENU_SIZE); for (HistoryEntry<BookmarkInfo> hentry : historyEntries) { BookmarkInfo binfo = hentry.getItemInfo(); String text = binfo.getTitle(); URL url = binfo.getUrl(); String urlText = url.toExternalForm(); if ((text == null) || (text.length() == 0)) { text = urlText; } long elapsed = System.currentTimeMillis() - hentry.getTimetstamp(); text = text + " (" + Timing.getElapsedText(elapsed) + " ago)"; Action action = this.actionPool.createBookmarkNavigateAction(url); JMenuItem menuItem = ComponentSource.menuItem(text, action); StringBuffer toolTipText = new StringBuffer(); toolTipText.append("<html>"); toolTipText.append(urlText); String description = binfo.getDescription(); if ((description != null) && (description.length() != 0)) { toolTipText.append("<br>"); toolTipText.append(description); } menuItem.setToolTipText(toolTipText.toString()); bookmarksMenu.add(menuItem); } }
/** Populate tagged bookmarks. */ public void populateTaggedBookmarks() { JMenu bookmarksMenu = this.taggedBookmarksMenu; bookmarksMenu.removeAll(); Collection<BookmarkInfo> bookmarkInfoList = BookmarksHistory.getInstance() .getRecentItemInfo(PREFERRED_MAX_MENU_SIZE * PREFERRED_MAX_MENU_SIZE); Map<String, JMenu> tagMenus = new HashMap<String, JMenu>(); for (BookmarkInfo binfo : bookmarkInfoList) { URL url = binfo.getUrl(); String urlText = url.toExternalForm(); String[] tags = binfo.getTags(); if (tags != null) { for (String tag : tags) { JMenu tagMenu = tagMenus.get(tag); if (tagMenu == null) { if (tagMenus.size() < PREFERRED_MAX_MENU_SIZE) { tagMenu = new JMenu(tag); tagMenus.put(tag, tagMenu); bookmarksMenu.add(tagMenu); } } if ((tagMenu != null) && (tagMenu.getItemCount() < PREFERRED_MAX_MENU_SIZE)) { String text = binfo.getTitle(); if ((text == null) || (text.length() == 0)) { text = urlText; } Action action = this.actionPool.createBookmarkNavigateAction(url); JMenuItem menuItem = ComponentSource.menuItem(text, action); StringBuffer toolTipText = new StringBuffer(); toolTipText.append("<html>"); toolTipText.append(urlText); String description = binfo.getDescription(); if ((description != null) && (description.length() != 0)) { toolTipText.append("<br>"); toolTipText.append(description); } menuItem.setToolTipText(toolTipText.toString()); tagMenu.add(menuItem); } } } } }