You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2020/06/07 19:38:47 UTC
[royale-asjs] 03/06: StyledLayoutBase: add LayoutChildren bead
support
This is an automated email from the ASF dual-hosted git repository.
carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
commit 38599c2675cb8019d793b285e120a2179686d1e3
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Sun Jun 7 20:23:27 2020 +0200
StyledLayoutBase: add LayoutChildren bead support
---
.../royale/jewel/beads/layouts/StyledLayoutBase.as | 34 +++++++++++++++++++++-
1 file changed, 33 insertions(+), 1 deletion(-)
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/StyledLayoutBase.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/StyledLayoutBase.as
index 7f0f46e..e25b588 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/StyledLayoutBase.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/StyledLayoutBase.as
@@ -25,8 +25,10 @@ package org.apache.royale.jewel.beads.layouts
import org.apache.royale.core.LayoutBase;
import org.apache.royale.core.StyledUIBase;
import org.apache.royale.core.ValuesManager;
+ import org.apache.royale.core.layout.ILayoutChildren;
import org.apache.royale.core.layout.ILayoutStyleProperties;
import org.apache.royale.events.Event;
+ import org.apache.royale.utils.loadBeadFromValuesManager;
import org.apache.royale.utils.sendStrandEvent;
/**
@@ -329,7 +331,9 @@ package org.apache.royale.jewel.beads.layouts
public function executeLayout():void
{
if (layout()) {
- viewBead.afterLayout();
+ if(layoutChildren)
+ layoutChildren.executeLayoutChildren();
+ viewBead.afterLayout();
}
isLayoutRunning = false;
@@ -351,5 +355,33 @@ package org.apache.royale.jewel.beads.layouts
}
*/
}
+
+ private var _layoutChildren:ILayoutChildren;
+
+ /**
+ * The org.apache.royale.core.ILayoutChildren used
+ * to initialize instances of item renderers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.10.0
+ * @royaleignorecoercion org.apache.royale.core.IItemRendererInitializer
+ */
+ public function get layoutChildren():ILayoutChildren
+ {
+ if(!_layoutChildren)
+ _layoutChildren = loadBeadFromValuesManager(ILayoutChildren, "iItemRendererInitializer", _strand) as ILayoutChildren;
+
+ return _layoutChildren;
+ }
+
+ /**
+ * @private
+ */
+ public function set layoutChildren(value:ILayoutChildren):void
+ {
+ _layoutChildren = value;
+ }
}
}