[Sie-announce] SIEコード [2605] 0. 75統合

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2011年 4月 17日 (日) 23:01:01 JST


Revision: 2605
          http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2605
Author:   dhrname
Date:     2011-04-17 23:01:01 +0900 (Sun, 17 Apr 2011)

Log Message:
-----------
0.75統合

Modified Paths:
--------------
    trunk/sie.js

Property Changed:
----------------
    trunk/sie.js

Modified: trunk/sie.js
===================================================================
--- trunk/sie.js	2011-04-17 13:58:27 UTC (rev 2604)
+++ trunk/sie.js	2011-04-17 14:01:01 UTC (rev 2605)
@@ -1698,6 +1698,20 @@
       return "";
     }
   },
+  _isFillStroke : {
+    "fill" : 1,
+    "stroke" : 1
+  },
+  _isColor : {
+    "color" : 1
+  },
+  _isStop : {
+    "stop-color" : 1
+  },
+  _isRS : {
+    "r" : 1,
+    "#" : 1
+  },
   /*setPropertyメソッド
    *プロパティを宣言内で、明示的に設定。継承は無視する
    */
@@ -1718,14 +1732,14 @@
       tg.cssText = cssText;
       ti = tg;
     } else {
-      if ((propertyName === "fill") || (propertyName === "stroke")) {
+      if (this._isFillStroke[propertyName]) {
         /*fill、strokeプロパティは別途、SVGPaintで処理(JavaScriptでは、型キャストを使えないため)
          *CSSPrimitiveValueオブジェクトとSVGPaintオブジェクトを最後に置き換える
          */
         ti = new SVGPaint();
         paintType = /*SVGPaint.SVG_PAINTTYPE_UNKNOWN*/ 0;
         v1 = value.charAt(0);
-        if ((v1 === "#") || ti._keywords[value] || (v1 === "r")) {
+        if (this._isRS[v1] || ti._keywords[value]) {
           paintType = /*SVGPaint.SVG_PAINTTYPE_RGBCOLOR*/ 1;
           color = value;
         } else if (value === "none") {
@@ -1739,7 +1753,11 @@
         }
         ti.setPaint(paintType, uri, color, null);
         paintType = v1 = uri = color = null;
-      } else if (propertyName === "color") {
+      } else if (this._isStop[propertyName]) {
+        ti = new SVGColor();
+        ti.colorType = /*SVGColor.SVG_COLORTYPE_RGBCOLOR*/ 1;
+        ti.setRGBColor(value);
+      } else if (this._isColor[propertyName]) {
         ti = new CSSPrimitiveValue();
         fill = this.getPropertyCSSValue("fill");
         stroke = this.getPropertyCSSValue("stroke");
@@ -1892,13 +1910,13 @@
   if (CSSPrimitiveValue.CSS_DIMENSION >= stringType && stringType >= CSSPrimitiveValue.CSS_COUNTER) { //文字列型をサポートしないCSS単位である場合
     throw new DOMException(DOMException.INVALID_ACCESS_ERR);
   }
-  this.cssText = stringValue;
+  this._value = stringValue;
 };
-/*string*/ CSSPrimitiveValue.prototype.getStringValue = function() {
+/*string*/ CSSPrimitiveValue.prototype.getStringValue = function(/*short*/ stringType) {
   if (CSSPrimitiveValue.CSS_DIMENSION >= stringType && stringType >= CSSPrimitiveValue.CSS_COUNTER) { //文字列型をサポートしないCSS単位である場合
     throw new DOMException(DOMException.INVALID_ACCESS_ERR);
   }
-  return (this.cssText);
+  return (this._value);
 };
 /*Counter*/ CSSPrimitiveValue.prototype.getCounterValue = function() {
   if (this.primitiveType !== CSSPrimitiveValue.CSS_COUNTER) { //Counter型ではないとき
@@ -2356,7 +2374,7 @@
   /*readonly attribute SVGAnimatedTransformList*/ this.transform = new SVGAnimatedTransformList();
   //描画の際、SVGStylabaleで指定しておいたプロパティの処理をする
   this.addEventListener("DOMAttrModified", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return;
     }
     var name = evt.attrName,
@@ -2473,55 +2491,53 @@
       tar.addEventListener(v, document._s, false);
     } else if (evt.relatedNode.nodeName === "xml:base") { //xml:base属性ならば
       tar.xmlbase = evt.newValue;
-    } else {
-      if (!!tar[name]) {
-        var tea = tar[name],
-            tod = tar.ownerDocument.documentElement,
-            tvw = tod.viewport.width,
-            tvh = tod.viewport.height,
-            n,
-            type,
-            _parseFloat,
-            s;
-        if (tea instanceof SVGAnimatedLength) {
-          n = evt.newValue.match(tar._NaNReg);
-          type = /*SVGLength.SVG_LENGTHTYPE_NUMBER*/ 1;
-          _parseFloat = parseFloat;
-          if (!!n) {
-            n = n[0];
+    } else if (!!tar[name]) {
+      var tea = tar[name],
+      tod = tar.ownerDocument.documentElement,
+      tvw = tod.viewport.width,
+      tvh = tod.viewport.height,
+      n,
+      type,
+      _parseFloat,
+      s;
+      if (tea instanceof SVGAnimatedLength) {
+        n = evt.newValue.match(tar._NaNReg);
+        type = /*SVGLength.SVG_LENGTHTYPE_NUMBER*/ 1;
+        _parseFloat = parseFloat;
+        if (!!n) {
+          n = n[0];
+        }
+        if (n === "%") {
+          if (tar._x1width[name]) {
+            tea.baseVal._percent = tvw * 0.01;
+          } else if (tar._y1height[name]) {
+            tea.baseVal._percent = tvh * 0.01;
+          } else {
+            tea.baseVal._percent = Math.sqrt((tvw*tvw + tvh*tvh) / 2) * 0.01;
           }
-          if (n === "%") {
-            if (tar._x1width[name]) {
-              tea.baseVal._percent = tvw * 0.01;
-            } else if (tar._y1height[name]) {
-              tea.baseVal._percent = tvh * 0.01;
-            } else {
-              tea.baseVal._percent = Math.sqrt((tvw*tvw + tvh*tvh) / 2) * 0.01;
-            }
-            type = /*SVGLength.SVG_LENGTHTYPE_PERCENTAGE*/ 2;
-          } else if (n === "em") {
-            type = /*SVGLength.SVG_LENGTHTYPE_EMS*/ 3;
-          } else if (n === "ex") {
-            type = /*SVGLength.SVG_LENGTHTYPE_EXS*/ 4;
-          } else if (n === "px") {
-            type = /*SVGLength.SVG_LENGTHTYPE_PX*/ 5;
-          } else if (n === "cm") {
-            type = /*SVGLength.SVG_LENGTHTYPE_CM*/ 6;
-          } else if (n === "mm") {
-            type = /*SVGLength.SVG_LENGTHTYPE_MM*/ 7;
-          } else if (n === "in") {
-            type = /*SVGLength.SVG_LENGTHTYPE_IN*/ 8;
-          } else if (n === "pt") {
-            type = /*SVGLength.SVG_LENGTHTYPE_PT*/ 9;
-          } else if (n === "pc") {
-            type = /*SVGLength.SVG_LENGTHTYPE_PC*/ 10;
-          }
-          s = _parseFloat(evt.newValue);
-          s = isNaN(s) ? 0 : s;
-          tea.baseVal.newValueSpecifiedUnits(type, s);
+          type = /*SVGLength.SVG_LENGTHTYPE_PERCENTAGE*/ 2;
+        } else if (n === "em") {
+          type = /*SVGLength.SVG_LENGTHTYPE_EMS*/ 3;
+        } else if (n === "ex") {
+          type = /*SVGLength.SVG_LENGTHTYPE_EXS*/ 4;
+        } else if (n === "px") {
+          type = /*SVGLength.SVG_LENGTHTYPE_PX*/ 5;
+        } else if (n === "cm") {
+          type = /*SVGLength.SVG_LENGTHTYPE_CM*/ 6;
+        } else if (n === "mm") {
+          type = /*SVGLength.SVG_LENGTHTYPE_MM*/ 7;
+        } else if (n === "in") {
+          type = /*SVGLength.SVG_LENGTHTYPE_IN*/ 8;
+        } else if (n === "pt") {
+          type = /*SVGLength.SVG_LENGTHTYPE_PT*/ 9;
+        } else if (n === "pc") {
+          type = /*SVGLength.SVG_LENGTHTYPE_PC*/ 10;
         }
-        tea = tod = tvw = tvh = n = type = _parseFloat = s = null;
+        s = _parseFloat(evt.newValue);
+        s = isNaN(s) ? 0 : s;
+        tea.baseVal.newValueSpecifiedUnits(type, s);
       }
+      tea = tod = tvw = tvh = n = type = _parseFloat = s = null;
     }
     evt = _parseFloat = name = tar = null;
   }, false);
@@ -2860,20 +2876,21 @@
   return this;
 };
 function SVGAngle() { 
-  /*readonly attribute unsigned short*/ this.unitType = 0;
-  /*attribute float*/     this.value = 0;
-                       // raises DOMException on setting
-  /*attribute float*/     this.valueInSpecifiedUnits;
-                       // raises DOMException on setting
-  /*attribute DOMString*/ this.valueAsString;
-                       // raises DOMException on setting
   return this;
 };
 SVGAngle.prototype = {
+  /*readonly attribute unsigned short*/ unitType : 0,
+  /*attribute float*/     value : 0,
+                         // raises DOMException on setting
+  /*attribute float*/     valueInSpecifiedUnits : 0,
+                         // raises DOMException on setting
+  /*attribute DOMString*/ valueAsString : "0",
+                         // raises DOMException on setting
   /*void*/ newValueSpecifiedUnits : function (/*in unsigned short*/ unitType, /*in float*/ valueInSpecifiedUnits ) {
     var n = 1,
-        _s = ""; //nは各単位から利用単位への変換数値。_sは単位の文字列を表す
-    if (unitType === SVGAngle.SVG_ANGLETYPE_DEG) {
+        _s = ""; //nは各単位から度への変換数値。_sは単位の文字列を表す
+    if (unitType === SVGAngle.SVG_ANGLETYPE_UNSPECIFIED) {
+    } else if (unitType === SVGAngle.SVG_ANGLETYPE_DEG) {
       _s = "deg"
     } else if (unitType === SVGAngle.SVG_ANGLETYPE_RAD) {
       n =  Math.PI / 180;
@@ -2881,11 +2898,13 @@
     } else if (unitType === SVGAngle.SVG_ANGLETYPE_GRAD) {
       n = 9 / 10;
       _s = "grad";
+    } else {
+      throw new DOMException(DOMException.NOT_SUPPORTED_ERR);
     }
     this.unitType = unitType;
     this.value = valueInSpecifiedUnits * n;
     this.valueInSpecifiedUnits = valueInSpecifiedUnits;
-    this.valuAsString = valueInSpecifiedUnits + _s;
+    this.valueAsString = valueInSpecifiedUnits + _s;
     n = _s = null;
     //raises( DOMException );
   },
@@ -2913,10 +2932,8 @@
   return this;
 };
 function SVGColor() {
-  CSSValue.call(this, arguments);
-  /*readonly unsigned short*/ this.colorType = /*SVGColor.SVG_COLORTYPE_UNKNOWN*/ 0;
+  CSSValue.apply(this);
   /*readonly css::RGBColor*/  this.rgbColor  = new RGBColor();
-  /*readonly SVGICCColor*/    this.iccColor;
   return this;
 };
 
@@ -2928,6 +2945,8 @@
 SVGColor.prototype = new CSSValue();  //ノードのプロトタイプチェーンを作って、継承
 SVGColor.constructor = CSSValue;
 
+/*readonly unsigned short*/ SVGColor.prototype.colorType = /*SVGColor.SVG_COLORTYPE_UNKNOWN*/ 0;
+/*readonly SVGICCColor*/    SVGColor.prototype.iccColor = null;
 /*void*/ SVGColor.prototype.setRGBColor = function(/*DOMString*/ rgbColor ){
   var tkr = this._keywords[rgbColor],
       s,
@@ -3190,7 +3209,7 @@
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
     var tar = evt.target;
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     tar.addEventListener("DOMNodeInsertedIntoDocument", function(evt){
@@ -3391,7 +3410,7 @@
    *随時、属性の値をDOMプロパティに変換しておくリスナー登録
    */
   this.addEventListener("DOMAttrModified", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target,
@@ -3452,7 +3471,7 @@
   }, false);
   this.addEventListener("SVGLoad", function(evt){
     evt.target.addEventListener("DOMAttrModified", function(evt){
-      if (evt.eventPhase === Event.BUBBLING_PHASE) {
+      if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
         var tar = evt.target,
         evtt;
         if (tar.parentNode) {
@@ -3480,7 +3499,6 @@
 SVGSVGElement.prototype = new SVGElement();
 /*void*/          SVGSVGElement.prototype.forceRedraw = function() {
 };
-
 /*float*/         SVGSVGElement.prototype.getCurrentTime = function(){
   return (this._currentTime);
 };
@@ -3492,6 +3510,12 @@
   s.value = 0;
   return s;
 };
+/*SVGAngle*/     SVGSVGElement.prototype.createSVGAngle = function(){
+  var s = new SVGAngle();
+  s.value = 0;
+  s.unitType = 1;
+  return s;
+};
 /*SVGLength*/     SVGSVGElement.prototype.createSVGLength = function(){
   var s = new SVGLength();
   s.unitType = /*SVG_LENGTHTYPE_NUMBER*/ 1;
@@ -3664,7 +3688,7 @@
     }
     tnext = tpar = isLast = null;
     tar.addEventListener("DOMAttrModified", function(evt){
-      if (evt.eventPhase === Event.BUBBLING_PHASE) {
+      if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
         return; //強制終了させる
       }
       var tar = evt.target;
@@ -3732,7 +3756,7 @@
   /*readonly SVGElementInstance*/ this.instanceRoot = new SVGElementInstance(); //参照先インスタンスのルート
   /*readonly SVGElementInstance*/ this.animatedInstanceRoot = new SVGElementInstance();//アニメの最中のインスタンス。静止中は通常
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     evt.target.setAttributeNS("http://www.w3.org/1999/xlink", "xlink:show", "embed");
@@ -3794,7 +3818,7 @@
   /*readonly SVGAnimatedLength*/ this.height = new SVGAnimatedLength();
   /*readonly SVGAnimatedPreserveAspectRatio*/ this.preserveAspectRatio = new SVGAnimatedPreserveAspectRatio();
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target;
@@ -4589,6 +4613,10 @@
 
 /*documentは引数の変数として登録しておく*/
 (function(_doc, _pInt, _math) {
+//freeArg関数はunloadで使う解放処理
+NAIBU.freeArg = function() {
+  SVGPathElement = _doc = _pInt = _math = null;
+};
 //仮のfill属性とstroke属性の処理
 NAIBU._setPaint = function(tar, matrix) {
   /*以下では、スタイルシートを用いて、fill-とstroke-関連の
@@ -5189,8 +5217,12 @@
     return s;
   };
   /*SVGPoint*/      SVGPathElement.prototype.getPointAtLength = function(/*float*/ distance ) {
-    var segn = this.getPathSegAtLength(distance), x = 0, y = 0, nl = this.normalizedPathSegList, seg = nl.getItem(segn);
-    var s = this.ownerDocument.documentElement.createSVGPoint();
+    var segn = this.getPathSegAtLength(distance),
+        x = 0,
+        y = 0,
+        nl = this.normalizedPathSegList,
+        seg = nl.getItem(segn),
+        s = this.ownerDocument.documentElement.createSVGPoint();
     if ((segn-1) <= 0) {
       s.x = seg.x;
       s.y = seg.y;
@@ -5829,7 +5861,7 @@
     evt = tar = list = tp = par = p = null;
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target;
@@ -6205,7 +6237,7 @@
     evt = tar = null;
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       var tar = evt.target;
       if (tar.nodeType !== Node.TEXT_NODE) {
         tar._list = null;
@@ -6518,52 +6550,58 @@
 SVGColorProfileRule.prototype = new SVGCSSRule();
 
 function SVGGradientElement() { 
-  SVGElement.apply(this, arguments);
-  SVGURIReference.apply(this, arguments);
+  SVGElement.apply(this);
+  SVGURIReference.apply(this);
   /*readonly SVGAnimatedEnumeration*/   this.gradientUnits = new SVGAnimatedEnumeration();
   /*readonly SVGAnimatedTransformList*/ this.gradientTransform = new SVGAnimatedTransformList();
   /*readonly SVGAnimatedEnumeration*/   this.spreadMethod = new SVGAnimatedEnumeration();
   this.addEventListener("DOMNodeInsertedIntoDocument", function(evt) {
-    var grad = evt.target, ele = evt._tar, t = evt._style; //eleはv:fill要素やv:stroke要素のノード、tはラップした要素ノードのスタイルを収納
-    if (!!!ele) { //まだ、path要素などが設定されていない場合
+    var grad = evt.target,
+        ele = evt._tar,
+        t = evt._style, //eleはv:fill要素やv:stroke要素のノード、tはラップした要素ノードのスタイルを収納
+        grad2 = grad,
+        href, stops, length,
+        color = [],
+        colors = [],
+        opacity = [],
+        stop, sstyle, ci;
+    if (!ele || !grad) { //まだ、path要素などが設定されていない場合
+      grad = ele = t = grad2 = href = stops = length = color = colors = opacity = null;
       return;
     }
-    if (grad) {
-      var grad2 = grad;
-      while (grad2 && !grad2.hasChildNodes()) { //stopを子要素に持つgradient要素を探す
-        var href = grad2.getAttributeNS("http://www.w3.org/1999/xlink", "href");
-        if (href) {
-          href.match(/#(.+)/);
-          grad2 = evt.target.ownerDocument.getElementById(RegExp.$1);
-        } else {
-          break;
-        }
+    while (grad2 && !grad2.hasChildNodes()) { //stopを子要素に持つgradient要素を探す
+      href = grad2.getAttributeNS("http://www.w3.org/1999/xlink", "href");
+      if (href) {
+        href.match(/#(.+)/);
+        grad2 = grad2.ownerDocument.getElementById(RegExp.$1);
+      } else {
+        break;
       }
-      var stops = grad2.getElementsByTagNameNS("http://www.w3.org/2000/svg", "stop");
-      if (!stops) {
-        grad = grad2 = stops = null;
-        return;
-      }
-      var length = stops.length;
-      var color = [], colors = [], opacity = [];
-      for (var i = 0; i < length; ++i) {
-        var stop = stops[i], sstyle = stop.ownerDocument.defaultView.getComputedStyle(stop, "");
-        color[i] = sstyle.getPropertyValue("stop-color");
-        colors[i] = stop.offset.baseVal + " " + color[i];
-        opacity[i] = (sstyle.getPropertyValue("stop-opacity") || 1) * t.getPropertyValue("fill-opacity") * t.getPropertyValue("opacity");
-      }
-      ele.setAttribute("method", "none");
-      ele.setAttribute("color",  color[0]);
-      ele.setAttribute("color2", color[length-1]);
-      ele.setAttribute("colors", colors.join(","));
-      // When colors attribute is used, the meanings of opacity and o:opacity2 are reversed.
-      ele.setAttribute("opacity", opacity[length-1]+ "");
-      ele.setAttribute("o:opacity2", opacity[0]+ "");
-      /*SVGRadialGradientElementインターフェースで利用する*/
-      grad._color = color;
-      grad = ele = stops = lengh = color = colors = opacity = null;        
     }
-    evt = t = null;
+    stops = grad2.getElementsByTagNameNS("http://www.w3.org/2000/svg", "stop");
+    if (!stops) {
+      ele = t = href = grad = grad2 = stops = color = colors = opacity = null;
+      return;
+    }
+    length = stops.length;
+    for (var i = 0; i < length; ++i) {
+      stop = stops[i];
+      sstyle = stop.ownerDocument.defaultView.getComputedStyle(stop, "");
+      ci = sstyle.getPropertyValue("stop-color");
+      color[i] = SVGColor.prototype._keywords[ci] || ci;
+      colors[i] = stop.offset.baseVal + " " + ci;
+      opacity[i] = (sstyle.getPropertyValue("stop-opacity") || 1) * t.getPropertyValue("fill-opacity") * t.getPropertyValue("opacity");
+    }
+    ele["method"] = "none";
+    ele["color"] = color[0];
+    ele["color2"] = color[length-1];
+    ele["colors"] = colors.join(",");
+    // When colors attribute is used, the meanings of opacity and o:opacity2 are reversed.
+    ele["opacity"] = opacity[length-1]+ "";
+    ele["o:opacity2"] = opacity[0]+ "";
+    /*SVGRadialGradientElementインターフェースで利用する*/
+    grad._color = color;
+    grad = grad2 = ele = stops = length = color = colors = opacity = evt = t = href = stop = sstyle = ci = null;
   }, false);
   return this;
 };
@@ -6830,7 +6868,7 @@
   /*readonly SVGAnimatedString*/ this.target = new SVGAnimatedString();
   this.addEventListener("DOMAttrModified", function(evt){
     var tar = evt.target;
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     if (evt.attrName === "target") {
@@ -6842,7 +6880,7 @@
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
     var tar = evt.target;
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     if (tar.nextSibling) {
@@ -6937,7 +6975,7 @@
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
     var tar = evt.target;
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       if (tar.nodeName === "#cdata-section") {
         evt.currentTarget._text = tar.data;
       }
@@ -7025,7 +7063,7 @@
     }
   }, false);
   this.addEventListener("DOMAttrModified", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return;
     }
     var tar = evt.target, name = evt.attrName;
@@ -7060,7 +7098,7 @@
     evt = null;
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target;
@@ -7293,7 +7331,7 @@
   this._valueList = [];
   this._isDiscrete = false;
   this.addEventListener("DOMAttrModified", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     if ((evt.attrName === "calcMode") && (evt.newValue === "discrete")) {
@@ -7301,12 +7339,15 @@
     }
   }, false);
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target;
     tar.addEventListener("DOMNodeInsertedIntoDocument", function(evt){
-      var tar = evt.target, attrName = tar.getAttributeNS(null, "attributeName"),ttr = tar.targetElement, tta = ttr[attrName];
+      var tar = evt.target,
+          attrName = tar.getAttributeNS(null, "attributeName"),
+          ttr = tar.targetElement,
+          tta = ttr[attrName];
       /*tar.valuesのリスト: ex. ["12px", "13px"]を、次のように機械に理解できるよう変換して、tar._valueListに格納
        *[(new SVGPoint()), (new SVGPoint())]
        *この_valueListプロパティはアニメの際に使うので、_valuesプロパティはアニメ中に使わない
@@ -7522,7 +7563,7 @@
   SVGAnimationElement.apply(this);
   NAIBU.Clip[NAIBU.Clip.length] = this;
   this.addEventListener("DOMAttrModified", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return;
     }
     var tar = evt.target, name = evt.attrName;
@@ -7598,7 +7639,7 @@
   NAIBU.Clip[NAIBU.Clip.length] = this;
   this._valueList = [];
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     var tar = evt.target;
@@ -7703,7 +7744,7 @@
   /*boolean or number*/ this._isExternal = 0;
   this.addEventListener("DOMNodeInserted", function(evt){
     var tar = evt.target;
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return;
     }
     tar.addEventListener("DOMNodeInsertedIntoDocument", function(evt){
@@ -7768,7 +7809,7 @@
   SVGElement.apply(this);
   /*boolean(or number)*/ this._isLinked = 0;
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       if (evt.target.localName === "font-face-uri") { //外部リンクがあれば
         evt.currentTarget._isLinked = 1;
       }
@@ -7790,7 +7831,7 @@
 function SVGFontFaceUriElement() {
   SVGElement.apply(this);
   this.addEventListener("DOMNodeInserted", function(evt){
-    if (evt.eventPhase === Event.BUBBLING_PHASE) {
+    if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
       return; //強制終了させる
     }
     evt.target.ownerDocument.documentElement._svgload_limited--
@@ -8077,6 +8118,7 @@
  */
 (function(){
   var s = new CSSStyleDeclaration(),
+       slis = s._list,
       n = 0,
       regAZ = /([A-Z])/,
       regm = /\-/,
@@ -8091,16 +8133,16 @@
       }
       t = t.replace(regm, u);
       s.setProperty(t, CSS2Properties[i]);
-      s._list[t] = s._list[n]; //この処理はCSSモジュールのgetComputedStyleメソッドのため
+      slis[t] = slis[n]; //この処理はCSSモジュールのgetComputedStyleメソッドのため
       ++n;
       i = t = u =  null;
     }
   }
-  s._list._opacity = 1;
-  s._list._fontSize = 12;
-  CSS2Properties._list = s._list;
-  Document.prototype.defaultView._defaultCSS = s._list;
-  s = n = regAZ = regm =null;
+  slis._opacity = 1;
+  slis._fontSize = 12;
+  CSS2Properties._list = slis;
+  Document.prototype.defaultView._defaultCSS = slis;
+  s = n = regAZ = regm = slis =null;
 })();
 
 NAIBU.addEvent = function(evt,lis){
@@ -8124,6 +8166,7 @@
     }
     window.onscroll = NAIBU.emptyFunction;
     window.detachEvent("onload", NAIBU._main);
+    NAIBU.freeArg();
     Element = SVGElement = Attr = NamedNodeMap = CSS2Properties = CSSValue = CSSPrimitiveValue = NAIBU.xmlhttp = Node = Event = NAIBU = stlog = STLog = SVGColor = SVGPaint = null;
     Array = ActiveXObject = null;
   } catch(e) {}
@@ -8197,9 +8240,7 @@
   NAIBU.doc = nd;
   nd = ary = null;
   if (xmlhttp && NAIBU.isMSIE) {
-    if (!!document.createElementNS) { //IE9ならば
-      if (!!document.createElementNS( "http://www.w3.org/2000/svg", "svg").createSVGRect) {
-      }
+    if (!!document.createElementNS && !!document.createElementNS( "http://www.w3.org/2000/svg", "svg").createSVGRect) { //IE9ならば
     } else { //IE6-8ならば
       var oba = document.createElement("div");
       oba.setAttribute("id","_NAIBU_outline");


Property changes on: trunk/sie.js
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/04x/040/sie.js:812-829
/branches/04x/041/sie.js:891-923
/branches/04x/042/sie.js:927-967
/branches/04x/043/sie.js:969-1013
/branches/04x/044/sie.js:1015-1067
/branches/04x/045/sie.js:1069-1078
/branches/04x/046/sie.js:1080-1129
/branches/04x/047/sie.js:1131-1164
/branches/04x/048/sie.js:1166-1180
/branches/04x/sie.js:830-1181
/branches/05x/050/sie.js:1183-1201
/branches/05x/051/sie.js:1207-1323
/branches/05x/052/sie.js:1325-1352
/branches/05x/053/sie.js:1354-1400
/branches/05x/054/sie.js:1403-1422
/branches/05x/055/sie.js:1424-1454
/branches/05x/056/sie.js:1456-1491
/branches/05x/057/sie.js:1496-1523
/branches/05x/058/sie.js:1526-1590
/branches/05x/sie.js:1183-1594
/branches/06x/060/sie.js:1603-1850
/branches/06x/sie.js:1599-2355
/branches/07x/sie.js:2357-2559
   + /branches/04x/040/sie.js:812-829
/branches/04x/041/sie.js:891-923
/branches/04x/042/sie.js:927-967
/branches/04x/043/sie.js:969-1013
/branches/04x/044/sie.js:1015-1067
/branches/04x/045/sie.js:1069-1078
/branches/04x/046/sie.js:1080-1129
/branches/04x/047/sie.js:1131-1164
/branches/04x/048/sie.js:1166-1180
/branches/04x/sie.js:830-1181
/branches/05x/050/sie.js:1183-1201
/branches/05x/051/sie.js:1207-1323
/branches/05x/052/sie.js:1325-1352
/branches/05x/053/sie.js:1354-1400
/branches/05x/054/sie.js:1403-1422
/branches/05x/055/sie.js:1424-1454
/branches/05x/056/sie.js:1456-1491
/branches/05x/057/sie.js:1496-1523
/branches/05x/058/sie.js:1526-1590
/branches/05x/sie.js:1183-1594
/branches/06x/060/sie.js:1603-1850
/branches/06x/sie.js:1599-2355
/branches/07x/sie.js:2357-2604




Sie-announce メーリングリストの案内
Back to archive index