/** * Names this Navigator. * * @return The name of this Navigator. This is locale independent and can be * used by the application to identify the view. */ public String getNavigatorName() { return view.getName(); }
/** * Returns icon associated with the view. * * @param view the view * @return the ImageIcon for the view */ public ImageIcon getImageIcon(NavigatorView view) { ImageIcon icon = null; Map.ID id = view.getImageID(); if (id != null) { try { Map map = view.getHelpSet().getCombinedMap(); URL url = map.getURLFromID(id); icon = new ImageIcon(url); } catch (Exception e) { } } return icon; }
private void setNavigatorAttributes(NavigatorView view) { pageContext.setAttribute("className", view.getClass().getName()); pageContext.setAttribute("name", view.getName()); pageContext.setAttribute("tip", view.getLabel()); String icon = getIconURL(view); pageContext.setAttribute("iconURL", icon); pageContext.setAttribute("isCurrentNav", new Boolean(curNav.compareTo(view.getName()) == 0)); }
/** * Setd the desired cell renderer on this tree. This is exposed for redefinition * by subclases. */ protected void setCellRenderer(NavigatorView view, JTree tree) { if (view == null) { return; } Map map = view.getHelpSet().getCombinedMap(); tree.setCellRenderer(new BasicSearchCellRenderer(map)); }
String mergeType = masterView.getMergeType(); HelpSet hs = masterView.getHelpSet(); Locale locale = hs.getLocale(); ClassLoader loader = hs.getLoader();
private SearchEngine makeEngine(NavigatorView view) { Hashtable params = view.getParameters(); HelpSet hs = view.getHelpSet(); URL base = hs.getHelpSetURL(); ClassLoader loader = hs.getLoader();
/** * Get the Index navigators mergeType. Overrides getMergeType in NavigatorView */ public String getMergeType() { String mergeType = super.getMergeType(); if (mergeType == null) { return "javax.help.NoMerge"; } return mergeType; }
/** * Gets the locale-dependent name of this View. * * @return The locale-dependent name of this view. */ public String getLabel(Locale locale) { return getLabel(); }
/** * Merges a NavigatorView into this instance. * * @param view The data to merge. * @exception IllegalArgumentException * @exception IllegalStateException * * @see canMerge(NavigatorView) * @see remove(NavigatorView) */ public void merge(NavigatorView view) { // Add the requested query engine to our list of engines debug("JHelpSearchNavigator.merge invoked"); debug(" params: "+view.getParameters()); if (search == null) { search = (MergingSearchEngine) getSearchEngine(); } search.merge(view); debug("merge: "+view); this.getUI().merge(view); }
view = NavigatorView.create(hs, name, label, locale,
/** * return the icon URL in String form for a given TOCItem * * returns empty String if no content exists. */ private String getIconURL(NavigatorView view) { URL url = null; ID id = view.getImageID(); if (id != null) { HelpSet hs = id.hs; Map map = hs.getLocalMap(); try { url = map.getURLFromID(id); } catch (MalformedURLException e) { // just ignore } } if (url == null) { return ""; } return url.toExternalForm(); } }
protected void setupNavigators() { HelpSet hs = helpModel.getHelpSet(); // Simply return if the hs is null if (hs == null) { return; } // Now add all the navigators NavigatorView views[] = hs.getNavigatorViews(); debug("views: "+views); for (int i=0; i<views.length; i++) { debug(" processing info: "+views[i]); // We are currently assuming all the Navigators are JComponents JHelpNavigator nav = (JHelpNavigator) views[i].createNavigator(helpModel); if (nav == null) { // For now... debug("no JHelpNavigator for given info"); } else { debug(" adding the navigator"); navigators.addElement(nav); // HERE -- I don't think we want to change again the model // this.addHelpNavigator(nav); } } }
/** * Sets the desired cell renderer on this tree. This is exposed for redefinition * by subclases. */ protected void setCellRenderer(NavigatorView view, JTree tree) { // Use the combined map to drive the TOC tree actions Map map = view.getHelpSet().getCombinedMap(); tree.setCellRenderer(new BasicTOCCellRenderer(map, (TOCView)view)); }
/** * Get the Index navigators mergeType. Overrides getMergeType in NavigatorView */ public String getMergeType() { String mergeType = super.getMergeType(); if (mergeType == null) { return "javax.help.AppendMerge"; } return mergeType; }
/** * Gets the name of this navigator view. * * @return The label for this NavigatorView. */ public String getNavigatorLabel() { return view.getLabel(); }
/** * Removes a NavigatorView from this instance. * * @param view The data to merge. * @exception IllegalArgumentException * @exception IllegalStateException * * @see canMerge(NavigatorView) * @see merge(NavigatorView) */ public void remove(NavigatorView view) { // Remove the requested query engine from our list of engines debug("JHelpSearchNavigator.remove invoked"); debug(" params: "+view.getParameters()); if (search == null) { search = (MergingSearchEngine) getSearchEngine(); } search.remove(view); debug("remove: "+view); this.getUI().remove(view); }
/** * Determines if this instance of a JHelpNavigator can merge its data with another one. * * @param view The data to merge * @return Whether it can be merged * * @see merge(NavigatorView) * @see remove(NavigatorView) */ public boolean canMerge(NavigatorView view) { if (view instanceof IndexView && getNavigatorName().equals(view.getName())) { return true; } return false; }
/** * Constructs Merge for master and slave NavigatorViews * * @param master The master NavigatorView * @param slave The slave NavigatorView */ protected Merge(NavigatorView master, NavigatorView slave){ try { Class clss = Class.forName("javax.help.TOCView"); if (clss.isInstance(slave)) { this.slaveTopNode = ((TOCView)slave).getDataAsTree(); } clss = Class.forName("javax.help.IndexView"); if (clss.isInstance(slave)) { this.slaveTopNode = ((IndexView)slave).getDataAsTree(); } } catch(ClassNotFoundException exp) { System.err.println(exp); } locale = master.getHelpSet().getLocale(); if(locale == null) locale = Locale.getDefault(); }
/** * Get the TOC navigators mergeType. Overrides getMergeType in NavigatorView */ public String getMergeType() { String mergeType = super.getMergeType(); if (mergeType == null) { return "javax.help.AppendMerge"; } return mergeType; }
/** * Gets locale-dependent name for this navigator view. * * @return the label for this NavigatorView. If locale is null it is * treated as the default Locale. */ public String getNavigatorLabel(Locale locale) { return view.getLabel(locale); }