//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"); case "FSharp": return devlangsMenu.GetCheckboxId("FSharp"); 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'; sd['span.fs'].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'; sd['span.fs'].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'; sd['span.fs'].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'; sd['span.fs'].display = 'none'; } else if (devlang == 'fs') { sd['span.cs'].display = 'none'; sd['span.vb'].display = 'none'; sd['span.cpp'].display = 'none'; sd['span.nu'].display = 'none'; sd['span.fs'].display = 'inline'; } } function getStyleDictionary() { var styleDictionary = new Array(); // iterate through stylesheets var sheets = document.styleSheets; for(var i=0; i 1) devlang = dataSplits[1]; } } return (checkedCount == 1 ? devlang : "nu"); } function memberlistHandler() { // get all the 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"; allRows[i].style.display = ""; else allRows[i].style.display = ""; } } ShowHideFrameworkImages(); ShowHideFrameworkSpans(); } function ShowHideFrameworkImages() { // show/hide img nodes for filtered framework icons // get all the 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 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(); } }