131 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /*
 | |
|  @licstart  The following is the entire license notice for the JavaScript code in this file.
 | |
| 
 | |
|  The MIT License (MIT)
 | |
| 
 | |
|  Copyright (C) 1997-2020 by Dimitri van Heesch
 | |
| 
 | |
|  Permission is hereby granted, free of charge, to any person obtaining a copy of this software
 | |
|  and associated documentation files (the "Software"), to deal in the Software without restriction,
 | |
|  including without limitation the rights to use, copy, modify, merge, publish, distribute,
 | |
|  sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
 | |
|  furnished to do so, subject to the following conditions:
 | |
| 
 | |
|  The above copyright notice and this permission notice shall be included in all copies or
 | |
|  substantial portions of the Software.
 | |
| 
 | |
|  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
 | |
|  BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 | |
|  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
 | |
|  DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | |
|  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | |
| 
 | |
|  @licend  The above is the entire license notice for the JavaScript code in this file
 | |
|  */
 | |
| function toggleVisibility(linkObj)
 | |
| {
 | |
|  var base = $(linkObj).attr('id');
 | |
|  var summary = $('#'+base+'-summary');
 | |
|  var content = $('#'+base+'-content');
 | |
|  var trigger = $('#'+base+'-trigger');
 | |
|  var src=$(trigger).attr('src');
 | |
|  if (content.is(':visible')===true) {
 | |
|    content.hide();
 | |
|    summary.show();
 | |
|    $(linkObj).addClass('closed').removeClass('opened');
 | |
|    $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
 | |
|  } else {
 | |
|    content.show();
 | |
|    summary.hide();
 | |
|    $(linkObj).removeClass('closed').addClass('opened');
 | |
|    $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
 | |
|  }
 | |
|  return false;
 | |
| }
 | |
| 
 | |
| function updateStripes()
 | |
| {
 | |
|   $('table.directory tr').
 | |
|        removeClass('even').filter(':visible:even').addClass('even');
 | |
|   $('table.directory tr').
 | |
|        removeClass('odd').filter(':visible:odd').addClass('odd');
 | |
| }
 | |
| 
 | |
| function toggleLevel(level)
 | |
| {
 | |
|   $('table.directory tr').each(function() {
 | |
|     var l = this.id.split('_').length-1;
 | |
|     var i = $('#img'+this.id.substring(3));
 | |
|     var a = $('#arr'+this.id.substring(3));
 | |
|     if (l<level+1) {
 | |
|       i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
 | |
|       a.html('▼');
 | |
|       $(this).show();
 | |
|     } else if (l==level+1) {
 | |
|       i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
 | |
|       a.html('►');
 | |
|       $(this).show();
 | |
|     } else {
 | |
|       $(this).hide();
 | |
|     }
 | |
|   });
 | |
|   updateStripes();
 | |
| }
 | |
| 
 | |
| function toggleFolder(id)
 | |
| {
 | |
|   // the clicked row
 | |
|   var currentRow = $('#row_'+id);
 | |
| 
 | |
|   // all rows after the clicked row
 | |
|   var rows = currentRow.nextAll("tr");
 | |
| 
 | |
|   var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
 | |
| 
 | |
|   // only match elements AFTER this one (can't hide elements before)
 | |
|   var childRows = rows.filter(function() { return this.id.match(re); });
 | |
| 
 | |
|   // first row is visible we are HIDING
 | |
|   if (childRows.filter(':first').is(':visible')===true) {
 | |
|     // replace down arrow by right arrow for current row
 | |
|     var currentRowSpans = currentRow.find("span");
 | |
|     currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
 | |
|     currentRowSpans.filter(".arrow").html('►');
 | |
|     rows.filter("[id^=row_"+id+"]").hide(); // hide all children
 | |
|   } else { // we are SHOWING
 | |
|     // replace right arrow by down arrow for current row
 | |
|     var currentRowSpans = currentRow.find("span");
 | |
|     currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
 | |
|     currentRowSpans.filter(".arrow").html('▼');
 | |
|     // replace down arrows by right arrows for child rows
 | |
|     var childRowsSpans = childRows.find("span");
 | |
|     childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
 | |
|     childRowsSpans.filter(".arrow").html('►');
 | |
|     childRows.show(); //show all children
 | |
|   }
 | |
|   updateStripes();
 | |
| }
 | |
| 
 | |
| 
 | |
| function toggleInherit(id)
 | |
| {
 | |
|   var rows = $('tr.inherit.'+id);
 | |
|   var img = $('tr.inherit_header.'+id+' img');
 | |
|   var src = $(img).attr('src');
 | |
|   if (rows.filter(':first').is(':visible')===true) {
 | |
|     rows.css('display','none');
 | |
|     $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
 | |
|   } else {
 | |
|     rows.css('display','table-row'); // using show() causes jump in firefox
 | |
|     $(img).attr('src',src.substring(0,src.length-10)+'open.png');
 | |
|   }
 | |
| }
 | |
| /* @license-end */
 | |
| $(document).ready(function() {
 | |
|   $('.code,.codeRef').each(function() {
 | |
|     $(this).data('powertip',$('#a'+$(this).attr('href').replace(/.*\//,'').replace(/[^a-z_A-Z0-9]/g,'_')).html());
 | |
|     $.fn.powerTip.smartPlacementLists.s = [ 's', 'n', 'ne', 'se' ];
 | |
|     $(this).powerTip({ placement: 's', smartPlacement: true, mouseOnToPopup: true });
 | |
|   });
 | |
| });
 |