diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2009-02-02 06:18:52 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2009-02-02 06:18:52 -0800 |
commit | 045c0d9e5e1d9e71d00d8ae6cf10294186bbfb3e (patch) | |
tree | 6d5478d73e0389f1f7da4bd7ca9adbe7b130a48c /tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js | |
parent | 522851c3311ffe8d413812e95c08c4c242b6256a (diff) | |
download | DotNetOpenAuth-045c0d9e5e1d9e71d00d8ae6cf10294186bbfb3e.zip DotNetOpenAuth-045c0d9e5e1d9e71d00d8ae6cf10294186bbfb3e.tar.gz DotNetOpenAuth-045c0d9e5e1d9e71d00d8ae6cf10294186bbfb3e.tar.bz2 |
More whitespace.
Diffstat (limited to 'tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js')
-rw-r--r-- | tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js | 672 |
1 files changed, 336 insertions, 336 deletions
diff --git a/tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js b/tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js index fa3a3d9..e2d5767 100644 --- a/tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js +++ b/tools/Sandcastle/Presentation/vs2005/Scripts/CommonUtilities.js @@ -1,336 +1,336 @@ -//function codeBlockHandler(id, data, value)
-function codeBlockHandler()
-{
- // handle groups of snippets to make sure at least one from the group is always shown
- HandleSnippetGroups();
-
- // handle any remaining snippets that aren't in groups
- var spanElements = document.getElementsByTagName("span");
- for(var i = 0; i < spanElements.length; ++i)
- {
- var devlang = spanElements[i].getAttribute("codeLanguage");
- if (devlang == null) continue;
-
- if (HasSnippetGroupAncestor(spanElements[i])) continue;
-
- var checkboxId = GetDevlangCheckboxId(devlang);
- if (checkboxId != null && checkboxId != "")
- {
- if (docSettings[checkboxId] == "on")
- spanElements[i].style.display = "";
- else
- spanElements[i].style.display = "none";
- }
- }
-}
-
-function HasSnippetGroupAncestor(object)
-{
- var parent = object.parentElement;
- if (parent == null) return false;
-
- var className = parent.className;
- if (className != null && className == "snippetgroup")
- return true
-
- return HasSnippetGroupAncestor(parent);
-}
-
-function HandleSnippetGroups()
-{
- var divs = document.getElementsByTagName("DIV");
- var divclass;
- for (var i = 0; i < divs.length; i++)
- {
- divclass = divs[i].className;
- if (divclass == null || divclass != "snippetgroup") continue;
-
- // if all snippets in this group would be hidden by filtering display them all anyhow
- var unfilteredCount = GetUnfilteredSnippetCount(divs[i]);
-
- var spanElements = divs[i].getElementsByTagName("span");
- for(var j = 0; j < spanElements.length; ++j)
- {
- var devlang = spanElements[j].getAttribute("codeLanguage");
- if (devlang == null) continue;
-
- var checkboxId = GetDevlangCheckboxId(devlang);
-
- // for filtered devlangs, determine whether they should be shown/hidden
- if (checkboxId != null && checkboxId != "")
- {
- if (unfilteredCount == 0 || docSettings[checkboxId] == "on")
- spanElements[j].style.display = "";
- else
- spanElements[j].style.display = "none";
- }
- }
- }
-}
-
-function GetUnfilteredSnippetCount(group)
-{
- var count = 0;
- var spanElements = group.getElementsByTagName("span");
- for(var i = 0; i < spanElements.length; ++i)
- {
- var devlang = spanElements[i].getAttribute("codeLanguage");
- var checkboxId = GetDevlangCheckboxId(devlang);
- if (checkboxId != null && checkboxId != "")
- {
- if (docSettings[checkboxId] == "on")
- count++;
- }
- }
- return count;
-}
-
-function GetDevlangCheckboxId(devlang)
-{
- switch (devlang)
- {
- case "VisualBasic":
- case "VisualBasicDeclaration":
- case "VisualBasicUsage":
- return devlangsMenu.GetCheckboxId("VisualBasic");
- case "CSharp":
- return devlangsMenu.GetCheckboxId("CSharp");
- case "ManagedCPlusPlus":
- return devlangsMenu.GetCheckboxId("ManagedCPlusPlus");
- case "JScript":
- return devlangsMenu.GetCheckboxId("JScript");
- case "JSharp":
- return devlangsMenu.GetCheckboxId("JSharp");
- case "JavaScript":
- return devlangsMenu.GetCheckboxId("JavaScript");
- default:
- return "";
- }
-}
-
-// update stylesheet display settings for spans to show according to user's devlang preference
-function styleSheetHandler(oneDevlang)
-{
- var devlang = (oneDevlang != "") ? oneDevlang : GetDevlangPreference();
-
- var sd = getStyleDictionary();
-
- if (devlang == 'cs') {
- sd['span.cs'].display = 'inline';
- sd['span.vb'].display = 'none';
- sd['span.cpp'].display = 'none';
- sd['span.nu'].display = 'none';
- } else if (devlang == 'vb') {
- sd['span.cs'].display = 'none';
- sd['span.vb'].display = 'inline';
- sd['span.cpp'].display = 'none';
- sd['span.nu'].display = 'none';
- } else if (devlang == 'cpp') {
- sd['span.cs'].display = 'none';
- sd['span.vb'].display = 'none';
- sd['span.cpp'].display = 'inline';
- sd['span.nu'].display = 'none';
- } else if (devlang == 'nu') {
- sd['span.cs'].display = 'none';
- sd['span.vb'].display = 'none';
- sd['span.cpp'].display = 'none';
- sd['span.nu'].display = 'inline';
- }
-}
-
-function getStyleDictionary() {
- var styleDictionary = new Array();
-
- // iterate through stylesheets
- var sheets = document.styleSheets;
-
- for(var i=0; i<sheets.length;i++) {
- var sheet = sheets[i];
-
- // Ignore sheets at ms-help Urls
- if (sheet.href.substr(0,8) == 'ms-help:') continue;
-
- // get sheet rules
- var rules = sheet.cssRules;
-
- if (rules == null) rules = sheet.rules;
-
- // iterate through rules
- for(j=0; j<rules.length; j++) {
- var rule = rules[j];
-
- // Ignore ones that aren't defined
- if(rule.selectorText == null)
- continue;
-
- // add rule to dictionary
- styleDictionary[rule.selectorText.toLowerCase()] = rule.style;
- }
- }
-
- return(styleDictionary);
-}
-
-function GetDevlangPreference()
-{
- var devlangCheckboxIds = devlangsMenu.GetCheckboxIds();
- var checkedCount = 0;
- var devlang;
- for (var key in devlangCheckboxIds)
- {
- if (docSettings[devlangCheckboxIds[key]] == "on")
- {
- checkedCount++;
- checkboxData = devlangsMenu.GetCheckboxData(devlangCheckboxIds[key]);
- var dataSplits = checkboxData.split(',');
- if (dataSplits.length > 1)
- devlang = dataSplits[1];
- }
- }
- return (checkedCount == 1 ? devlang : "nu");
-}
-
-
-
-function memberlistHandler()
-{
- // get all the <tr> nodes in the document
- var allRows = document.getElementsByTagName("tr");
- var i;
-
- for(i = 0; i < allRows.length; ++i)
- {
- var memberdata = allRows[i].getAttribute("data");
- if (memberdata != null)
- {
- if ((ShowBasedOnInheritance(memberdata) == false) ||
- (ShowBasedOnVisibility(memberdata) == false) ||
- (ShowBasedOnFramework(memberdata) == false) )
- allRows[i].style.display = "none";
- else
- allRows[i].style.display = "";
- }
- }
-
- ShowHideFrameworkImages();
- ShowHideFrameworkSpans();
-}
-
-function ShowHideFrameworkImages()
-{
- // show/hide img nodes for filtered framework icons
- // get all the <img> nodes in the document
- var allImgs = document.getElementsByTagName("img");
-
- for(var i = 0; i < allImgs.length; i++)
- {
- var imgdata = allImgs[i].getAttribute("data");
- if (imgdata != null)
- {
- var checkboxId = imgdata + "Checkbox";
- if (docSettings[checkboxId] != "on")
- {
- allImgs[i].style.display = "none";
- }
- else
- allImgs[i].style.display = "";
- }
- }
-}
-
-function ShowHideFrameworkSpans()
-{
- // show/hide img nodes for filtered framework icons
- // get all the <img> nodes in the document
- var allImgs = document.getElementsByTagName("span");
-
- for(var i = 0; i < allImgs.length; i++)
- {
- var imgdata = allImgs[i].getAttribute("data");
- if (imgdata != null)
- {
- var checkboxId = imgdata + "Checkbox";
- if (docSettings[checkboxId] != "on")
- {
- allImgs[i].style.display = "none";
- }
- else
- allImgs[i].style.display = "";
- }
- }
-}
-
-function ShowBasedOnVisibility(memberdata)
-{
- var isPublic = (memberdata.indexOf("public") != -1);
- var isProtected = (memberdata.indexOf("protected") != -1);
- var isPrivate = (memberdata.indexOf("private") != -1);
- var isExplicitII = (memberdata.indexOf("explicit") != -1);
-
- // if the public checkbox doesn't exist, default to showPublic == true
- var publicCheck = docSettings["PublicCheckbox"];
- var showPublic = (publicCheck == null) ? true : (publicCheck == "on");
-
- // if the protected checkbox doesn't exist, default to showProtected == true
- var protectedCheck = docSettings["ProtectedCheckbox"];
- var showProtected = (protectedCheck == null) ? true : (protectedCheck == "on");
-
- if ( (showProtected && isProtected) || (showPublic && isPublic) || isExplicitII || isPrivate)
- return true;
-
- return false;
-}
-
-function ShowBasedOnInheritance(memberdata)
-{
- var isInherited = (memberdata.indexOf("inherited") != -1);
- var isDeclared = (memberdata.indexOf("declared") != -1);
-
- // if the inherited checkbox doesn't exist, default to showInherited == true
- var inheritedCheck = docSettings["InheritedCheckbox"];
- var showInherited = (inheritedCheck == null) ? true : (inheritedCheck == "on");
-
- // if the declared checkbox doesn't exist, default to showDeclared == true
- var declaredCheck = docSettings["DeclaredCheckbox"];
- var showDeclared = (declaredCheck == null) ? true : (declaredCheck == "on");
-
- if ( (showInherited && isInherited) || (showDeclared && isDeclared) )
- return true;
-
- return false;
-}
-
-function ShowBasedOnFramework(memberdata)
-{
- var isNetfw = (memberdata.indexOf("notNetfw") == -1);
- var isNetcfw = (memberdata.indexOf("netcfw") != -1);
- var isXnafw = (memberdata.indexOf("xnafw") != -1);
-
- var netfwCheck = docSettings["netfwCheckbox"];
- var netcfwCheck = docSettings["netcfwCheckbox"];
- var xnafwCheck = docSettings["xnafwCheckbox"];
-
- // if all the checkboxes are null, it means we have no framework filter; so return true to show member by default
- if (netfwCheck == null && netcfwCheck == null && xnafwCheck == null)
- return true;
-
- var showNetfw = (netfwCheck == "on");
- var showNetcfw = (netcfwCheck == "on");
- var showXnafw = (xnafwCheck == "on");
-
- if ( (isNetfw && showNetfw) || (isNetcfw && showNetcfw) || (isXnafw && showXnafw) )
- return true;
-
- return false;
-}
-
-
-function SetDropdownMenuLabel(menu, dropdown)
-{
- var dropdownLabelId = menu.GetDropdownLabelId();
- dropdown.SetActivatorLabel(dropdownLabelId);
- for (var i = 0; i < dropdowns.length; i++)
- {
- dropdowns[i].reposition();
- }
-}
+//function codeBlockHandler(id, data, value) +function codeBlockHandler() +{ + // handle groups of snippets to make sure at least one from the group is always shown + HandleSnippetGroups(); + + // handle any remaining snippets that aren't in groups + var spanElements = document.getElementsByTagName("span"); + for(var i = 0; i < spanElements.length; ++i) + { + var devlang = spanElements[i].getAttribute("codeLanguage"); + if (devlang == null) continue; + + if (HasSnippetGroupAncestor(spanElements[i])) continue; + + var checkboxId = GetDevlangCheckboxId(devlang); + if (checkboxId != null && checkboxId != "") + { + if (docSettings[checkboxId] == "on") + spanElements[i].style.display = ""; + else + spanElements[i].style.display = "none"; + } + } +} + +function HasSnippetGroupAncestor(object) +{ + var parent = object.parentElement; + if (parent == null) return false; + + var className = parent.className; + if (className != null && className == "snippetgroup") + return true + + return HasSnippetGroupAncestor(parent); +} + +function HandleSnippetGroups() +{ + var divs = document.getElementsByTagName("DIV"); + var divclass; + for (var i = 0; i < divs.length; i++) + { + divclass = divs[i].className; + if (divclass == null || divclass != "snippetgroup") continue; + + // if all snippets in this group would be hidden by filtering display them all anyhow + var unfilteredCount = GetUnfilteredSnippetCount(divs[i]); + + var spanElements = divs[i].getElementsByTagName("span"); + for(var j = 0; j < spanElements.length; ++j) + { + var devlang = spanElements[j].getAttribute("codeLanguage"); + if (devlang == null) continue; + + var checkboxId = GetDevlangCheckboxId(devlang); + + // for filtered devlangs, determine whether they should be shown/hidden + if (checkboxId != null && checkboxId != "") + { + if (unfilteredCount == 0 || docSettings[checkboxId] == "on") + spanElements[j].style.display = ""; + else + spanElements[j].style.display = "none"; + } + } + } +} + +function GetUnfilteredSnippetCount(group) +{ + var count = 0; + var spanElements = group.getElementsByTagName("span"); + for(var i = 0; i < spanElements.length; ++i) + { + var devlang = spanElements[i].getAttribute("codeLanguage"); + var checkboxId = GetDevlangCheckboxId(devlang); + if (checkboxId != null && checkboxId != "") + { + if (docSettings[checkboxId] == "on") + count++; + } + } + return count; +} + +function GetDevlangCheckboxId(devlang) +{ + switch (devlang) + { + case "VisualBasic": + case "VisualBasicDeclaration": + case "VisualBasicUsage": + return devlangsMenu.GetCheckboxId("VisualBasic"); + case "CSharp": + return devlangsMenu.GetCheckboxId("CSharp"); + case "ManagedCPlusPlus": + return devlangsMenu.GetCheckboxId("ManagedCPlusPlus"); + case "JScript": + return devlangsMenu.GetCheckboxId("JScript"); + case "JSharp": + return devlangsMenu.GetCheckboxId("JSharp"); + case "JavaScript": + return devlangsMenu.GetCheckboxId("JavaScript"); + default: + return ""; + } +} + +// update stylesheet display settings for spans to show according to user's devlang preference +function styleSheetHandler(oneDevlang) +{ + var devlang = (oneDevlang != "") ? oneDevlang : GetDevlangPreference(); + + var sd = getStyleDictionary(); + + if (devlang == 'cs') { + sd['span.cs'].display = 'inline'; + sd['span.vb'].display = 'none'; + sd['span.cpp'].display = 'none'; + sd['span.nu'].display = 'none'; + } else if (devlang == 'vb') { + sd['span.cs'].display = 'none'; + sd['span.vb'].display = 'inline'; + sd['span.cpp'].display = 'none'; + sd['span.nu'].display = 'none'; + } else if (devlang == 'cpp') { + sd['span.cs'].display = 'none'; + sd['span.vb'].display = 'none'; + sd['span.cpp'].display = 'inline'; + sd['span.nu'].display = 'none'; + } else if (devlang == 'nu') { + sd['span.cs'].display = 'none'; + sd['span.vb'].display = 'none'; + sd['span.cpp'].display = 'none'; + sd['span.nu'].display = 'inline'; + } +} + +function getStyleDictionary() { + var styleDictionary = new Array(); + + // iterate through stylesheets + var sheets = document.styleSheets; + + for(var i=0; i<sheets.length;i++) { + var sheet = sheets[i]; + + // Ignore sheets at ms-help Urls + if (sheet.href.substr(0,8) == 'ms-help:') continue; + + // get sheet rules + var rules = sheet.cssRules; + + if (rules == null) rules = sheet.rules; + + // iterate through rules + for(j=0; j<rules.length; j++) { + var rule = rules[j]; + + // Ignore ones that aren't defined + if(rule.selectorText == null) + continue; + + // add rule to dictionary + styleDictionary[rule.selectorText.toLowerCase()] = rule.style; + } + } + + return(styleDictionary); +} + +function GetDevlangPreference() +{ + var devlangCheckboxIds = devlangsMenu.GetCheckboxIds(); + var checkedCount = 0; + var devlang; + for (var key in devlangCheckboxIds) + { + if (docSettings[devlangCheckboxIds[key]] == "on") + { + checkedCount++; + checkboxData = devlangsMenu.GetCheckboxData(devlangCheckboxIds[key]); + var dataSplits = checkboxData.split(','); + if (dataSplits.length > 1) + devlang = dataSplits[1]; + } + } + return (checkedCount == 1 ? devlang : "nu"); +} + + + +function memberlistHandler() +{ + // get all the <tr> nodes in the document + var allRows = document.getElementsByTagName("tr"); + var i; + + for(i = 0; i < allRows.length; ++i) + { + var memberdata = allRows[i].getAttribute("data"); + if (memberdata != null) + { + if ((ShowBasedOnInheritance(memberdata) == false) || + (ShowBasedOnVisibility(memberdata) == false) || + (ShowBasedOnFramework(memberdata) == false) ) + allRows[i].style.display = "none"; + else + allRows[i].style.display = ""; + } + } + + ShowHideFrameworkImages(); + ShowHideFrameworkSpans(); +} + +function ShowHideFrameworkImages() +{ + // show/hide img nodes for filtered framework icons + // get all the <img> nodes in the document + var allImgs = document.getElementsByTagName("img"); + + for(var i = 0; i < allImgs.length; i++) + { + var imgdata = allImgs[i].getAttribute("data"); + if (imgdata != null) + { + var checkboxId = imgdata + "Checkbox"; + if (docSettings[checkboxId] != "on") + { + allImgs[i].style.display = "none"; + } + else + allImgs[i].style.display = ""; + } + } +} + +function ShowHideFrameworkSpans() +{ + // show/hide img nodes for filtered framework icons + // get all the <img> nodes in the document + var allImgs = document.getElementsByTagName("span"); + + for(var i = 0; i < allImgs.length; i++) + { + var imgdata = allImgs[i].getAttribute("data"); + if (imgdata != null) + { + var checkboxId = imgdata + "Checkbox"; + if (docSettings[checkboxId] != "on") + { + allImgs[i].style.display = "none"; + } + else + allImgs[i].style.display = ""; + } + } +} + +function ShowBasedOnVisibility(memberdata) +{ + var isPublic = (memberdata.indexOf("public") != -1); + var isProtected = (memberdata.indexOf("protected") != -1); + var isPrivate = (memberdata.indexOf("private") != -1); + var isExplicitII = (memberdata.indexOf("explicit") != -1); + + // if the public checkbox doesn't exist, default to showPublic == true + var publicCheck = docSettings["PublicCheckbox"]; + var showPublic = (publicCheck == null) ? true : (publicCheck == "on"); + + // if the protected checkbox doesn't exist, default to showProtected == true + var protectedCheck = docSettings["ProtectedCheckbox"]; + var showProtected = (protectedCheck == null) ? true : (protectedCheck == "on"); + + if ( (showProtected && isProtected) || (showPublic && isPublic) || isExplicitII || isPrivate) + return true; + + return false; +} + +function ShowBasedOnInheritance(memberdata) +{ + var isInherited = (memberdata.indexOf("inherited") != -1); + var isDeclared = (memberdata.indexOf("declared") != -1); + + // if the inherited checkbox doesn't exist, default to showInherited == true + var inheritedCheck = docSettings["InheritedCheckbox"]; + var showInherited = (inheritedCheck == null) ? true : (inheritedCheck == "on"); + + // if the declared checkbox doesn't exist, default to showDeclared == true + var declaredCheck = docSettings["DeclaredCheckbox"]; + var showDeclared = (declaredCheck == null) ? true : (declaredCheck == "on"); + + if ( (showInherited && isInherited) || (showDeclared && isDeclared) ) + return true; + + return false; +} + +function ShowBasedOnFramework(memberdata) +{ + var isNetfw = (memberdata.indexOf("notNetfw") == -1); + var isNetcfw = (memberdata.indexOf("netcfw") != -1); + var isXnafw = (memberdata.indexOf("xnafw") != -1); + + var netfwCheck = docSettings["netfwCheckbox"]; + var netcfwCheck = docSettings["netcfwCheckbox"]; + var xnafwCheck = docSettings["xnafwCheckbox"]; + + // if all the checkboxes are null, it means we have no framework filter; so return true to show member by default + if (netfwCheck == null && netcfwCheck == null && xnafwCheck == null) + return true; + + var showNetfw = (netfwCheck == "on"); + var showNetcfw = (netcfwCheck == "on"); + var showXnafw = (xnafwCheck == "on"); + + if ( (isNetfw && showNetfw) || (isNetcfw && showNetcfw) || (isXnafw && showXnafw) ) + return true; + + return false; +} + + +function SetDropdownMenuLabel(menu, dropdown) +{ + var dropdownLabelId = menu.GetDropdownLabelId(); + dropdown.SetActivatorLabel(dropdownLabelId); + for (var i = 0; i < dropdowns.length; i++) + { + dropdowns[i].reposition(); + } +} |