Edit

kc3-lang/SDL/visualtest/docs/html/dynsections.js

Branch :

  • Show log

    Commit

  • Author : Pierre-Loup A. Griffais
    Date : 2014-09-11 19:24:42
    Hash : 24c86b55
    Message : [X11] Reconcile logical keyboard state with physical state on FocusIn since the window system doesn't do it for us like other platforms. This prevents sticky keys and missed keys when going in and out of focus, for example Alt would appear to stick if switching away from an SDL app with Alt-Tab and had to be pressed again. CR: Sam

  • visualtest/docs/html/dynsections.js
  • 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');
    }
    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.attr('src','ftv2folderopen.png');
          a.attr('src','ftv2mnode.png');
          $(this).show();
        } else if (l==level+1) {
          i.attr('src','ftv2folderclosed.png');
          a.attr('src','ftv2pnode.png');
          $(this).show();
        } else {
          $(this).hide();
        }
      });
      updateStripes();
    }
    
    function toggleFolder(id)
    {
      //The clicked row
      var currentRow = $('#row_'+id);
      var currentRowImages = currentRow.find("img");
    
      //All rows after the clicked row
      var rows = currentRow.nextAll("tr");
    
      //Only match elements AFTER this one (can't hide elements before)
      var childRows = rows.filter(function() {
        var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
        return this.id.match(re);
      });
    
      //First row is visible we are HIDING
      if (childRows.filter(':first').is(':visible')===true) {
        currentRowImages.filter("[id^=arr]").attr('src', 'ftv2pnode.png');
        currentRowImages.filter("[id^=img]").attr('src', 'ftv2folderclosed.png');
        rows.filter("[id^=row_"+id+"]").hide();
      } else { //We are SHOWING
        //All sub images
        var childImages = childRows.find("img");
        var childImg = childImages.filter("[id^=img]");
        var childArr = childImages.filter("[id^=arr]");
    
        currentRow.find("[id^=arr]").attr('src', 'ftv2mnode.png'); //open row
        currentRow.find("[id^=img]").attr('src', 'ftv2folderopen.png'); //open row
        childImg.attr('src','ftv2folderclosed.png'); //children closed
        childArr.attr('src','ftv2pnode.png'); //children closed
        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');
      }
    }