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/24 19:46:16 UTC
[royale-asjs] branch develop updated: jewel-datechooser: navigation
of years should not cause a change on the current selected year
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 6a68643 jewel-datechooser: navigation of years should not cause a change on the current selected year
6a68643 is described below
commit 6a68643f9aa7a7875335e44c3a6fc9558f3c9d92
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Sun Mar 24 20:46:09 2019 +0100
jewel-datechooser: navigation of years should not cause a change on the current selected year
---
.../controllers/DateChooserMouseController.as | 12 ++++-----
.../royale/jewel/beads/models/DateChooserModel.as | 31 ++++++++++++++++++++--
.../royale/jewel/beads/views/DateChooserView.as | 7 ++---
3 files changed, 39 insertions(+), 11 deletions(-)
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as
index ddba742..7720df1 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as
@@ -97,12 +97,12 @@ package org.apache.royale.jewel.beads.controllers
year--;
}
model.displayedMonth = month;
+ model.displayedYear = year;
} else if(model.viewState == 1) {
- year = year - DateChooserModel.NUM_YEARS_VIEW;
+ model.navigateYears = model.navigateYears - DateChooserModel.NUM_YEARS_VIEW;
} else {
- year--;
+ model.displayedYear = --year;
}
- model.displayedYear = year;
}
/**
@@ -123,12 +123,12 @@ package org.apache.royale.jewel.beads.controllers
year++;
}
model.displayedMonth = month;
+ model.displayedYear = year;
} else if(model.viewState == 1) {
- year = year + DateChooserModel.NUM_YEARS_VIEW;
+ model.navigateYears = model.navigateYears + DateChooserModel.NUM_YEARS_VIEW;
} else {
- year++;
+ model.displayedYear = ++year;
}
- model.displayedYear = year;
}
/**
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 09ca4d8..137b1fa 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
@@ -138,6 +138,33 @@ package org.apache.royale.jewel.beads.models
dispatchEvent( new Event("displayedYearChanged") );
}
}
+
+ private var navigateYearsChanged:Boolean;
+ private var _navigateYears:Number;
+ /**
+ * The year currently displayed while navigating in year view
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.4
+ */
+ public function get navigateYears():Number
+ {
+ if(!_navigateYears)
+ return _displayedYear;
+ return _navigateYears;
+ }
+ public function set navigateYears(value:Number):void
+ {
+ if (value != _navigateYears) {
+ _navigateYears = value;
+ navigateYearsChanged = true;
+ updateCalendar();
+ navigateYearsChanged = false;
+ dispatchEvent( new Event("displayedYearChanged") );
+ }
+ }
private var _displayedMonth:Number;
/**
@@ -146,7 +173,7 @@ package org.apache.royale.jewel.beads.models
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion Royale 0.9.4
+ * @productversion Royale 0.9.6
*/
public function get displayedMonth():Number
{
@@ -316,7 +343,7 @@ package org.apache.royale.jewel.beads.models
} else if(viewState == 1)
{
i = 0;
- var yearNumber:int = displayedYear - NUM_YEARS_VIEW/2;
+ var yearNumber:int = (navigateYearsChanged ? navigateYears : displayedYear ) - NUM_YEARS_VIEW/2;
while(i < NUM_YEARS_VIEW)
{
_years[i] = new Date(yearNumber + i++, displayedMonth, 1);
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 84969f2..04d047b 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
@@ -238,7 +238,7 @@ package org.apache.royale.jewel.beads.views
} else if(model.viewState == 1)
{
// display "2016-2039"
- _viewSelector.text = String(model.displayedYear - DateChooserModel.NUM_YEARS_VIEW/2) + "-" + String(model.displayedYear + DateChooserModel.NUM_YEARS_VIEW/2 - 1);
+ _viewSelector.text = String(model.navigateYears - DateChooserModel.NUM_YEARS_VIEW/2) + "-" + String(model.navigateYears + DateChooserModel.NUM_YEARS_VIEW/2 - 1);
tableHeader.expandColumns = 4;
} else
{
@@ -296,7 +296,6 @@ package org.apache.royale.jewel.beads.views
for(index = 0; index < NUM_COLS_YEARS_OR_MONTHS; index++)
{
column = columns[index];
- // column.columnLabelAlign = "center";
column.label = null; // all column labels == null means hide header
}
_table.columns = columns;
@@ -304,7 +303,9 @@ package org.apache.royale.jewel.beads.views
}
/**
- * Only display days if viewState is calendar view (== 0)
+ * Display days if viewState is calendar view (== 0)
+ * Display years if viewState is calendar view (== 1)
+ * Display months if viewState is calendar view (== 2)
*/
private function fillTable():void
{