|
@@ -2,7 +2,7 @@ package h2d.domkit;
|
|
|
|
|
|
class Style extends domkit.CssStyle {
|
|
class Style extends domkit.CssStyle {
|
|
|
|
|
|
- var currentObjects : Array<h2d.domkit.Object> = [];
|
|
|
|
|
|
+ var currentObjects : Array<h2d.Object> = [];
|
|
var resources : Array<hxd.res.Resource> = [];
|
|
var resources : Array<hxd.res.Resource> = [];
|
|
var errors : Array<String>;
|
|
var errors : Array<String>;
|
|
var errorsText : h2d.Text;
|
|
var errorsText : h2d.Text;
|
|
@@ -20,20 +20,30 @@ class Style extends domkit.CssStyle {
|
|
resources.push(r);
|
|
resources.push(r);
|
|
add(new domkit.CssParser().parseSheet(r.entry.getText()));
|
|
add(new domkit.CssParser().parseSheet(r.entry.getText()));
|
|
for( o in currentObjects )
|
|
for( o in currentObjects )
|
|
- getDocument(o).setStyle(this);
|
|
|
|
|
|
+ o.dom.applyStyle(this);
|
|
}
|
|
}
|
|
|
|
|
|
- public function applyTo( obj ) {
|
|
|
|
|
|
+ public function addObject( obj ) {
|
|
currentObjects.remove(obj);
|
|
currentObjects.remove(obj);
|
|
currentObjects.push(obj);
|
|
currentObjects.push(obj);
|
|
- getDocument(obj).setStyle(this);
|
|
|
|
|
|
+ obj.dom.applyStyle(this);
|
|
}
|
|
}
|
|
|
|
|
|
- function remove(obj) {
|
|
|
|
|
|
+ public function removeObject(obj) {
|
|
currentObjects.remove(obj);
|
|
currentObjects.remove(obj);
|
|
}
|
|
}
|
|
|
|
|
|
- override function onInvalidProperty(e:domkit.Element<Dynamic>, s:domkit.CssStyle.RuleStyle, msg:String) {
|
|
|
|
|
|
+ /**
|
|
|
|
+ Returns number of dom elements that were updated
|
|
|
|
+ **/
|
|
|
|
+ public function sync() {
|
|
|
|
+ var T0 = domkit.CssStyle.TAG;
|
|
|
|
+ for( o in currentObjects )
|
|
|
|
+ o.dom.applyStyle(this, true);
|
|
|
|
+ return domkit.CssStyle.TAG - T0;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ override function onInvalidProperty(e:domkit.Properties<Dynamic>, s:domkit.CssStyle.RuleStyle, msg:String) {
|
|
if( errors != null ) {
|
|
if( errors != null ) {
|
|
var path = s.p.name;
|
|
var path = s.p.name;
|
|
var ee = e;
|
|
var ee = e;
|
|
@@ -41,7 +51,6 @@ class Style extends domkit.CssStyle {
|
|
path = (ee.id != null ? "#" + ee.id : ee.component.name) + "." + path;
|
|
path = (ee.id != null ? "#" + ee.id : ee.component.name) + "." + path;
|
|
ee = ee.parent;
|
|
ee = ee.parent;
|
|
}
|
|
}
|
|
-
|
|
|
|
if( msg == null ) msg = "Invalid property value '"+(domkit.CssParser.valueStr(s.value))+"'";
|
|
if( msg == null ) msg = "Invalid property value '"+(domkit.CssParser.valueStr(s.value))+"'";
|
|
errors.push(msg+" for " + path);
|
|
errors.push(msg+" for " + path);
|
|
}
|
|
}
|
|
@@ -67,7 +76,7 @@ class Style extends domkit.CssStyle {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
for( o in currentObjects )
|
|
for( o in currentObjects )
|
|
- getDocument(o).setStyle(this);
|
|
|
|
|
|
+ o.dom.applyStyle(this);
|
|
if( errors.length == 0 ) {
|
|
if( errors.length == 0 ) {
|
|
if( errorsText != null ) {
|
|
if( errorsText != null ) {
|
|
errorsText.parent.remove();
|
|
errorsText.parent.remove();
|
|
@@ -76,7 +85,7 @@ class Style extends domkit.CssStyle {
|
|
} else {
|
|
} else {
|
|
if( errorsText == null ) {
|
|
if( errorsText == null ) {
|
|
if( currentObjects.length == 0 ) return;
|
|
if( currentObjects.length == 0 ) return;
|
|
- var scene = getDocument(currentObjects[0]).root.obj.getScene();
|
|
|
|
|
|
+ var scene = currentObjects[0].getScene();
|
|
var fl = new h2d.Flow();
|
|
var fl = new h2d.Flow();
|
|
scene.addChildAt(fl,100);
|
|
scene.addChildAt(fl,100);
|
|
fl.backgroundTile = h2d.Tile.fromColor(0x400000,0.9);
|
|
fl.backgroundTile = h2d.Tile.fromColor(0x400000,0.9);
|
|
@@ -92,8 +101,4 @@ class Style extends domkit.CssStyle {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- function getDocument( o : h2d.domkit.Object ) : domkit.Document<h2d.Object> {
|
|
|
|
- return (o : Dynamic).document;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
}
|
|
}
|