view inkscape/firefox/content/themes/checkbox/change.js @ 604:38514a7c6b26 openvg

Linear gradient for OpenVG
author Thinker K.F. Li <thinker@branda.to>
date Sun, 04 Jul 2010 15:36:40 +0800
parents 4350aa369149
children
line wrap: on
line source

onchange : function (NODE, TREE_OBJ) { 
  var $this = $(NODE).is("li") ? $(NODE) : $(NODE).parent();
  if($this.children("a.unchecked").size() == 0) {
    TREE_OBJ.container.find("a").addClass("unchecked");
  }
  $this.children("a").removeClass("clicked");
  if($this.children("a").hasClass("checked")) {
    $this.find("li").andSelf().children("a").removeClass("checked").removeClass("undetermined").addClass("unchecked");
    var state = 0;
  }
  else {
    $this.find("li").andSelf().children("a").removeClass("unchecked").removeClass("undetermined").addClass("checked");
    var state = 1;
  }
  $this.parents("li").each(function () { 
    if(state == 1) {
      if($(this).find("a.unchecked, a.undetermined").size() - 1 > 0) {
        $(this).parents("li").andSelf().children("a").removeClass("unchecked").removeClass("checked").addClass("undetermined");
        return false;
      }
      else $(this).children("a").removeClass("unchecked").removeClass("undetermined").addClass("checked");
    }
    else {
      if($(this).find("a.checked, a.undetermined").size() - 1 > 0) {
        $(this).parents("li").andSelf().children("a").removeClass("unchecked").removeClass("checked").addClass("undetermined");
        return false;
      }
      else $(this).children("a").removeClass("checked").removeClass("undetermined").addClass("unchecked");
    }
  });
}