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 2019/03/26 15:21:19 UTC
[royale-asjs] branch develop updated: jewel-datechooser: fix a bug
with firstDayOfWeek not showing day one when the index position was 0
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 79d8be4 jewel-datechooser: fix a bug with firstDayOfWeek not showing day one when the index position was 0
79d8be4 is described below
commit 79d8be49e36d1b9ea1db0e22937249fbb60c412f
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Tue Mar 26 16:21:11 2019 +0100
jewel-datechooser: fix a bug with firstDayOfWeek not showing day one when the index position was 0
---
.../royale/jewel/beads/models/DateChooserModel.as | 17 +++++++++++++++--
.../apache/royale/jewel/beads/views/DateChooserView.as | 8 +-------
2 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/DateChooserModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/DateChooserModel.as
index 0535327..3ed24d1 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/DateChooserModel.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/DateChooserModel.as
@@ -324,6 +324,19 @@ package org.apache.royale.jewel.beads.models
dispatchEvent( new Event("monthChanged") );
}
+ /**
+ * Cycle days array for offsetting when change firstDayOfWeek
+ *
+ * @param array , the array to get a position
+ * @param index, the index in the array to use
+ * @param offset, the offset to apply, this could be positive or negative
+ * @return the cycled position
+ */
+ public static function cycleArray(array:Array, index:Number, offset:Number):Number
+ {
+ return ((index + offset) % array.length + array.length) % array.length;
+ }
+
/**
* @private
*/
@@ -334,8 +347,8 @@ package org.apache.royale.jewel.beads.models
{
var firstDay:Date = new Date(displayedYear, displayedMonth, 1);
_days = new Array(NUM_DAYS_VIEW); // always reset the array to remove older values
- // skip to the first day and renumber to the last day of the month
- i = firstDay.getDay() - firstDayOfWeek;
+ // skip to the first day and renumber to the last day of the month (take into account firstDayOfWeek)
+ i = cycleArray(_dayNames, firstDay.getDay(), - firstDayOfWeek);
var dayNumber:int = 1;
var numDays:Number = numberOfDaysInMonth(displayedMonth, displayedYear);
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateChooserView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateChooserView.as
index 000109b..18826ec 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateChooserView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateChooserView.as
@@ -205,12 +205,6 @@ package org.apache.royale.jewel.beads.views
buttonsRow.addElement(tableHeader);
}
-
- // cycle days array for offsetting when change firstDayOfWeek
- private function cycleArray(array:Array, index:Number, n:Number):Number
- {
- return ((index + n) % array.length + array.length) % array.length;
- }
/**
* @private
@@ -291,7 +285,7 @@ package org.apache.royale.jewel.beads.views
{
column = columns[index];
column.columnLabelAlign = "center";
- column.label = model.dayNames[cycleArray(model.dayNames, index, model.firstDayOfWeek)];
+ column.label = model.dayNames[DateChooserModel.cycleArray(model.dayNames, index, model.firstDayOfWeek)];
}
_table.columns = columns;
} else