You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ah...@apache.org on 2019/12/05 02:01:24 UTC

[royale-asjs] branch develop updated: emulate DateField.formatString for certain known cases for now. Should fix #578

This is an automated email from the ASF dual-hosted git repository.

aharui 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 83d564d  emulate DateField.formatString for certain known cases for now. Should fix #578
83d564d is described below

commit 83d564d370d4bab1aec3298ba53662c3ea6eb12a
Author: Alex Harui <ah...@apache.org>
AuthorDate: Wed Dec 4 18:01:05 2019 -0800

    emulate DateField.formatString for certain known cases for now. Should fix #578
---
 .../src/main/config/compile-js-config.xml          |  1 +
 frameworks/projects/MXRoyale/pom.xml               | 14 ++++++++++++++
 .../src/main/config/compile-swf-config.xml         |  1 +
 .../MXRoyale/src/main/resources/defaults.css       |  2 +-
 .../src/main/royale/mx/controls/DateField.as       | 22 +++++++++++++++++++---
 5 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/frameworks/js/projects/MXRoyaleJS/src/main/config/compile-js-config.xml b/frameworks/js/projects/MXRoyaleJS/src/main/config/compile-js-config.xml
index 8ad05a6..ba023db 100644
--- a/frameworks/js/projects/MXRoyaleJS/src/main/config/compile-js-config.xml
+++ b/frameworks/js/projects/MXRoyaleJS/src/main/config/compile-js-config.xml
@@ -64,6 +64,7 @@
             <path-element>../../../../../libs/CollectionsJS.swc</path-element>
             <path-element>../../../../../libs/EffectsJS.swc</path-element>
             <path-element>../../../../../libs/ExpressJS.swc</path-element>
+            <path-element>../../../../../libs/FormattersJS.swc</path-element>
             <path-element>../../../../../libs/GraphicsJS.swc</path-element>
             <path-element>../../../../../libs/ChartsJS.swc</path-element>
 	          <path-element>../../../../../libs/NetworkJS.swc</path-element>
diff --git a/frameworks/projects/MXRoyale/pom.xml b/frameworks/projects/MXRoyale/pom.xml
index 9b59b8c..c0fd979 100644
--- a/frameworks/projects/MXRoyale/pom.xml
+++ b/frameworks/projects/MXRoyale/pom.xml
@@ -149,6 +149,13 @@
     </dependency>
     <dependency>
         <groupId>org.apache.royale.framework</groupId>
+        <artifactId>Formatters</artifactId>
+        <version>0.9.7-SNAPSHOT</version>
+        <type>swc</type>
+        <classifier>js</classifier>
+    </dependency>
+    <dependency>
+        <groupId>org.apache.royale.framework</groupId>
         <artifactId>Charts</artifactId>
         <version>0.9.7-SNAPSHOT</version>
         <type>swc</type>
@@ -239,6 +246,13 @@
         </dependency>
         <dependency>
           <groupId>org.apache.royale.framework</groupId>
+          <artifactId>Formatters</artifactId>
+          <version>0.9.7-SNAPSHOT</version>
+          <type>swc</type>
+          <classifier>swf</classifier>
+        </dependency>
+        <dependency>
+          <groupId>org.apache.royale.framework</groupId>
           <artifactId>Charts</artifactId>
           <version>0.9.7-SNAPSHOT</version>
           <type>swc</type>
diff --git a/frameworks/projects/MXRoyale/src/main/config/compile-swf-config.xml b/frameworks/projects/MXRoyale/src/main/config/compile-swf-config.xml
index 87f3229..62e8da4 100644
--- a/frameworks/projects/MXRoyale/src/main/config/compile-swf-config.xml
+++ b/frameworks/projects/MXRoyale/src/main/config/compile-swf-config.xml
@@ -34,6 +34,7 @@
             <path-element>../../../../../libs/Core.swc</path-element>
             <path-element>../../../../../libs/Graphics.swc</path-element>
             <path-element>../../../../../libs/Collections.swc</path-element>
+            <path-element>../../../../../libs/Formatters.swc</path-element>
             <path-element>../../../../../libs/Basic.swc</path-element>
             <path-element>../../../../../libs/DragDrop.swc</path-element>
             <path-element>../../../../../libs/Effects.swc</path-element>
diff --git a/frameworks/projects/MXRoyale/src/main/resources/defaults.css b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
index 5f476fe..909428f 100644
--- a/frameworks/projects/MXRoyale/src/main/resources/defaults.css
+++ b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
@@ -199,7 +199,7 @@ DateField {
 	IBeadView:   ClassReference("mx.controls.beads.DateFieldView");
 	IBeadModel:  ClassReference("org.apache.royale.html.beads.models.DateChooserModel");
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.DateFieldMouseController");
-	IFormatter: ClassReference("org.apache.royale.html.accessories.DateFormatYYYYMMDD");
+	IFormatter: ClassReference("org.apache.royale.html.accessories.DateFormatMMDDYYYY");
 	IPopUp: ClassReference("mx.controls.dateFieldClasses.DateFieldDateChooser");
 }
 
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/DateField.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/DateField.as
index a32e303..18bee20 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/DateField.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/DateField.as
@@ -49,9 +49,13 @@ import mx.utils.ObjectUtil;
 use namespace mx_internal;
 
 import org.apache.royale.core.IDateChooserModel;
+import org.apache.royale.core.IBead;
 import org.apache.royale.core.IFormatter;
 import org.apache.royale.core.IUIBase;
 import org.apache.royale.events.Event;
+import org.apache.royale.html.accessories.DateFormatMMDDYYYY;
+import org.apache.royale.html.accessories.DateFormatDDMMYYYY;
+import org.apache.royale.html.accessories.DateFormatYYYYMMDD;
 import org.apache.royale.utils.loadBeadFromValuesManager;
 import mx.controls.TextInput;
 
@@ -1359,7 +1363,7 @@ public class DateField extends ComboBase
      *  @private
      *  Storage for the formatString property.
      */
-    private var _formatString:String = null;
+    private var _formatString:String = "MM/DD/YYYY";
 
     [Bindable("formatStringChanged")]
     [Inspectable(defaultValue="null")]
@@ -1398,11 +1402,23 @@ public class DateField extends ComboBase
     {
         formatStringOverride = value;
 
-        _formatString = value /* != null ?
+        if (value != _formatString)
+        {
+            _formatString = value /* != null ?
                         value :
                         resourceManager.getString(
                             "SharedResources", "dateFormat")*/;
-
+            var formatter:IBead = getBeadByType(IFormatter);
+            if (formatter)
+                removeBead(formatter);
+            if (value == "MM/DD/YYYY")
+                addBead(new DateFormatMMDDYYYY());
+            else if (value == "DD/MM/YYYY")
+                addBead(new DateFormatDDMMYYYY());
+            else if (value == "YYYY/MM/DD")
+                addBead(new DateFormatYYYYMMDD());
+        }
+        
         /*
         updateDateFiller = true;