You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ha...@apache.org on 2020/01/24 12:45:28 UTC
[royale-asjs] branch develop updated: move model out of Strand
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 e1773f4 move model out of Strand
e1773f4 is described below
commit e1773f48fd0bd41f808b71aafcac97469be436ab
Author: Harbs <ha...@in-tools.com>
AuthorDate: Fri Jan 24 14:45:10 2020 +0200
move model out of Strand
---
.../projects/Core/src/main/royale/CoreClasses.as | 1 +
.../main/royale/org/apache/royale/core/Strand.as | 40 ---------
.../royale/core/{Strand.as => StrandWithModel.as} | 95 ++--------------------
.../royale/org/apache/royale/file/FileProxy.as | 4 +-
4 files changed, 8 insertions(+), 132 deletions(-)
diff --git a/frameworks/projects/Core/src/main/royale/CoreClasses.as b/frameworks/projects/Core/src/main/royale/CoreClasses.as
index 6a6590e..a644a8f 100644
--- a/frameworks/projects/Core/src/main/royale/CoreClasses.as
+++ b/frameworks/projects/Core/src/main/royale/CoreClasses.as
@@ -162,6 +162,7 @@ internal class CoreClasses
import org.apache.royale.core.CSSClassList; CSSClassList;
import org.apache.royale.core.StyleChangeNotifier; StyleChangeNotifier;
+ import org.apache.royale.core.StrandWithModel; StrandWithModel;
import org.apache.royale.events.CustomEvent; CustomEvent;
import org.apache.royale.events.Event; Event;
import org.apache.royale.events.CloseEvent; CloseEvent;
diff --git a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as
index 11ceae1..5610ccc 100644
--- a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as
@@ -46,43 +46,6 @@ package org.apache.royale.core
super();
}
-
- private var _model:IBeadModel;
-
- /**
- * An IBeadModel that serves as the data model for the component.
- * Note that there is no controller or view properties since
- * this not a display object.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.9
- * @royaleignorecoercion org.apache.royale.core.IBead
- */
- public function get model():IBeadModel
- {
- if (_model == null)
- {
- // addbead will set _model
- addBead(new (ValuesManager.valuesImpl.getValue(this, "iBeadModel")) as IBead);
- }
- return _model;
- }
-
- /**
- * @private
- * @royaleignorecoercion org.apache.royale.core.IBead
- */
- public function set model(value:IBeadModel):void
- {
- if (_model != value)
- {
- addBead(value as IBead);
- sendStrandEvent(this,"modelChanged")
- }
- }
-
private var _id:String;
/**
@@ -131,15 +94,12 @@ package org.apache.royale.core
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion Royale 0.9
- * @royaleignorecoercion org.apache.royale.core.IBeadModel
*/
public function addBead(bead:IBead):void
{
if (!_beads)
_beads = new Vector.<IBead>;
_beads.push(bead);
- if (bead is IBeadModel)
- _model = bead as IBeadModel;
bead.strand = this;
}
diff --git a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/StrandWithModel.as
similarity index 58%
copy from frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as
copy to frameworks/projects/Core/src/main/royale/org/apache/royale/core/StrandWithModel.as
index 11ceae1..9d78d72 100644
--- a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Strand.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/StrandWithModel.as
@@ -31,7 +31,7 @@ package org.apache.royale.core
* @playerversion AIR 2.6
* @productversion Royale 0.0
*/
- public class Strand extends EventDispatcher implements IStrand
+ public class StrandWithModel extends Strand
{
/**
* Constructor.
@@ -41,7 +41,7 @@ package org.apache.royale.core
* @playerversion AIR 2.6
* @productversion Royale 0.0
*/
- public function Strand()
+ public function StrandWithModel()
{
super();
}
@@ -82,47 +82,6 @@ package org.apache.royale.core
sendStrandEvent(this,"modelChanged")
}
}
-
- private var _id:String;
-
- /**
- * An id property for MXML documents.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.0
- */
- public function get id():String
- {
- return _id;
- }
- public function set id(value:String):void
- {
- if (_id != value)
- {
- _id = value;
- sendStrandEvent(this,"idChanged");
- }
- }
-
- /**
- * @copy org.apache.royale.core.Application#beads
- *
- * The beads are not automatically added to the
- * strand. Subclasses must decide when to
- * add the beads.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.0
- *
- * @royalesuppresspublicvarwarning
- */
- public var beads:Array;
-
- private var _beads:Vector.<IBead>;
/**
* @copy org.apache.royale.core.IStrand#addBead()
@@ -133,56 +92,12 @@ package org.apache.royale.core
* @productversion Royale 0.9
* @royaleignorecoercion org.apache.royale.core.IBeadModel
*/
- public function addBead(bead:IBead):void
+ override public function addBead(bead:IBead):void
{
- if (!_beads)
- _beads = new Vector.<IBead>;
- _beads.push(bead);
+ super.addBead(bead);
if (bead is IBeadModel)
_model = bead as IBeadModel;
- bead.strand = this;
- }
-
- /**
- * @copy org.apache.royale.core.IStrand#getBeadByType()
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.0
- */
- public function getBeadByType(classOrInterface:Class):IBead
- {
- for each (var bead:IBead in _beads)
- {
- if (bead is classOrInterface)
- return bead;
- }
- return null;
- }
-
- /**
- * @copy org.apache.royale.core.IStrand#removeBead()
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.0
- */
- public function removeBead(value:IBead):IBead
- {
- var n:int = _beads.length;
- for (var i:int = 0; i < n; i++)
- {
- var bead:IBead = _beads[i];
- if (bead == value)
- {
- _beads.splice(i, 1);
- return bead;
- }
- }
- return null;
}
-
+
}
}
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
index e4fb53b..f7b4a5f 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
@@ -19,7 +19,7 @@ package org.apache.royale.file
{
import org.apache.royale.core.IBead;
import org.apache.royale.core.IDocument;
- import org.apache.royale.core.Strand;
+ import org.apache.royale.core.StrandWithModel;
import org.apache.royale.utils.BinaryData;
COMPILE::SWF
@@ -47,7 +47,7 @@ package org.apache.royale.file
* @playerversion AIR 2.6
* @productversion Royale 0.9
*/
- public class FileProxy extends Strand implements IDocument, IFileModel
+ public class FileProxy extends StrandWithModel implements IDocument, IFileModel
{
private var _document:Object;
public function FileProxy()