123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- // Licensed Materials - Property of IBM
- //
- // IBM Cognos Products: ps
- //
- // (C) Copyright IBM Corp. 2005, 2011
- //
- // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- // Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
- // Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- var treeMetadata;
- var treeRoot;
- var treeArray = new Array();
- var currentlySelectedNode = null;
- var currentValue = "";
- var currentName = "";
- var sTreeWebRoot = ".."; // default this to a relative location
- if (window.g_PS_getWebRoot)
- {
- if (g_PS_getWebRoot() != "")
- sTreeWebRoot = g_PS_getWebRoot(); // set up the official path to the C8 web root
- }
- function initTree(rootName, rootCaption, rootIcon)
- {
- try
- {
- if (typeof oCV == "undefined") {
- oCV = window;
- }
- }
- catch (e)
- {
- oCV = window;
- }
- oCV.preProcessControlArray=[];
- oCV.p_sSkinFolder= sTreeWebRoot + "/prompting/reportskin";
- oCV.bCanFinish=true;
- oCV.bNextPage=true;
- oCV.pageNavigationObserverArray=[];
- oCV.rangeObserverArray=[];
- oCV.multipleObserverArray=[];
- oCV.datePickerObserverArray=[];
- oCV.hasPromptKeyDown=false;
- //addHiddenInputHTML("pform", "p_[MULTIPLE]", "");
- var treeDiv = document.getElementById("LWMTreeOuterPane");
- treeMetadata = new CTree (treeDiv, "", false, false, "treeRoot", null, null, "");
- treeRoot = treeMetadata.getRootNode();
-
- var tNode = new CTreeNodeType(TREE_ROOT, true, rootIcon, rootIcon);
- tNode.setSelectable(true);
-
- treeMetadata.setRootNodeType(tNode);
-
- treeMetadata.setSelectionMode(SINGLE_TREE_SELECTION);
- treeMetadata.setForceSelectionAtLowestLevel(true);
- treeMetadata.setNodesCanHaveChildren(true);
- treeMetadata.setDisabled(false);
- treeMetadata.setRootNodeShowing(true);
- treeMetadata.getRootNode().setName(rootCaption);
- treeMetadata.setLoadOnTheFlyFunction(null);
- treeMetadata.setContextMenu(treeContextMenuFunc);
- treeMetadata.setSingleClickFunc(treeContextMenuFunc);
- treeMetadata.setRecursiveSelect(false);
- treeMetadata.setHideOuterTable(false);
- }
- function getSelectedNode()
- {
- if (currentlySelectedNode != null)
- {
- return currentlySelectedNode.getValue();
- }
- }
- function getSelectedValue()
- {
- return currentValue;
- }
- function getSelectedName()
- {
- return currentName;
- }
- function treeFocus () {
- //no-op
- }
- function treeContextMenuFunc(evt)
- {
- //get the event in a cross-browser fashion
- evt = (evt) ? evt : ((event) ? event : null);
- if ((evt !== null) && (evt.keyCode != null) && (evt.keyCode != 13) && (evt.keyCode !== 0))
- {
- return false;
- }
- //cancel any text selection
- clearSelection();
- //prevent the event from bubbling to other elements
- cancelBub(evt);
- //get UI Node
- var uiNode = getUINode(evt);
- var uiNodeTreeRef = uiNode.getAttribute(gsCTREE_treeRef).toString();
- //get the tree object
- var tree = uiNode.getAttribute(gsCTREE_tree).toString();
- //get tree Node
- var node = getTreeNode(tree, uiNodeTreeRef);
- var oTree = node.getTree();
- currentValue = node.getValue();
- currentName = node.getName();
- currentlySelectedNode = node;
- }
- function addNode(typeNode, level, name, value, icon, parentName, parentCaption, prevSelectedName, prevSelectedValue)
- {
- if (typeNode == 'itemGroup')
- {
- var nodeType = new CTreeNodeType(TREE_FOLDER, false, icon, icon);
- nodeType.setSelectable(true);
- var node = null;
- var parentNode = treeRoot;
- if (level > 0 && parentName != 'undefined' && treeArray[parentName] != null)
- {
- parentNode = treeArray[parentName];
- node = new CTreeNode(parentNode, nodeType, false, name, value, false);
- parentNode.getTree().childrenReadyForNode(parentNode);
- } else {
- node = new CTreeNode(treeRoot, nodeType, false, name, value, false);
- }
- node.setTooltip(name);
- node.setCanHaveChildren(true);
- node.setOpen(true);
- treeArray[value] = node;
- } else if (typeNode == 'item')
- {
- var nodeType = new CTreeNodeType(TREE_ITEM, false, icon, icon);
- nodeType.setSelectable(true);
- var parentNode = treeRoot;
- var node = null;
- var selected = false;
- if (prevSelectedName != '' && prevSelectedValue != '' && prevSelectedName == name && prevSelectedValue == value)
- {
- selected = true;
- //set the current value and name
- currentValue = prevSelectedValue;
- currentName = prevSelectedName;
- }
- if (level > 0 && parentName != 'undefined' && treeArray[parentName] != null)
- {
- parentNode = treeArray[parentName];
- node = new CTreeNode(parentNode, nodeType, false, name, value, selected);
- } else {
- node = new CTreeNode(treeRoot, nodeType, false, name, value, selected);
- }
- node.setCanHaveChildren(false);
- }
- }
|