MainJavadocExampleSource
DropdownMenuTreeRenderer

com.raritantechnologies.utils.tree.taglibrary
Class DropdownMenuTreeRenderer

java.lang.Object
  extended bycom.raritantechnologies.utils.tree.taglibrary.DropdownMenuTreeRenderer
All Implemented Interfaces:
IConfigurable, ITreeRenderer

public class DropdownMenuTreeRenderer
extends java.lang.Object
implements ITreeRenderer

Renders a Tree as a DHTML dropdown menu. Uses menu.js script to handle menu controls.

XML Configuration Template:
    <TreeRenderer class="com.raritantechnologies.utils.tree.taglibrary.DropdownMenuTreeRenderer"
                     nameAttribute="[ attribute to get display name ]"
                     descriptionAttribute="[ attribute to get description (flyover hint) ]"
                     hrefAttribute="[ attribute to get link URL ]" 
                     targetAttribute="[ attribute to get window link target ]"
                     hyperlinkTarget="[ fixed hyperlink target ]"
                     activeAttribute="[ TreeNode attribute with activeOn value of format 'sessionData|request:[param=value|NOT NULL]' ]"
                     useAction="href(default)|onClick"
                     zIndex="[ zindex of popup menus ]"
                     menuOffset="[ vertical offset for flyout menus ]"
                     hAlign="[ left(default)|center|right ]"
                     linkStyle="[ css style of hyperlinks ]"
                     childDivStyle="[ css style for child divs ]"
                     tabStyle="[ css style of top tabs ]"
                     activeTabStyle="[ css style of active tab ]"
                     activeTabName="[ fixed name for active tab ]"
                     activeTabParam="[ http request parameter that has active tab name ]"
                     blankTab="[ spacer for blank tabs ]"
                     linkClass="[ css class of menu items ]"
                     divIDPrefix="[ unique prefix - (needed for multiple instances of dropdowns) ]" >

      <!-- ================================================================= -->
      <!-- Optional javascript function to use to route tree node hyperlinks -->
      <!-- If this tag is present, the renderer will generate A tags with    -->
      <!-- onClick="javascript:[functionName]( '[the href ]' );"             -->
      <!-- ================================================================= -->
      <HyperlinkJavascript functionName="[ name of javascript function ]" >

      </HyperlinkJavascript>

      <LinkRenderer class="[ class of com.raritantechnologies.utils.tree.ITreeNodeHyperlinkRenderer ]" >

      </LinkRenderer>

   </TreeRenderer>
 

Developed by Raritan Technologies Inc..

Author:
Ted Sullivan

Field Summary
 
Fields inherited from interface com.raritantechnologies.utils.tree.taglibrary.ITreeRenderer
AT_LEFT, AT_RIGHT
 
Constructor Summary
DropdownMenuTreeRenderer()
           
 
Method Summary
 voidaddChildLocationLink(TreeNode childNode, java.lang.StringBuffer strbuf, java.lang.String treeURL, RaritanPageContext rpc, boolean isActive)
           
 voidaddNodeRenderer(ITreeNodeRenderer nodeRenderer, int position)
          Adds an auxilliary TreeNodeRenderer - at left or right position to main node renderer.
 java.lang.StringgetDropdownDivs(TreeNode treeNode, java.lang.String treeName, java.lang.String treeURL, RaritanPageContext rpc)
           
 java.lang.StringgetHyperlink(java.lang.String treeName, TreeNode treeNode, java.lang.String treeURL, RaritanPageContext rpc)
           
 voidinitialize(org.w3c.dom.Element elem)
          Initializes the object from an XML tag or element.
 java.lang.StringrenderTree(TreeNode tree, java.lang.String treeURL)
           
 java.lang.StringrenderTree(TreeNode tree, java.lang.String treeURL, RaritanPageContext rpc)
           
 java.lang.StringrenderTree(TreeNode tree, java.lang.String treeURL, java.lang.String treeTarget)
           
 java.lang.StringrenderTree(TreeNode tree, java.lang.String treeURL, java.lang.String treeTarget, RaritanPageContext rpc)
           
 java.lang.StringrenderTree(TreeRoot tree, java.lang.String treeURL, RaritanPageContext rpc)
           
 java.lang.StringrenderTree(TreeRoot tree, java.lang.String treeURL, RaritanPageContext rpc, java.lang.String initialState)
           
 voidsetActiveNodeID(java.lang.String activeNodeID)
           
 voidsetBlankImgURL(java.lang.String url)
           
 voidsetClosedImgURL(java.lang.String url)
           
 voidsetLastImgClosedURL(java.lang.String url)
           
 voidsetLastImgOpenURL(java.lang.String url)
           
 voidsetLastImgURL(java.lang.String url)
           
 voidsetLineImgURL(java.lang.String url)
           
 voidsetNodeHyperlinkParameters(OrderedMap nodeParameters)
           
 voidsetNodeHyperlinkRenderer(ITreeNodeHyperlinkRenderer nodeRenderer)
           
 voidsetNodeHyperlinkRenderer(java.lang.String rendererClass)
           
 voidsetNodeRenderer(ITreeNodeRenderer nodeNameRenderer)
          Replaces the main node rendering with an external Node Renderer.
 voidsetOpenImgURL(java.lang.String url)
           
 voidsetTreeState(TreeRoot tree, RaritanPageContext rpc)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DropdownMenuTreeRenderer

