<?xml version="1.0" encoding="ISO-8859-1"?>

<taglib>
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>Tree Component</short-name>
    <info>
    </info>
    <tag>
        <name>tree</name>
        <tag-class>com.softaspects.galileo.client.jsp.html.tree.TreeTag</tag-class>
        <body-content>JSP</body-content>
        <info>

            <![CDATA[
            
            Top level component properties


            @Attributes:

            @AttributeName id
            @AttributeInfo component ID

            @AttributeName varName
            @AttributeInfo javascript component's variable name


            @AttributeName bgColorHilite
            @AttributeInfo HTML color of item's background when mouse is over it

            @AttributeName bgColor
            @AttributeInfo HTML background color

            @AttributeName fontSize
            @AttributeInfo HTML font size of any tree text

            @AttributeName fontWeight
            @AttributeInfo HTML font weight of any tree text

            @AttributeName fontFamily
            @AttributeInfo HTML font family of any tree text

            @AttributeName fontStyle
            @AttributeInfo HTML style of any tree text

            @AttributeName fontColorHilite
            @AttributeInfo HTML color of item's text when mouse is over it

            @AttributeName fontColor
            @AttributeInfo HTML color of any tree text

            @AttributeName itemNodeImage,itemTopNodeImage,itemLastNodeImage,
            verticalLineImage,rootNodeOpenedImage,rootNodeClosedImage,
            folderClosedNodeImage,folderClosedTopNodeImage,folderClosedLastNodeImage,
            folderOpenedNodeImage,folderOpenedTopNodeImage,folderOpenedLastNodeImage,

            @AttributeInfo Tree skeleton images

            @AttributeName useImageScaling
            @AttributeInfo Use HTML image scaling or use images as is
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE

            @AttributeName nodeImageHeight,nodeImageWidth
            @AttributeInfo Height,width of tree skeleton node images


            @AttributeName imageHeight,imageWidth
            @AttributeInfo Height,width of folders' and items' images

            @AttributeName userOnItemSelect
            @AttributeInfo javascript user callback function called when item is clicked

            @AttributeName userOnClearSelection
            @AttributeInfo javascript user callback function called when
            tree javascript component call the method "clearSelection" of it's selection model

            @AttributeName userAddToFolder
            @AttributeInfo javascript user callback function called when
            tree javascript component exploits client side lazy loading and
            ready to get content for the given folder when user clicks on it.

            Function usage : userAddToFolder(clickedFolderJsVarName). One of the possible
            usage is to analyze the given folder and add folder's content dynamically on the
            fly.

            @AttributeName useLazyLoad
            @AttributeInfo Client side lazy loading mode indicator
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName useServerSideLazyLoad
            @AttributeInfo Server side lazy loading mode indicator
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName lazyLoadLevel
            @AttributeInfo The level of tree structure that is drawed at once
            in client side and server side lazy loading modes
            Values: 1,2,3,etc. depending on tree structure
            Default value : 1

            @AttributeName lazyLoadTimeout
            @AttributeInfo Timeout in milliseconds used in client and server
            side lazy loading modes when getting content of the given folder
            Default value : 1500

            @AttributeName lazyLoadHideTimeout
            @AttributeInfo Timeout in milliseconds used in client and server
            side lazy loading modes when closing the given folder
            Default value : 1500

            @AttributeName nodeStatusText
            @AttributeInfo tooltip of the +/- tree icon that is showed
            depending on the corresponding "mixedStatusMode" property


            @AttributeName whenLoadingText
            @AttributeInfo Text that is showed when tree component structure is
            initialized on the client side
            Default value : "Building tree structure..."

            @AttributeName advancedSelection
            @AttributeInfo Item visual selection mode : plain or not.
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE

            @AttributeName rootNodeOpened
            @AttributeInfo Defines whether tree folders are showed initially when root folder is
            present
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE


            @AttributeName allNodesExpanded
            @AttributeInfo Defines whether all tree folders are exposed
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName noTreeIcons
            @AttributeInfo Defines to draw the tree without +/-/tree lines/ icons
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName rootNodeVisible
            @AttributeInfo Defines whether to draw root node
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE

            @AttributeName rootNodeImagePresent
            @AttributeInfo Defines whether to draw root node +/- icon
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName multipleOpenedBranches
            @AttributeInfo The tree branch selection behavior.If FALSE - only
            one branch can be opened in a given moment
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE

            @AttributeName nodesVisibility
            @AttributeInfo Defines to draw the tree without +/- icons
            Values(in any letter case): TRUE,FALSE
            Default value : TRUE

            @AttributeName mixedStatusMode
            @AttributeInfo Defines how to show status text of folders/items.
            If TRUE - tooltip is showed at status bar and as tooltip
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName header
            @AttributeInfo Any HTML content that is showed in header section of
            a tree component

            @AttributeName footer
            @AttributeInfo Any HTML content that is showed in footer section of
            a tree component

            @AttributeName onMouseOverExpandCollapse
            @AttributeInfo Defines expose/collapse mode of +/- tree icon.
            If TRUE - node is exposed by pointing mouse over it and waiting
            "onMouseOverExpandCollapseTimeout" period of time.
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName onMouseOverExpandCollapseTimeout
            @AttributeInfo Timeout period in milliseconds when
            "onMouseOverExpandCollapse=TRUE".
            Default value : 500

            @AttributeName textWrap
            @AttributeInfo Defines whether to wrap text of tree items
            Values(in any letter case): TRUE,FALSE
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName frameless
            @AttributeInfo Defines whether to show tree in ordinary HTML page
            or in HTML frames.
            Values(in any letter case): TRUE,FALSE
            Default value : FALSE

            @AttributeName treeHeight
            @AttributeInfo Height of the whole tree component
            Values(in any letter case): any HTML valid values

            @AttributeName containerBg
            @AttributeInfo HTML background color of tree surrounding container

            @AttributeName serverSideOnBeforeItemSelectTrigger
            @AttributeInfo URL of servlet/jsp that will be called before
            tree item will be selected

            @AttributeName serverSideOnAfterItemSelectTrigger
            @AttributeInfo URL of servlet/jsp that will be called before
            tree item will be selected

            @Attributes end.

            ]]>

        </info>
        <attribute>
            <name>id</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>varName</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>bgColorHilite</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>bgColor</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontSize</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontWeight</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontFamily</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontStyle</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontColorHilite</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>fontColor</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemTopNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemLastNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>verticalLineImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>rootNodeOpenedImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>rootNodeClosedImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderClosedNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderClosedTopNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderClosedLastNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderOpenedNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderOpenedTopNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderOpenedLastNodeImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>useImageScaling</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>nodeImageHeight</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>nodeImageWidth</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>imageHeight</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>imageWidth</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>userOnItemSelect</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>userOnClearSelection</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>userAddToFolder</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>useLazyLoad</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>useServerSideLazyLoad</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>lazyLoadLevel</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>lazyLoadTimeout</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>lazyLoadHideTimeout</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>nodeStatusText</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>whenLoadingText</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>advancedSelection</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>rootNodeOpened</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>allNodesExpanded</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>noTreeIcons</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>rootNodeVisible</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>rootNodeImagePresent</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>multipleOpenedBranches</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>nodesVisibility</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>mixedStatusMode</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>header</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>footer</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>onMouseOverExpandCollapse</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>onMouseOverExpandCollapseTimeout</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>textWrap</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>frameless</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>treeHeight</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>containerBg</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>

        <attribute>
            <name>serverSideOnBeforeItemSelectTrigger</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>serverSideOnAfterItemSelectTrigger</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>


    <tag>
        <name>dataModel</name>
        <tag-class>com.softaspects.galileo.client.jsp.html.tree.TreeDataModelTag</tag-class>
        <body-content>JSP</body-content>
        <info>

            <![CDATA[
            
            Holder of component's data model. Model can be instantiated and saved
            in context separately from the component definition and can be used by different
            components simultaneously.


            @Attributes:

            @AttributeName beanName
            @AttributeInfo Name with which the model is stored in context.

            @AttributeName scope
            @AttributeInfo Context in which the model is stored.

            Values(in any letter case): REQUEST - request context,
            SESSION - session context.
            APPLICATION - application context.


            @Attributes end.

            ]]>
            
        </info>
        <attribute>
            <name>beanName</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>scope</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>

    </tag>
    <tag>
        <name>selectionModel</name>
        <tag-class>com.softaspects.galileo.client.jsp.html.tree.TreeSelectionModelTag</tag-class>
        <body-content>JSP</body-content>
        <info>

            <![CDATA[
            
            Holder of component's selection model. Model can be instantiated and saved
            in context separately from the component definition and can be used by different
            components simultaneously.


            @Attributes:

            @AttributeName beanName
            @AttributeInfo Name with which the model is stored in context.

            @AttributeName scope
            @AttributeInfo Context in which the model is stored.

            Values(in any letter case): REQUEST - request context,
            SESSION - session context.
            APPLICATION - application context.


            @AttributeName          : selection
            @AttributeInfo: Tree initial selected node .
            For example: "0,1" - select second subitem of first item.


            @Attributes end
            
            ]]>
            
        </info>
        <attribute>
            <name>beanName</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>scope</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>selection</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>


    <tag>
        <name>item</name>
        <tag-class>com.softaspects.galileo.client.jsp.html.tree.TreeItemTag</tag-class>
        <body-content>JSP</body-content>
        <info>
            
            <![CDATA[
            
            Tree item properties.


            @Attributes:

            @AttributeName type
            @AttributeInfo Item type indicator.
            Values(in any letter case) : FOLDER - node
            DOCUMENT - leaf

            @AttributeName description
            @AttributeInfo Item's drawed text

            @AttributeName data
            @AttributeInfo Item's data. Used in user client side
            callback functions.

            @AttributeName itemImage
            @AttributeInfo Leaf's standard image URL

            @AttributeName itemRollOverImage
            @AttributeInfo Leaf's rollover image URL

            @AttributeName itemStatusText
            @AttributeInfo Item's status text showed depending on a tree component
            corrresponding property setting.

            @AttributeName folderClosedImage
            @AttributeInfo URL of a node image showed when a node is closed
            corrresponding property setting.

            @AttributeName folderOpenedImage
            @AttributeInfo URL of a node image showed when a node is opened
            corrresponding property setting.

            @AttributeName folderClosedRollOverImage
            @AttributeInfo URL of a node image showed when mouse is over closed node.

            @AttributeName folderOpenedRollOverImage
            @AttributeInfo URL of a node image showed when mouse is over opened node.

            @Attributes end

            ]]>

        </info>
        <attribute>
            <name>type</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>description</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>data</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemRollOverImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>itemStatusText</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderClosedImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderOpenedImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderClosedRollOverImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>folderOpenedRollOverImage</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>

</taglib>
