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
The following commit(s) were added to refs/heads/develop by this push:
new fac9e91 jewel-itemrenderer: Create a SimpleListItemRenderer that has
simple list capabilities (text, align, styling and is li) and make
ListItemRenderer extend it and add hover and selection capabilities
fac9e91 is described below
commit fac9e91ddc37832f7cf3316fd66a8c4c8c090e82
Author: Carlos Rovira <[email protected]>
AuthorDate: Thu Feb 20 19:33:35 2020 +0100
jewel-itemrenderer: Create a SimpleListItemRenderer that has simple list
capabilities (text, align, styling and is li) and make ListItemRenderer extend
it and add hover and selection capabilities
---
.../Jewel/src/main/resources/jewel-manifest.xml | 1 +
.../royale/jewel/itemRenderers/ListItemRenderer.as | 108 +--------------------
...stItemRenderer.as => SimpleListItemRenderer.as} | 21 +---
3 files changed, 9 insertions(+), 121 deletions(-)
diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
index a28baef..4308d97 100644
--- a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
+++ b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
@@ -204,6 +204,7 @@
<component id="ButtonBarLayout"
class="org.apache.royale.jewel.beads.layouts.ButtonBarLayout"/>
<component id="StringItemRenderer"
class="org.apache.royale.jewel.itemRenderers.StringItemRenderer"/>
+ <component id="SimpleListItemRenderer"
class="org.apache.royale.jewel.itemRenderers.SimpleListItemRenderer"/>
<component id="ListItemRenderer"
class="org.apache.royale.jewel.itemRenderers.ListItemRenderer"/>
<component id="DataGridItemRenderer"
class="org.apache.royale.jewel.itemRenderers.DataGridItemRenderer"/>
<component id="TableItemRenderer"
class="org.apache.royale.jewel.itemRenderers.TableItemRenderer"/>
diff --git
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
index 80d5517..fcafcbe 100644
---
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
+++
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
@@ -18,19 +18,8 @@
////////////////////////////////////////////////////////////////////////////////
package org.apache.royale.jewel.itemRenderers
{
- COMPILE::JS
- {
- import org.apache.royale.core.WrappedHTMLElement;
- import org.apache.royale.html.util.addElementToWrapper;
- }
import org.apache.royale.core.IRuntimeSelectableItemRenderer;
- import org.apache.royale.core.StyledMXMLItemRenderer;
- import org.apache.royale.events.Event;
- import org.apache.royale.html.util.getLabelFromData;
- import org.apache.royale.jewel.beads.controls.TextAlign;
- import
org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListRuntimeSelectableItemRendererBead;
- import org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer;
- import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
+ import
org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListRuntimeSelectableItemRendererBead;
/**
* The ListItemRenderer defines the basic Item Renderer for a Jewel
List Component.
@@ -40,7 +29,7 @@ package org.apache.royale.jewel.itemRenderers
* @playerversion AIR 2.6
* @productversion Royale 0.9.4
*/
- public class ListItemRenderer extends StyledMXMLItemRenderer implements
ITextItemRenderer, IAlignItemRenderer
+ public class ListItemRenderer extends SimpleListItemRenderer
{
/**
* constructor.
@@ -53,105 +42,14 @@ package org.apache.royale.jewel.itemRenderers
public function ListItemRenderer()
{
super();
-
- typeNames = "jewel item";
addClass("selectable");
-
- if(MXMLDescriptor != null)
- {
- addClass("mxmlContent");
- }
}
-
- private var _text:String = "";
-
- [Bindable(event="textChange")]
- /**
- * The text of the renderer
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.9.4
- */
- public function get text():String
- {
- return _text;
- }
-
- public function set text(value:String):void
- {
- if(value != _text) {
- _text = value;
- COMPILE::JS
- {
- if(MXMLDescriptor == null)
- {
- element.innerHTML = _text;
- }
- }
- dispatchEvent(new Event('textChange'));
- }
- }
-
- protected var textAlign:TextAlign;
-
- /**
- * How text align in the itemRenderer instance.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.9.4
- */
- public function get align():String
- {
- return textAlign.align;
- }
-
- public function set align(value:String):void
- {
- if(!textAlign)
- {
- textAlign = new TextAlign();
- addBead(textAlign);
- }
- textAlign.align = value;
- }
-
- /**
- * Sets the data value and uses the String version of the data
for display.
- *
- * @param Object data The object being displayed by the
itemRenderer instance.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion Royale 0.9.4
- */
- override public function set data(value:Object):void
- {
- text = getLabelFromData(this, value);
- super.data = value;
- }
-
- /**
- * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
- * @royaleignorecoercion Text
- */
- COMPILE::JS
- override protected function createElement():WrappedHTMLElement
- {
- addElementToWrapper(this, 'li');
- return element;
- }
-
+
override public function addedToParent():void
{
super.addedToParent();
if (!getBeadByType(IRuntimeSelectableItemRenderer))
addBead(new
ClassSelectorListRuntimeSelectableItemRendererBead(classSelectorList));
}
-
}
}
diff --git
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/SimpleListItemRenderer.as
similarity index 82%
copy from
frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
copy to
frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/SimpleListItemRenderer.as
index 80d5517..7bc3712 100644
---
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
+++
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/SimpleListItemRenderer.as
@@ -23,24 +23,22 @@ package org.apache.royale.jewel.itemRenderers
import org.apache.royale.core.WrappedHTMLElement;
import org.apache.royale.html.util.addElementToWrapper;
}
- import org.apache.royale.core.IRuntimeSelectableItemRenderer;
- import org.apache.royale.core.StyledMXMLItemRenderer;
+ import org.apache.royale.core.StyledMXMLItemRenderer;
import org.apache.royale.events.Event;
import org.apache.royale.html.util.getLabelFromData;
import org.apache.royale.jewel.beads.controls.TextAlign;
- import
org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListRuntimeSelectableItemRendererBead;
import org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer;
import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
/**
- * The ListItemRenderer defines the basic Item Renderer for a Jewel
List Component.
+ * The SimpleListItemRenderer defines the basic Item Renderer for a
Jewel List Component.
*
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion Royale 0.9.4
*/
- public class ListItemRenderer extends StyledMXMLItemRenderer implements
ITextItemRenderer, IAlignItemRenderer
+ public class SimpleListItemRenderer extends StyledMXMLItemRenderer
implements ITextItemRenderer, IAlignItemRenderer
{
/**
* constructor.
@@ -50,13 +48,12 @@ package org.apache.royale.jewel.itemRenderers
* @playerversion AIR 2.6
* @productversion Royale 0.9.4
*/
- public function ListItemRenderer()
+ public function SimpleListItemRenderer()
{
super();
typeNames = "jewel item";
- addClass("selectable");
-
+
if(MXMLDescriptor != null)
{
addClass("mxmlContent");
@@ -145,13 +142,5 @@ package org.apache.royale.jewel.itemRenderers
addElementToWrapper(this, 'li');
return element;
}
-
- override public function addedToParent():void
- {
- super.addedToParent();
- if (!getBeadByType(IRuntimeSelectableItemRenderer))
- addBead(new
ClassSelectorListRuntimeSelectableItemRendererBead(classSelectorList));
- }
-
}
}