Mercurial > MadButterfly
view inkscape/firefox/content/css.js @ 439:254854ed479c
Fix bug of _find_shape_in_pos().
It can not find a correct shape for a specified point.
Since it call _shape_pos_is_in_cairo() directly, cairo_new_path() is
not called to clear path after each calling for a shape. So, old path
would interference later testing. It should call _shape_pos_is_in()
instead of _shape_pos_is_in_cairo().
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Thu, 30 Jul 2009 15:42:47 +0800 |
parents | 4350aa369149 |
children |
line wrap: on
line source
function get_css(rule_name, stylesheet, delete_flag) { if (!document.styleSheets) return false; rule_name = rule_name.toLowerCase(); stylesheet = stylesheet || 0; for (var i = stylesheet; i < document.styleSheets.length; i++) { var styleSheet = document.styleSheets[i]; css_rules = document.styleSheets[i].cssRules || document.styleSheets[i].rules; if(!css_rules) continue; var j = 0; do { if(css_rules[j].selectorText.toLowerCase() == rule_name) { if(delete_flag == true) { if(document.styleSheets[i].removeRule) document.styleSheets[i].removeRule(j); if(document.styleSheets[i].deleteRule) document.styleSheets[i].deleteRule(j); return true; } else return css_rules[j]; } } while (css_rules[++j]); } return false; } function add_css(rule_name, stylesheet) { rule_name = rule_name.toLowerCase(); stylesheet = stylesheet || 0; if (!document.styleSheets || get_css(rule_name, stylesheet)) return false; (document.styleSheets[stylesheet].addRule) ? document.styleSheets[stylesheet].addRule(rule_name, null, 0) : document.styleSheets[stylesheet].insertRule(rule_name+' { }', 0); return get_css(rule_name); } function get_sheet_num (href_name) { if (!document.styleSheets) return false; for (var i = 0; i < document.styleSheets.length; i++) { if(document.styleSheets[i].href && document.styleSheets[i].href.toString().match(href_name)) return i; } return false; } function remove_css(rule_name, stylesheet) { return get_css(rule_name, stylesheet, true); } function add_sheet(url, media) { if(document.createStyleSheet) { document.createStyleSheet(url); } else { var newSS = document.createElement('link'); newSS.rel = 'stylesheet'; newSS.type = 'text/css'; newSS.media = media || "all"; newSS.href = url; // var styles = "@import url(' " + url + " ');"; // newSS.href ='data:text/css,'+escape(styles); document.getElementsByTagName("head")[0].appendChild(newSS); } }