public DropdownMenuTreeRenderer()
Method Detail

setTreeState

public void setTreeState(TreeRoot tree,
                         RaritanPageContext rpc)
Specified by:
setTreeState in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeRoot tree,
                                   java.lang.String treeURL,
                                   RaritanPageContext rpc,
                                   java.lang.String initialState)
Specified by:
renderTree in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeRoot tree,
                                   java.lang.String treeURL,
                                   RaritanPageContext rpc)
Specified by:
renderTree in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeNode tree,
                                   java.lang.String treeURL)
Specified by:
renderTree in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeNode tree,
                                   java.lang.String treeURL,
                                   RaritanPageContext rpc)
Specified by:
renderTree in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeNode tree,
                                   java.lang.String treeURL,
                                   java.lang.String treeTarget)
Specified by:
renderTree in interface ITreeRenderer

renderTree

public java.lang.String renderTree(TreeNode tree,
                                   java.lang.String treeURL,
                                   java.lang.String treeTarget,
                                   RaritanPageContext rpc)
Specified by:
renderTree in interface ITreeRenderer

getDropdownDivs

public java.lang.String getDropdownDivs(TreeNode treeNode,
                                        java.lang.String treeName,
                                        java.lang.String treeURL,
                                        RaritanPageContext rpc)

addChildLocationLink

public void addChildLocationLink(TreeNode childNode,
                                 java.lang.StringBuffer strbuf,
                                 java.lang.String treeURL,
                                 RaritanPageContext rpc,
                                 boolean isActive)

getHyperlink

public java.lang.String getHyperlink(java.lang.String treeName,
                                     TreeNode treeNode,
                                     java.lang.String treeURL,
                                     RaritanPageContext rpc)
Specified by:
getHyperlink in interface ITreeRenderer

setNodeHyperlinkRenderer

public void setNodeHyperlinkRenderer(java.lang.String rendererClass)
Specified by:
setNodeHyperlinkRenderer in interface ITreeRenderer

setNodeHyperlinkRenderer

public void setNodeHyperlinkRenderer(ITreeNodeHyperlinkRenderer nodeRenderer)
Specified by:
setNodeHyperlinkRenderer in interface ITreeRenderer

setNodeHyperlinkParameters

public void setNodeHyperlinkParameters(OrderedMap nodeParameters)
Specified by:
setNodeHyperlinkParameters in interface ITreeRenderer

setNodeRenderer

public void setNodeRenderer(ITreeNodeRenderer nodeNameRenderer)
Description copied from interface: ITreeRenderer
Replaces the main node rendering with an external Node Renderer.

Specified by:
setNodeRenderer in interface ITreeRenderer

addNodeRenderer

public void addNodeRenderer(ITreeNodeRenderer nodeRenderer,
                            int position)
Description copied from interface: ITreeRenderer
Adds an auxilliary TreeNodeRenderer - at left or right position to main node renderer.

Specified by:
addNodeRenderer in interface ITreeRenderer

setActiveNodeID

public void setActiveNodeID(java.lang.String activeNodeID)
Specified by:
setActiveNodeID in interface ITreeRenderer

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: IConfigurable
Initializes the object from an XML tag or element. This method is called by the Framework as part of the application initializtion. see ConfigurationManager, XMLConfigurationManager, XMLSearchFieldMapFactory, XMLSearchSourceFactory. Configurable objects that are owned or contained by other configurable objects will be initialized in by the parent object.

Specified by:
initialize in interface IConfigurable

setOpenImgURL

public void setOpenImgURL(java.lang.String url)
Specified by:
setOpenImgURL in interface ITreeRenderer

setClosedImgURL

public void setClosedImgURL(java.lang.String url)
Specified by:
setClosedImgURL in interface ITreeRenderer

setBlankImgURL

public void setBlankImgURL(java.lang.String url)
Specified by:
setBlankImgURL in interface ITreeRenderer

setLineImgURL

public void setLineImgURL(java.lang.String url)
Specified by:
setLineImgURL in interface ITreeRenderer

setLastImgURL

public void setLastImgURL(java.lang.String url)
Specified by:
setLastImgURL in interface ITreeRenderer

setLastImgOpenURL

public void setLastImgOpenURL(java.lang.String url)
Specified by:
setLastImgOpenURL in interface ITreeRenderer

setLastImgClosedURL

public void setLastImgClosedURL(java.lang.String url)
Specified by:
setLastImgClosedURL in interface ITreeRenderer