"function getData(varName)\n" "{\n" " var i = varName.lastIndexOf('/');\n" " var n = i>=0 ? varName.substring(i+1) : varName;\n" " return eval(n);\n" "}\n" "\n" "function stripPath(uri)\n" "{\n" " return uri.substring(uri.lastIndexOf('/')+1);\n" "}\n" "\n" "function getScript(scriptName,func,show)\n" "{\n" " var head = document.getElementsByTagName(\"head\")[0]; \n" " var script = document.createElement('script');\n" " script.id = scriptName;\n" " script.type = 'text/javascript';\n" " script.onload = func; \n" " script.src = scriptName+'.js'; \n" " script.onreadystatechange = function() {\n" " if (script.readyState == 'complete') { func(); if (show) showRoot(); }\n" " };\n" " head.appendChild(script); \n" "}\n" "\n" "function createIndent(o,domNode,node,level)\n" "{\n" " if (node.parentNode && node.parentNode.parentNode) {\n" " createIndent(o,domNode,node.parentNode,level+1);\n" " }\n" " var imgNode = document.createElement(\"img\");\n" " imgNode.width = 16;\n" " imgNode.height = 22;\n" " if (level==0 && node.childrenData) {\n" " node.plus_img = imgNode;\n" " node.expandToggle = document.createElement(\"a\");\n" " node.expandToggle.href = \"javascript:void(0)\";\n" " node.expandToggle.onclick = function() {\n" " if (node.expanded) {\n" " $(node.getChildrenUL()).slideUp(\"fast\");\n" " if (node.isLast) {\n" " node.plus_img.src = node.relpath+\"ftv2plastnode.png\";\n" " } else {\n" " node.plus_img.src = node.relpath+\"ftv2pnode.png\";\n" " }\n" " node.expanded = false;\n" " } else {\n" " expandNode(o, node, false, false);\n" " }\n" " }\n" " node.expandToggle.appendChild(imgNode);\n" " domNode.appendChild(node.expandToggle);\n" " } else {\n" " domNode.appendChild(imgNode);\n" " }\n" " if (level==0) {\n" " if (node.isLast) {\n" " if (node.childrenData) {\n" " imgNode.src = node.relpath+\"ftv2plastnode.png\";\n" " } else {\n" " imgNode.src = node.relpath+\"ftv2lastnode.png\";\n" " domNode.appendChild(imgNode);\n" " }\n" " } else {\n" " if (node.childrenData) {\n" " imgNode.src = node.relpath+\"ftv2pnode.png\";\n" " } else {\n" " imgNode.src = node.relpath+\"ftv2node.png\";\n" " domNode.appendChild(imgNode);\n" " }\n" " }\n" " } else {\n" " if (node.isLast) {\n" " imgNode.src = node.relpath+\"ftv2blank.png\";\n" " } else {\n" " imgNode.src = node.relpath+\"ftv2vertline.png\";\n" " }\n" " }\n" " imgNode.border = \"0\";\n" "}\n" "\n" "function newNode(o, po, text, link, childrenData, lastNode)\n" "{\n" " var node = new Object();\n" " node.children = Array();\n" " node.childrenData = childrenData;\n" " node.depth = po.depth + 1;\n" " node.relpath = po.relpath;\n" " node.isLast = lastNode;\n" "\n" " node.li = document.createElement(\"li\");\n" " po.getChildrenUL().appendChild(node.li);\n" " node.parentNode = po;\n" "\n" " node.itemDiv = document.createElement(\"div\");\n" " node.itemDiv.className = \"item\";\n" "\n" " node.labelSpan = document.createElement(\"span\");\n" " node.labelSpan.className = \"label\";\n" "\n" " createIndent(o,node.itemDiv,node,0);\n" " node.itemDiv.appendChild(node.labelSpan);\n" " node.li.appendChild(node.itemDiv);\n" "\n" " var a = document.createElement(\"a\");\n" " node.labelSpan.appendChild(a);\n" " node.label = document.createTextNode(text);\n" " node.expanded = false;\n" " a.appendChild(node.label);\n" " if (link) {\n" " var url;\n" " if (link.substring(0,1)=='^') {\n" " url = link.substring(1);\n" " link = url;\n" " } else {\n" " url = node.relpath+link;\n" " }\n" " a.className = stripPath(link.replace('#',':'));\n" " if (link.indexOf('#')!=-1) {\n" " var aname = '#'+link.split('#')[1];\n" " var srcPage = stripPath($(location).attr('pathname'));\n" " var targetPage = stripPath(link.split('#')[0]);\n" " a.href = srcPage!=targetPage ? url : '#';\n" " a.onclick = function(){\n" " $('.item').removeClass('selected');\n" " $('.item').removeAttr('id');\n" " $(a).parent().parent().addClass('selected');\n" " $(a).parent().parent().attr('id','selected');\n" " var pos, anchor = $(aname), docContent = $('#doc-content');\n" " if (anchor.parent().attr('class')=='memItemLeft') {\n" " pos = anchor.parent().position().top;\n" " } else {\n" " pos = anchor.position().top;\n" " }\n" " var dist = Math.abs(Math.min(\n" " pos-docContent.offset().top,\n" " docContent[0].scrollHeight-\n" " docContent.height()-docContent.scrollTop()));\n" " docContent.animate({\n" " scrollTop: pos + docContent.scrollTop() - docContent.offset().top\n" " },Math.max(50,Math.min(500,dist)),function(){\n" " window.location.replace(aname);\n" " });\n" " };\n" " } else {\n" " a.href = url;\n" " }\n" " } else {\n" " if (childrenData != null) \n" " {\n" " a.className = \"nolink\";\n" " a.href = \"javascript:void(0)\";\n" " a.onclick = node.expandToggle.onclick;\n" " }\n" " }\n" "\n" " node.childrenUL = null;\n" " node.getChildrenUL = function() {\n" " if (!node.childrenUL) {\n" " node.childrenUL = document.createElement(\"ul\");\n" " node.childrenUL.className = \"children_ul\";\n" " node.childrenUL.style.display = \"none\";\n" " node.li.appendChild(node.childrenUL);\n" " }\n" " return node.childrenUL;\n" " };\n" "\n" " return node;\n" "}\n" "\n" "function showRoot()\n" "{\n" " var headerHeight = $(\"#top\").height();\n" " var footerHeight = $(\"#nav-path\").height();\n" " var windowHeight = $(window).height() - headerHeight - footerHeight;\n" " (function (){ // retry until we can scroll to the selected item\n" " try {\n" " navtree.scrollTo('#selected',0,{offset:-windowHeight/2});\n" " } catch (err) {\n" " setTimeout(arguments.callee, 0);\n" " }\n" " })();\n" "}\n" "\n" "function expandNode(o, node, imm, showRoot)\n" "{\n" " if (node.childrenData && !node.expanded) {\n" " if (typeof(node.childrenData)==='string') {\n" " var varName = node.childrenData;\n" " getScript(node.relpath+varName,function(){\n" " node.childrenData = getData(varName);\n" " expandNode(o, node, imm, showRoot);\n" " }, showRoot);\n" " } else {\n" " if (!node.childrenVisited) {\n" " getNode(o, node);\n" " } if (imm) {\n" " $(node.getChildrenUL()).show();\n" " } else {\n" " $(node.getChildrenUL()).slideDown(\"fast\");\n" " }\n" " if (node.isLast) {\n" " node.plus_img.src = node.relpath+\"ftv2mlastnode.png\";\n" " } else {\n" " node.plus_img.src = node.relpath+\"ftv2mnode.png\";\n" " }\n" " node.expanded = true;\n" " }\n" " }\n" "}\n" "\n" "function showNode(o, node, index)\n" "{\n" " if (node.childrenData && !node.expanded) {\n" " if (typeof(node.childrenData)==='string') {\n" " var varName = node.childrenData;\n" " getScript(node.relpath+varName,function(){\n" " node.childrenData = getData(varName);\n" " showNode(o,node,index);\n" " },true);\n" " } else {\n" " if (!node.childrenVisited) {\n" " getNode(o, node);\n" " }\n" " $(node.getChildrenUL()).show();\n" " if (node.isLast) {\n" " node.plus_img.src = node.relpath+\"ftv2mlastnode.png\";\n" " } else {\n" " node.plus_img.src = node.relpath+\"ftv2mnode.png\";\n" " }\n" " node.expanded = true;\n" " var n = node.children[o.breadcrumbs[index]];\n" " if (index+11){\n" " var anchor = $(window.location.hash);\n" " if (anchor.parent().attr('class')=='memItemLeft'){\n" " var rows = $('.memberdecls tr[class$=\\\"\"'+\n" " window.location.hash.substring(1)+'\"\\\"]').children();\n" " rows.effect('highlight',{},1500);\n" " } else {\n" " var targetDiv = anchor.next();\n" " $(targetDiv).children('.memproto,.memdoc').effect(\"highlight\",{},1500);\n" " }\n" " var a;\n" " if ($(location).attr('hash')){\n" " var link=stripPath($(location).attr('pathname'))+':'+\n" " $(location).attr('hash').substring(1);\n" " a=$('.item a[class*=\\\"\"'+link+'\"\\\"]');\n" " }\n" " if (a && a.length){\n" " $('.item').removeClass('selected');\n" " $('.item').removeAttr('id');\n" " a.parent().parent().addClass('selected');\n" " a.parent().parent().attr('id','selected');\n" " var anchor = $($(location).attr('hash'));\n" " var targetDiv = anchor.next();\n" " showRoot();\n" " }\n" " }\n" " })\n" "\n" " $(window).load(showRoot);\n" "}\n" "\n"