n = m = a = void 0;\r
CSS2Properties.visibility._n = 1; //初期値の設定(_setPaintで使う)\r
\r
-function CSSStyleSheet() {\r
- StyleSheet.apply(this);\r
-/*CSSRule*/ this.ownerRule = null;\r
+/*$CSSStyleSheetオブジェクト*/\r
+\r
+base("$StyleSheet").up("$CSSStyleSheet").on("up", function() {\r
/*CSSRuleList*/ this.cssRules = [];\r
-};\r
-CSSStyleSheet.prototype = Object._create(StyleSheet);\r
-/*long*/ CSSStyleSheet.prototype.insertRule = function( /*string*/ rule, /*long*/ index) {\r
+}).mix( {\r
+/*CSSRule*/ ownerRule: null,\r
+/*long*/ insertRule: function( /*string*/ rule, /*long*/ index) {\r
var s = new CSSStyleRule(), style = s.style, a, sc = rule.match(/\{[\s\S]+\}/), m;\r
s.parentStyleSheet = this;\r
style.cssText = rule;\r
}\r
a = sc = style = void 0;\r
this.cssRules.splice(index,s,1);\r
-};\r
-/*void*/ CSSStyleSheet.prototype.deleteRule = function(/*long*/ index) {\r
+},\r
+/*void*/ deleteRule: function(/*long*/ index) {\r
this.cssRules.splice(index, 1);\r
-};\r
-\r
+}\r
+} );\r
\r
/*getComputedStyle関数\r
*最近の計算値を取得する。Document.defaultViewはSafariがグローバル(window)にサポートしていないため付ける。\r
*/\r
/*interface DOMImplementationCSS : DOMImplementation {*/\r
/*CSSStyleSheet*/ base("DOMImplementation").createCSSStyleSheet = function( /*string*/ title, /*string*/ media) {\r
- var s = new CSSStyleSheet();\r
+ var s = base("$StyleSheet").up("$CSSStyleSheet").up("$1");\r
s.title = title;\r
var nm = new MediaList();\r
nm.mediaText = media;\r
/*StyleSheet\r
*スタイルシート文書を示す。削除不可。\r
*/\r
-function StyleSheet() {\r
- this.type = "text/css";\r
- this.disabled = false;\r
- /*Node*/ this.ownerNode = null;\r
- /*StyleSheet*/ this.parentStyleSheet = null;\r
- this.href = null;\r
- this.title = "";\r
+base("$StyleSheet").mix( {\r
+ type: "text/css",\r
+ disabled: false,\r
+ /*Node*/ ownerNode: null,\r
+ /*StyleSheet*/ parentStyleSheet: null,\r
+ href: null,\r
+ title: ""\r
+} )\r
+ .on( "up", function() {\r
/*MediaList*/ this.media = new MediaList();\r
-};\r
+} )\r
+ .mix( function(_) {\r
\r
/*StyleSheetList\r
*このインターフェースはArrayで代用する\r
};\r
*/\r
\r
-function MediaList() {\r
- this.mediaText = "";\r
- this.length = 0;\r
-};\r
-MediaList.prototype = {\r
+_.up("$MediaList").mix( {\r
+ mediaText: "",\r
+ length: 0,\r
/*string*/ item : function(/*long*/ index) {\r
return (this[index]);\r
},\r
this[this.length] = newMedium;\r
++this.length;\r
}\r
-};\r
+} );\r
\r
-function LinkStyle() {\r
- /*StyleSheet*/ this.sheet = new StyleSheet();\r
+_.LinkStyle = function() {\r
+ /*StyleSheet*/ this.sheet = _.up("$1");\r
};\r
\r
-function DocumentStyle() {\r
+_.DocumentStyle = function() {\r
/*StyleSheetList*/ this.styleSheets = [];\r
};\r
+} );\r
/*\r
#endif // _STYLESHEETS_IDL_\r
*/
\ No newline at end of file