aboutsummaryrefslogtreecommitdiff
path: root/latest/api/lib/template.js
diff options
context:
space:
mode:
Diffstat (limited to 'latest/api/lib/template.js')
-rw-r--r--latest/api/lib/template.js500
1 files changed, 0 insertions, 500 deletions
diff --git a/latest/api/lib/template.js b/latest/api/lib/template.js
deleted file mode 100644
index 798a2d4..0000000
--- a/latest/api/lib/template.js
+++ /dev/null
@@ -1,500 +0,0 @@
-// © 2009–2010 EPFL/LAMP
-// code by Gilles Dubochet with contributions by Pedro Furlanetto and Marcin Kubala
-
-$(document).ready(function(){
-
- var controls = {
- visibility: {
- publicOnly: $("#visbl").find("> ol > li.public"),
- all: $("#visbl").find("> ol > li.all")
- }
- };
-
- // Escapes special characters and returns a valid jQuery selector
- function escapeJquery(str){
- return str.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=<>\|])/g, '\\$1');
- }
-
- function toggleVisibilityFilter(ctrlToEnable, ctrToDisable) {
- if (ctrlToEnable.hasClass("out")) {
- ctrlToEnable.removeClass("out").addClass("in");
- ctrToDisable.removeClass("in").addClass("out");
- filter();
- }
- }
-
- controls.visibility.publicOnly.click(function () {
- toggleVisibilityFilter(controls.visibility.publicOnly, controls.visibility.all);
- });
-
- controls.visibility.all.click(function () {
- toggleVisibilityFilter(controls.visibility.all, controls.visibility.publicOnly);
- });
-
- function exposeMember(jqElem) {
- var jqElemParent = jqElem.parent(),
- parentName = jqElemParent.attr("name"),
- linearizationName = /^([^#]*)(#.*)?$/gi.exec(parentName)[1];
-
- // switch visibility filter if necessary
- if (jqElemParent.attr("visbl") == "prt") {
- toggleVisibilityFilter(controls.visibility.all, controls.visibility.publicOnly);
- }
-
- // toggle appropriate linearization buttons
- if (linearizationName) {
- $("#linearization li.out[name='" + linearizationName + "']").removeClass("out").addClass("in");
- }
-
- filter();
- window.scrollTo(0, 0);
- jqElemParent.effect("highlight", {color: "#FFCC85"}, 3000);
- $('html,body').animate({scrollTop: jqElemParent.offset().top}, 1000);
- }
-
- var isHiddenClass = function (name) {
- return name == 'scala.Any' ||
- name == 'scala.AnyRef';
- };
-
- var isHidden = function (elem) {
- return $(elem).attr("data-hidden") == 'true';
- };
-
- $("#linearization li:gt(0)").filter(function(){
- return isHiddenClass($(this).attr("name"));
- }).removeClass("in").addClass("out");
-
- $("#implicits li").filter(function(){
- return isHidden(this);
- }).removeClass("in").addClass("out");
-
- // Pre-filter members
- filter();
-
- // Member filter box
- var input = $("#textfilter input");
- input.bind("keyup", function(event) {
-
- switch ( event.keyCode ) {
-
- case 27: // escape key
- input.val("");
- filter(true);
- break;
-
- case 38: // up
- input.val("");
- filter(false);
- window.scrollTo(0, $("body").offset().top);
- input.focus();
- break;
-
- case 33: //page up
- input.val("");
- filter(false);
- break;
-
- case 34: //page down
- input.val("");
- filter(false);
- break;
-
- default:
- window.scrollTo(0, $("#mbrsel").offset().top);
- filter(true);
- break;
-
- }
- });
- input.focus(function(event) {
- input.select();
- });
- $("#textfilter > .post").click(function() {
- $("#textfilter input").attr("value", "");
- filter();
- });
- $(document).keydown(function(event) {
-
- if (event.keyCode == 9) { // tab
- $("#index-input", window.parent.document).focus();
- input.attr("value", "");
- return false;
- }
- });
-
- $("#linearization li").click(function(){
- if ($(this).hasClass("in")) {
- $(this).removeClass("in");
- $(this).addClass("out");
- }
- else if ($(this).hasClass("out")) {
- $(this).removeClass("out");
- $(this).addClass("in");
- }
- filter();
- });
-
- $("#implicits li").click(function(){
- if ($(this).hasClass("in")) {
- $(this).removeClass("in");
- $(this).addClass("out");
- }
- else if ($(this).hasClass("out")) {
- $(this).removeClass("out");
- $(this).addClass("in");
- }
- filter();
- });
-
- $("#mbrsel > div[id=ancestors] > ol > li.hideall").click(function() {
- $("#linearization li.in").removeClass("in").addClass("out");
- $("#linearization li:first").removeClass("out").addClass("in");
- $("#implicits li.in").removeClass("in").addClass("out");
-
- if ($(this).hasClass("out") && $("#mbrsel > div[id=ancestors] > ol > li.showall").hasClass("in")) {
- $(this).removeClass("out").addClass("in");
- $("#mbrsel > div[id=ancestors] > ol > li.showall").removeClass("in").addClass("out");
- }
-
- filter();
- })
- $("#mbrsel > div[id=ancestors] > ol > li.showall").click(function() {
- var filteredLinearization =
- $("#linearization li.out").filter(function() {
- return ! isHiddenClass($(this).attr("name"));
- });
- filteredLinearization.removeClass("out").addClass("in");
-
- var filteredImplicits =
- $("#implicits li.out").filter(function() {
- return ! isHidden(this);
- });
- filteredImplicits.removeClass("out").addClass("in");
-
- if ($(this).hasClass("out") && $("#mbrsel > div[id=ancestors] > ol > li.hideall").hasClass("in")) {
- $(this).removeClass("out").addClass("in");
- $("#mbrsel > div[id=ancestors] > ol > li.hideall").removeClass("in").addClass("out");
- }
-
- filter();
- });
- $("#order > ol > li.alpha").click(function() {
- if ($(this).hasClass("out")) {
- orderAlpha();
- }
- })
- $("#order > ol > li.inherit").click(function() {
- if ($(this).hasClass("out")) {
- orderInherit();
- }
- });
- $("#order > ol > li.group").click(function() {
- if ($(this).hasClass("out")) {
- orderGroup();
- }
- });
- $("#groupedMembers").hide();
-
- initInherit();
-
- // Create tooltips
- $(".extype").add(".defval").tooltip({
- tip: "#tooltip",
- position: "top center",
- predelay: 500,
- onBeforeShow: function(ev) {
- $(this.getTip()).text(this.getTrigger().attr("name"));
- }
- });
-
- /* Add toggle arrows */
- //var docAllSigs = $("#template li").has(".fullcomment").find(".signature");
- // trying to speed things up a little bit
- var docAllSigs = $("#template li[fullComment=yes] .signature");
-
- function commentToggleFct(signature){
- var parent = signature.parent();
- var shortComment = $(".shortcomment", parent);
- var fullComment = $(".fullcomment", parent);
- var vis = $(":visible", fullComment);
- signature.toggleClass("closed").toggleClass("opened");
- if (vis.length > 0) {
- shortComment.slideDown(100);
- fullComment.slideUp(100);
- }
- else {
- shortComment.slideUp(100);
- fullComment.slideDown(100);
- }
- };
- docAllSigs.addClass("closed");
- docAllSigs.click(function() {
- commentToggleFct($(this));
- });
-
- /* Linear super types and known subclasses */
- function toggleShowContentFct(e){
- e.toggleClass("open");
- var content = $(".hiddenContent", e.parent().get(0));
- if (content.is(':visible')) {
- content.slideUp(100);
- }
- else {
- content.slideDown(100);
- }
- };
-
- $(".toggle:not(.diagram-link)").click(function() {
- toggleShowContentFct($(this));
- });
-
- // Set parent window title
- windowTitle();
-
- if ($("#order > ol > li.group").length == 1) { orderGroup(); };
-
- function findElementByHash(locationHash) {
- var temp = locationHash.replace('#', '');
- var memberSelector = '#' + escapeJquery(temp);
- return $(memberSelector);
- }
-
- // highlight and jump to selected member
- if (window.location.hash) {
- var jqElem = findElementByHash(window.location.hash);
- if (jqElem.length > 0) {
- exposeMember(jqElem);
- }
- }
-});
-
-function orderAlpha() {
- $("#order > ol > li.alpha").removeClass("out").addClass("in");
- $("#order > ol > li.inherit").removeClass("in").addClass("out");
- $("#order > ol > li.group").removeClass("in").addClass("out");
- $("#template > div.parent").hide();
- $("#template > div.conversion").hide();
- $("#mbrsel > div[id=ancestors]").show();
- filter();
-};
-
-function orderInherit() {
- $("#order > ol > li.inherit").removeClass("out").addClass("in");
- $("#order > ol > li.alpha").removeClass("in").addClass("out");
- $("#order > ol > li.group").removeClass("in").addClass("out");
- $("#template > div.parent").show();
- $("#template > div.conversion").show();
- $("#mbrsel > div[id=ancestors]").hide();
- filter();
-};
-
-function orderGroup() {
- $("#order > ol > li.group").removeClass("out").addClass("in");
- $("#order > ol > li.alpha").removeClass("in").addClass("out");
- $("#order > ol > li.inherit").removeClass("in").addClass("out");
- $("#template > div.parent").hide();
- $("#template > div.conversion").hide();
- $("#mbrsel > div[id=ancestors]").show();
- filter();
-};
-
-/** Prepares the DOM for inheritance-based display. To do so it will:
- * - hide all statically-generated parents headings;
- * - copy all members from the value and type members lists (flat members) to corresponding lists nested below the
- * parent headings (inheritance-grouped members);
- * - initialises a control variable used by the filter method to control whether filtering happens on flat members
- * or on inheritance-grouped members. */
-function initInherit() {
- // inheritParents is a map from fully-qualified names to the DOM node of parent headings.
- var inheritParents = new Object();
- var groupParents = new Object();
- $("#inheritedMembers > div.parent").each(function(){
- inheritParents[$(this).attr("name")] = $(this);
- });
- $("#inheritedMembers > div.conversion").each(function(){
- inheritParents[$(this).attr("name")] = $(this);
- });
- $("#groupedMembers > div.group").each(function(){
- groupParents[$(this).attr("name")] = $(this);
- });
-
- $("#types > ol > li").each(function(){
- var mbr = $(this);
- this.mbrText = mbr.find("> .fullcomment .cmt").text();
- var qualName = mbr.attr("name");
- var owner = qualName.slice(0, qualName.indexOf("#"));
- var name = qualName.slice(qualName.indexOf("#") + 1);
- var inheritParent = inheritParents[owner];
- if (inheritParent != undefined) {
- var types = $("> .types > ol", inheritParent);
- if (types.length == 0) {
- inheritParent.append("<div class='types members'><h3>Type Members</h3><ol></ol></div>");
- types = $("> .types > ol", inheritParent);
- }
- var clone = mbr.clone();
- clone[0].mbrText = this.mbrText;
- types.append(clone);
- }
- var group = mbr.attr("group")
- var groupParent = groupParents[group];
- if (groupParent != undefined) {
- var types = $("> .types > ol", groupParent);
- if (types.length == 0) {
- groupParent.append("<div class='types members'><ol></ol></div>");
- types = $("> .types > ol", groupParent);
- }
- var clone = mbr.clone();
- clone[0].mbrText = this.mbrText;
- types.append(clone);
- }
- });
-
- $("#values > ol > li").each(function(){
- var mbr = $(this);
- this.mbrText = mbr.find("> .fullcomment .cmt").text();
- var qualName = mbr.attr("name");
- var owner = qualName.slice(0, qualName.indexOf("#"));
- var name = qualName.slice(qualName.indexOf("#") + 1);
- var inheritParent = inheritParents[owner];
- if (inheritParent != undefined) {
- var values = $("> .values > ol", inheritParent);
- if (values.length == 0) {
- inheritParent.append("<div class='values members'><h3>Value Members</h3><ol></ol></div>");
- values = $("> .values > ol", inheritParent);
- }
- var clone = mbr.clone();
- clone[0].mbrText = this.mbrText;
- values.append(clone);
- }
- var group = mbr.attr("group")
- var groupParent = groupParents[group];
- if (groupParent != undefined) {
- var values = $("> .values > ol", groupParent);
- if (values.length == 0) {
- groupParent.append("<div class='values members'><ol></ol></div>");
- values = $("> .values > ol", groupParent);
- }
- var clone = mbr.clone();
- clone[0].mbrText = this.mbrText;
- values.append(clone);
- }
- });
- $("#inheritedMembers > div.parent").each(function() {
- if ($("> div.members", this).length == 0) { $(this).remove(); };
- });
- $("#inheritedMembers > div.conversion").each(function() {
- if ($("> div.members", this).length == 0) { $(this).remove(); };
- });
- $("#groupedMembers > div.group").each(function() {
- if ($("> div.members", this).length == 0) { $(this).remove(); };
- });
-};
-
-/* filter used to take boolean scrollToMember */
-function filter() {
- var query = $.trim($("#textfilter input").val()).toLowerCase();
- query = query.replace(/[-[\]{}()*+?.,\\^$|#]/g, "\\$&").replace(/\s+/g, "|");
- var queryRegExp = new RegExp(query, "i");
- var privateMembersHidden = $("#visbl > ol > li.public").hasClass("in");
- var orderingAlphabetic = $("#order > ol > li.alpha").hasClass("in");
- var orderingInheritance = $("#order > ol > li.inherit").hasClass("in");
- var orderingGroups = $("#order > ol > li.group").hasClass("in");
- var hiddenSuperclassElementsLinearization = orderingInheritance ? $("#linearization > li:gt(0)") : $("#linearization > li.out");
- var hiddenSuperclassesLinearization = hiddenSuperclassElementsLinearization.map(function() {
- return $(this).attr("name");
- }).get();
- var hiddenSuperclassElementsImplicits = orderingInheritance ? $("#implicits > li") : $("#implicits > li.out");
- var hiddenSuperclassesImplicits = hiddenSuperclassElementsImplicits.map(function() {
- return $(this).attr("name");
- }).get();
-
- var hideInheritedMembers;
-
- if (orderingAlphabetic) {
- $("#allMembers").show();
- $("#inheritedMembers").hide();
- $("#groupedMembers").hide();
- hideInheritedMembers = true;
- $("#allMembers > .members").each(filterFunc);
- } else if (orderingGroups) {
- $("#groupedMembers").show();
- $("#inheritedMembers").hide();
- $("#allMembers").hide();
- hideInheritedMembers = true;
- $("#groupedMembers > .group > .members").each(filterFunc);
- $("#groupedMembers > div.group").each(function() {
- $(this).show();
- if ($("> div.members", this).not(":hidden").length == 0) {
- $(this).hide();
- } else {
- $(this).show();
- }
- });
- } else if (orderingInheritance) {
- $("#inheritedMembers").show();
- $("#groupedMembers").hide();
- $("#allMembers").hide();
- hideInheritedMembers = false;
- $("#inheritedMembers > .parent > .members").each(filterFunc);
- $("#inheritedMembers > .conversion > .members").each(filterFunc);
- }
-
-
- function filterFunc() {
- var membersVisible = false;
- var members = $(this);
- members.find("> ol > li").each(function() {
- var mbr = $(this);
- if (privateMembersHidden && mbr.attr("visbl") == "prt") {
- mbr.hide();
- return;
- }
- var name = mbr.attr("name");
- // Owner filtering must not happen in "inherited from" member lists
- if (hideInheritedMembers) {
- var ownerIndex = name.indexOf("#");
- if (ownerIndex < 0) {
- ownerIndex = name.lastIndexOf(".");
- }
- var owner = name.slice(0, ownerIndex);
- for (var i = 0; i < hiddenSuperclassesLinearization.length; i++) {
- if (hiddenSuperclassesLinearization[i] == owner) {
- mbr.hide();
- return;
- }
- };
- for (var i = 0; i < hiddenSuperclassesImplicits.length; i++) {
- if (hiddenSuperclassesImplicits[i] == owner) {
- mbr.hide();
- return;
- }
- };
- }
- if (query && !(queryRegExp.test(name) || queryRegExp.test(this.mbrText))) {
- mbr.hide();
- return;
- }
- mbr.show();
- membersVisible = true;
- });
-
- if (membersVisible)
- members.show();
- else
- members.hide();
- };
-
- return false;
-};
-
-function windowTitle()
-{
- try {
- parent.document.title=document.title;
- }
- catch(e) {
- // Chrome doesn't allow settings the parent's title when
- // used on the local file system.
- }
-};