This is an automated email from the ASF dual-hosted git repository.
harbs pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new d525c36ac8 transform
d525c36ac8 is described below
commit d525c36ac82b5d25dc736ca9783396e5aa5c8305
Author: Harbs <[email protected]>
AuthorDate: Wed Feb 25 14:43:30 2026 +0200
transform
---
.../royale/style/stylebeads/flexgrid/FlexGrow.as | 2 +-
.../royale/style/stylebeads/flexgrid/FlexShrink.as | 2 +-
.../apache/royale/style/stylebeads/flexgrid/Gap.as | 2 +-
.../BackfaceVisibility.as} | 15 ++-
.../style/stylebeads/transform/Perspective.as | 71 +++++++++++++
.../FlexGrow.as => transform/PerspectiveOrigin.as} | 21 ++--
.../royale/style/stylebeads/transform/Rotate.as | 116 +++++++++++++++++++++
.../royale/style/stylebeads/transform/Scale.as | 114 ++++++++++++++++++++
.../royale/style/stylebeads/transform/Skew.as | 104 ++++++++++++++++++
.../FlexGrow.as => transform/Transform.as} | 19 ++--
.../FlexGrow.as => transform/TransformOrigin.as} | 20 ++--
.../FlexGrow.as => transform/TransformStyle.as} | 17 ++-
.../FlexGrow.as => transform/Translate.as} | 28 +++--
13 files changed, 475 insertions(+), 56 deletions(-)
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
index be46188884..ebab1a5e29 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
@@ -31,7 +31,7 @@ package org.apache.royale.style.stylebeads.flexgrid
override public function set value(value:*):void
{
// For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
+ assert(parseFloat(value) == value && int(value) >= 0,
"Invalid value for flex-grow: " + value);
calculatedRuleValue = calculatedSelector = _value =
value;
}
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
index 6e5f26316b..fa11a42282 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
@@ -31,7 +31,7 @@ package org.apache.royale.style.stylebeads.flexgrid
override public function set value(value:*):void
{
// For now we're assuming that flex-shrink is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-shrink: " + value);
+ assert(parseFloat(value) == value && int(value) >= 0,
"Invalid value for flex-shrink: " + value);
calculatedRuleValue = calculatedSelector = _value =
value;
}
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
index 8d82ea2707..3a974e5050 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
@@ -37,7 +37,7 @@ package org.apache.royale.style.stylebeads.flexgrid
_value = value;
// TODO validate aspect before setting
var ruleProp:* = value;
- if(parseInt(value, 10) == value)
+ if(int(value) == value)
{
assert(value >= 0, "Invalid value for gap: " +
value);
var pixelValue:Number =
ThemeManager.instance.activeTheme.spacing * value;
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/BackfaceVisibility.as
similarity index 72%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/BackfaceVisibility.as
index be46188884..72f9ba1836 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/BackfaceVisibility.as
@@ -16,24 +16,21 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
- public class FlexGrow extends SingleStyleBase
+ public class BackfaceVisibility extends SingleStyleBase
{
- public function FlexGrow()
+ public function BackfaceVisibility()
{
- super("grow", "flex-grow");
+ super("backface", "backface-visibility");
}
-
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
- calculatedRuleValue = calculatedSelector = _value =
value;
-
+ assert(value == "hidden" || value == "visible",
"Invalid value for backface-visibility: " + value);
+ calculatedSelector = calculatedRuleValue = _value =
value;
}
}
}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Perspective.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Perspective.as
new file mode 100644
index 0000000000..278fa6f7b8
--- /dev/null
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Perspective.as
@@ -0,0 +1,71 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Licensed to the Apache Software Foundation (ASF) under one or more
+// contributor license agreements. See the NOTICE file distributed with
+// this work for additional information regarding copyright ownership.
+// The ASF licenses this file to You under the Apache License, Version 2.0
+// (the "License"); you may not use this file except in compliance with
+// the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.transform
+{
+ import org.apache.royale.style.stylebeads.SingleStyleBase;
+ import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
+ import org.apache.royale.style.util.StyleTheme;
+ import org.apache.royale.style.util.ThemeManager;
+
+ public class Perspective extends SingleStyleBase
+ {
+ public function Perspective()
+ {
+ super("perspective", "perspective");
+ }
+
+ override public function set value(value:*):void
+ {
+ var isVar:Boolean = CSSLookup.has(value);
+ assert(isVar ||
["dramatic","near","normal","midrange","distant","none"].indexOf(value) != -1,
"Invalid value for perspective: " + value);
+ calculatedSelector = _value = value;
+ if(isVar)
+ calculatedRuleValue =
CSSLookup.getProperty(value);
+ else
+ {
+ var theme:StyleTheme =
ThemeManager.instance.activeTheme;
+ switch(value)
+ {
+ case "dramatic":
+ calculatedRuleValue =
theme.perspectiveDramatic;
+ break;
+ case "near":
+ calculatedRuleValue =
theme.perspectiveNear;
+ break;
+ case "normal":
+ calculatedRuleValue =
theme.perspectiveNormal;
+ break;
+ case "midrange":
+ calculatedRuleValue =
theme.perspectiveMidrange;
+ break;
+ case "distant":
+ calculatedRuleValue =
theme.perspectiveDistant;
+ break;
+ case "none":
+ calculatedRuleValue = "none";
+ break;
+ default:
+ assert(false, "Invalid value
for perspective: " + value);
+ break;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/PerspectiveOrigin.as
similarity index 66%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/PerspectiveOrigin.as
index be46188884..654e511b82 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/PerspectiveOrigin.as
@@ -16,24 +16,29 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
- public class FlexGrow extends SingleStyleBase
+ public class PerspectiveOrigin extends SingleStyleBase
{
- public function FlexGrow()
+ public function PerspectiveOrigin()
{
- super("grow", "flex-grow");
+ super("perspective-origin", "perspective-origin");
}
-
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
+ var isVar:Boolean = CSSLookup.has(value);
+ assert(isVar || ['center','top','top
right','right','bottom right','bottom','bottom left','left','top
left'].indexOf(value) != -1, "Invalid value for perspective-origin: " + value);
calculatedRuleValue = calculatedSelector = _value =
value;
-
+ if(isVar)
+ calculatedRuleValue =
CSSLookup.getProperty(value);
+ else
+ {
+ calculatedSelector = sanitizeSelector(value);
+ }
}
}
}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Rotate.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Rotate.as
new file mode 100644
index 0000000000..75fac27dbe
--- /dev/null
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Rotate.as
@@ -0,0 +1,116 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Licensed to the Apache Software Foundation (ASF) under one or more
+// contributor license agreements. See the NOTICE file distributed with
+// this work for additional information regarding copyright ownership.
+// The ASF licenses this file to You under the Apache License, Version 2.0
+// (the "License"); you may not use this file except in compliance with
+// the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.transform
+{
+ import org.apache.royale.style.stylebeads.SingleStyleBase;
+ import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
+
+ public class Rotate extends SingleStyleBase
+ {
+ public function Rotate()
+ {
+ super("rotate", "rotate");
+ }
+
+ public function set rotate(value:*):void
+ {
+ _rotateX = _rotateY = _rotateZ = null;
+ this.value = value;
+ }
+ private var _rotateX:*;
+
+ public function set rotateX(value:*):void
+ {
+ _rotateX = _value = value;
+ calculateVals();
+ }
+ private var _rotateY:*;
+
+ public function set rotateY(value:*):void
+ {
+ _rotateY = value;
+ calculateVals();
+ }
+ private var _rotateZ:*;
+
+ public function set rotateZ(value:*):void
+ {
+ _rotateZ = value;
+ calculateVals();
+ }
+ override public function set value(value:*):void
+ {
+ _value = value;
+ calculateVals();
+ }
+ private function calculateVals():void
+ {
+ var negative:Boolean = false;
+ var selectors:Array = [];
+ var rules:Array = [];
+ if(_rotateX != null)
+ {
+ negative ||= _rotateX + "".indexOf("-") == 0;
+ selectors.push("x-" + positive(_rotateX));
+ rules.push("rotateX(" + parseVal(_rotateX) +
")");
+ }
+ if(_rotateY != null)
+ {
+ negative ||= _rotateY + "".indexOf("-") == 0;
+ selectors.push("y-" + positive(_rotateY));
+ rules.push("rotateY(" + parseVal(_rotateY) +
")");
+ }
+ if(_rotateZ != null)
+ {
+ negative ||= _rotateZ + "".indexOf("-") == 0;
+ selectors.push("z-" + positive(_rotateZ));
+ rules.push("rotateZ(" + parseVal(_rotateZ) +
")");
+ }
+ if(rules.length)
+ {
+ calculatedRuleValue = rules.join(" ");
+ calculatedSelector = selectors.join("-");
+ }
+ else
+ {
+ calculatedRuleValue = "rotate(" +
parseVal(_value) + ")";
+ calculatedSelector = positive(_value);
+ }
+ _selectorPrefix = negative ? "-rotate" : "rotate";
+ }
+ private function positive(val:*):String
+ {
+ var valStr:String = "" + val;
+ if(valStr.indexOf("-") == 0)
+ return valStr.substring(1);
+ return valStr;
+ }
+ private function parseVal(value:*):String{
+ if(value == "none")
+ return "none";
+ if(parseFloat(value) == value)
+ return value + "deg";
+ if(CSSLookup.has(value))
+ return CSSLookup.getProperty(value);
+ assert(false, "Invalid value for rotate: " + value);
+ return value;
+ }
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Scale.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Scale.as
new file mode 100644
index 0000000000..d9512f0535
--- /dev/null
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Scale.as
@@ -0,0 +1,114 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Licensed to the Apache Software Foundation (ASF) under one or more
+// contributor license agreements. See the NOTICE file distributed with
+// this work for additional information regarding copyright ownership.
+// The ASF licenses this file to You under the Apache License, Version 2.0
+// (the "License"); you may not use this file except in compliance with
+// the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.transform
+{
+ import org.apache.royale.style.stylebeads.SingleStyleBase;
+ import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
+
+ public class Scale extends SingleStyleBase
+ {
+ public function Scale()
+ {
+ super("scale", "scale");
+ }
+
+ public function set scale(value:*):void
+ {
+ _scaleX = _scaleY = _scaleZ = null;
+ this.value = value;
+ }
+ private var _scaleX:*;
+
+ public function set scaleX(value:*):void
+ {
+ _scaleX = _value = value;
+ calculateVals();
+ }
+ private var _scaleY:*;
+
+ public function set scaleY(value:*):void
+ {
+ _scaleY = value;
+ calculateVals();
+ }
+ private var _scaleZ:*;
+
+ public function set scaleZ(value:*):void
+ {
+ _scaleZ = value;
+ calculateVals();
+ }
+ override public function set value(value:*):void
+ {
+ _value = value;
+ calculateVals();
+ }
+ private function calculateVals():void
+ {
+ var negative:Boolean = false;
+ var selectors:Array = [];
+ var rules:Array = [];
+ if(_scaleX != null)
+ {
+ negative ||= _scaleX + "".indexOf("-") == 0;
+ selectors.push("x-" + positive(_scaleX));
+ rules.push(parseVal(_scaleX));
+ }
+ if(_scaleY != null)
+ {
+ negative ||= _scaleY + "".indexOf("-") == 0;
+ selectors.push("y-" + positive(_scaleY));
+ rules.push(parseVal(_scaleY));
+ }
+ if(_scaleZ != null)
+ {
+ negative ||= _scaleZ + "".indexOf("-") == 0;
+ selectors.push("z-" + positive(_scaleZ));
+ rules.push(parseVal(_scaleZ));
+ }
+ if(rules.length)
+ {
+ calculatedRuleValue = rules.join(" ");
+ calculatedSelector = selectors.join("-");
+ }
+ else
+ {
+ calculatedRuleValue = parseVal(_value) + " " +
parseVal(_value);
+ calculatedSelector = positive(_value);
+ }
+ _selectorPrefix = negative ? "-scale" : "scale";
+ }
+ private function positive(val:*):String
+ {
+ var valStr:String = "" + val;
+ if(valStr.indexOf("-") == 0)
+ return sanitizeSelector(valStr.substring(1));
+ return sanitizeSelector(valStr);
+ }
+ private function parseVal(value:*):String{
+ if(value == "none")
+ return "none";
+ if(CSSLookup.has(value))
+ return CSSLookup.getProperty(value);
+ assert(false, "Invalid value for scale: " + value);
+ return value;
+ }
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Skew.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Skew.as
new file mode 100644
index 0000000000..e5743d7907
--- /dev/null
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Skew.as
@@ -0,0 +1,104 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Licensed to the Apache Software Foundation (ASF) under one or more
+// contributor license agreements. See the NOTICE file distributed with
+// this work for additional information regarding copyright ownership.
+// The ASF licenses this file to You under the Apache License, Version 2.0
+// (the "License"); you may not use this file except in compliance with
+// the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.transform
+{
+ import org.apache.royale.style.stylebeads.SingleStyleBase;
+ import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
+
+ public class Skew extends SingleStyleBase
+ {
+ public function Skew()
+ {
+ super("skew", "transform");
+ }
+
+ public function set skew(value:*):void
+ {
+ _skewX = _skewY = null;
+ this.value = value;
+ }
+ private var _skewX:*;
+
+ public function set skewX(value:*):void
+ {
+ _skewX = _value = value;
+ calculateVals();
+ }
+ private var _skewY:*;
+
+ public function set skewY(value:*):void
+ {
+ _skewY = value;
+ calculateVals();
+ }
+
+ override public function set value(value:*):void
+ {
+ _value = value;
+ calculateVals();
+ }
+ private function calculateVals():void
+ {
+ var negative:Boolean = false;
+ var selectors:Array = [];
+ var rules:Array = [];
+ if(_skewX != null)
+ {
+ negative ||= _skewX + "".indexOf("-") == 0;
+ selectors.push("x-" + positive(_skewX));
+ rules.push("skewX(" + parseVal(_skewX) + ")");
+ }
+ if(_skewY != null)
+ {
+ negative ||= _skewY + "".indexOf("-") == 0;
+ selectors.push("y-" + positive(_skewY));
+ rules.push("skewY(" + parseVal(_skewY) + ")");
+ }
+ if(rules.length)
+ {
+ calculatedRuleValue = rules.join(" ");
+ calculatedSelector = selectors.join("-");
+ }
+ else
+ {
+ calculatedRuleValue = "skewX(" +
parseVal(_value) + ") " +"skewY(" + parseVal(_value) + ")";
+ calculatedSelector = positive(_value);
+ }
+ _selectorPrefix = negative ? "-skew" : "skew";
+ }
+ private function positive(val:*):String
+ {
+ var valStr:String = "" + val;
+ if(valStr.indexOf("-") == 0)
+ return valStr.substring(1);
+ return valStr;
+ }
+ private function parseVal(value:*):String{
+ if(value == "none")
+ return "none";
+ if(parseFloat(value) == value)
+ return value + "deg";
+ if(CSSLookup.has(value))
+ return CSSLookup.getProperty(value);
+ assert(false, "Invalid value for skew: " + value);
+ return value;
+ }
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Transform.as
similarity index 71%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Transform.as
index be46188884..a455eb7766 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Transform.as
@@ -16,24 +16,25 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
- public class FlexGrow extends SingleStyleBase
+ public class Transform extends SingleStyleBase
{
- public function FlexGrow()
+ public function Transform()
{
- super("grow", "flex-grow");
+ super("transform", "transform");
}
-
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
- calculatedRuleValue = calculatedSelector = _value =
value;
-
+ var isVar:Boolean = CSSLookup.has(value);
+ assert(isVar || value == "none", "Invalid value for
transform: " + value);
+ calculatedSelector = calculatedRuleValue = _value =
value;
+ if(isVar)
+ calculatedRuleValue =
CSSLookup.getProperty(value);
}
}
}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformOrigin.as
similarity index 65%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformOrigin.as
index be46188884..ec99c99102 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformOrigin.as
@@ -16,24 +16,26 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
+ import org.apache.royale.style.util.CSSLookup;
- public class FlexGrow extends SingleStyleBase
+ public class TransformOrigin extends SingleStyleBase
{
- public function FlexGrow()
+ public function TransformOrigin()
{
- super("grow", "flex-grow");
+ super("origin", "transform-origin");
}
-
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
- calculatedRuleValue = calculatedSelector = _value =
value;
-
+ var isVar:Boolean = CSSLookup.has(value);
+ assert(isVar || ["center","top","top
right","right","bottom right","bottom","bottom left","left","top
left"].indexOf(value) != -1, "Invalid value for transform-origin: " + value);
+ calculatedRuleValue = _value = value;
+ calculatedSelector = sanitizeSelector(value);
+ if(isVar)
+ calculatedRuleValue =
CSSLookup.getProperty(value);
}
}
}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformStyle.as
similarity index 72%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformStyle.as
index be46188884..d4e9bbdaf9 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/TransformStyle.as
@@ -16,24 +16,23 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
- public class FlexGrow extends SingleStyleBase
+ public class TransformStyle extends SingleStyleBase
{
- public function FlexGrow()
+ public function TransformStyle()
{
- super("grow", "flex-grow");
+ super("transform", "transform-style");
}
-
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
- calculatedRuleValue = calculatedSelector = _value =
value;
-
+ assert(value == "preserve-3d" || value == "flat",
"Invalid value for transform-style: " + value);
+ calculatedSelector = calculatedRuleValue = _value =
value;
+ if(value == "preserve-3d")
+ calculatedSelector = "3d";
}
}
}
\ No newline at end of file
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Translate.as
similarity index 61%
copy from
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
copy to
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Translate.as
index be46188884..a3a1795119 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/transform/Translate.as
@@ -16,24 +16,34 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.flexgrid
+package org.apache.royale.style.stylebeads.transform
{
import org.apache.royale.style.stylebeads.SingleStyleBase;
import org.apache.royale.debugging.assert;
- public class FlexGrow extends SingleStyleBase
+ public class Translate extends SingleStyleBase
{
- public function FlexGrow()
+ public function Translate()
{
- super("grow", "flex-grow");
+ super("translate", "translate");
}
-
+ //TODO: Not implemented. Add support for x, y and z.
override public function set value(value:*):void
{
- // For now we're assuming that flex-grow is only a
number, but it can also be "initial" or "inherit"
- assert(parseFloat(value) == value && parseInt(value,
10) >= 0, "Invalid value for flex-grow: " + value);
- calculatedRuleValue = calculatedSelector = _value =
value;
-
+ var negative:Boolean = value + "".indexOf("-") == 0;
+
+ var isInt:Boolean = int(value) == value;
+ if(isInt)
+ {
+ // validated = true;
+ // var pixelValue:Number =
ThemeManager.instance.activeTheme.spacing * val;
+ // selectorValue[i] = "" +
Math.abs(val);
+ // ruleValue[i] =
CSSUnit.convert(pixelValue, CSSUnit.PX, unit) + unit;
+ }
+
+
+ assert(isInt || value == "none", "Invalid value for
translate: " + value);
+ calculatedSelector = calculatedRuleValue = _value =
value;
}
}
}
\ No newline at end of file