[jira] [Commented] (FLEX-13423) DateChooser selectedRanges gives selectedRange start+1 day [if selectedRanges.rangeStart is same as selectableRange.rangeStart]

2013-06-09 Thread Justin Mclean (JIRA)

[ 
https://issues.apache.org/jira/browse/FLEX-13423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13678955#comment-13678955
 ] 

Justin Mclean commented on FLEX-13423:
--

Unable to reproduce in develop branch. Can you describe the steps to reproduce 
it with this code?


?xml version=1.0 encoding=utf-8?
s:Application xmlns:fx=http://ns.adobe.com/mxml/2009; 
   xmlns:s=library://ns.adobe.com/flex/spark 
   xmlns:mx=library://ns.adobe.com/flex/mx

s:layout
s:VerticalLayout /
/s:layout

fx:Script
![CDATA[
import mx.events.CalendarLayoutChangeEvent;

protected function 
changed(event:CalendarLayoutChangeEvent):void
{
var length:int = dc.selectedRanges.length;
var selected:String = ;

for (var i:int; i  length; i++) {
selected +=   + 
dc.selectedRanges[i].rangeStart +  -  + dc.selectedRanges[i].rangeEnd;
}

l.text = selected;
}

]]
/fx:Script
mx:DateChooser id=dc change=changed(event) 
allowMultipleSelection=true /

s:Label id=l /

/s:Application

As far a sI can see removeRangeFromSelection doesn't contain code above.

mx_internal function removeRangeFromSelection(startDate:Date, 
endDate:Date):void
{
var rangeEnd:Date;
var rangeStart:Date;

if (endDate  startDate)
return;

for (var n:int = 0; n  selectedRangeCount; n++)
{
rangeStart = _selectedRanges[n].rangeStart;
rangeEnd = _selectedRanges[n].rangeEnd;

// ignore selection range outsie of date range
if (endDate  rangeStart || startDate  rangeEnd)
continue;

// remove selection range inside of date range
if (startDate = rangeStart  endDate = rangeEnd)
{
_selectedRanges[n] = null;
}
// split selection range if date range inside selection 
range
else if (startDate  rangeStart  endDate  rangeEnd)
{
var temp:Date = _selectedRanges[n].rangeEnd;

_selectedRanges[n].rangeEnd = 
addSubtractDays(startDate, -1);

_selectedRanges[selectedRangeCount] = {};
_selectedRanges[selectedRangeCount].rangeStart 
= addSubtractDays(endDate, +1);
_selectedRanges[selectedRangeCount].rangeEnd = 
temp;

selectedRangeCount++;
}
// move selection start date if end overlaps
else if (endDate = rangeStart)
{
_selectedRanges[n].rangeStart = 
addSubtractDays(endDate, +1);   
}
// move selection end date if start overlaps
else if (startDate = rangeEnd)
{
_selectedRanges[n].rangeEnd = 
addSubtractDays(startDate, -1);   
}   
}

// clean up any removed selections
for (n = selectedRangeCount -1; n  0; n--)
{
if (_selectedRanges[n] == null)
{
_selectedRanges.splice(n,1);
selectedRangeCount--;
}
}
}


 DateChooser selectedRanges gives selectedRange start+1 day [if 
 selectedRanges.rangeStart is same as selectableRange.rangeStart]
 ---

 Key: FLEX-13423
 URL: https://issues.apache.org/jira/browse/FLEX-13423
 Project: Apache Flex
  Issue Type: Bug
  Components: mx: DateChooser
Affects Versions: Adobe Flex SDK Previous
  

[jira] [Commented] (FLEX-13423) DateChooser selectedRanges gives selectedRange start+1 day [if selectedRanges.rangeStart is same as selectableRange.rangeStart]

2013-06-07 Thread Natallia (JIRA)

[ 
https://issues.apache.org/jira/browse/FLEX-13423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13678006#comment-13678006
 ] 

Natallia commented on FLEX-13423:
-

The new problem appears after last fix. See steps in Description
Change step 3 to Select the first day 11-December (only 1 day instead of 
range).
 Actual Results: DateChooser selectedRanges.length = 0 
 Expected Results: DateChooser selectedRange.length = 1. 
selectedRanges[0].rangeStart = selectedRanges[0].rangeEnd and should be 
11-December.

Condition should be changed from  to = in removeRangeFromSelection method 
(line 2022):
...
for (var n:int = 0; n  selectedRangeCount; n++) {
rangeStart = _selectedRanges[n].rangeStart;
if (endDate  rangeStart)
continue;
rangeEnd = _selectedRanges[n].rangeEnd;
if (startDate = rangeStart) {
if (endDate = rangeEnd) { //here  replaced with =



 DateChooser selectedRanges gives selectedRange start+1 day [if 
 selectedRanges.rangeStart is same as selectableRange.rangeStart]
 ---

 Key: FLEX-13423
 URL: https://issues.apache.org/jira/browse/FLEX-13423
 Project: Apache Flex
  Issue Type: Bug
  Components: mx: DateChooser
Affects Versions: Adobe Flex SDK Previous
 Environment: Affected OS(s): Windows
 Affected OS(s): Windows XP
 Language Found: English
Reporter: Adobe JIRA
Priority: Minor
  Labels: easyfix, easytest
 Fix For: Apache Flex 4.10.0


   Steps to reproduce:
 1. Compile and run the below sample piece of code
 ?xml version=1.0 encoding=iso-8859-1? 
 mx:Application xmlns:mx=http://www.adobe.com/2006/mxml;
   mx:DateChooser id=dc selectableRange={{rangeStart: new 
 Date(2007,11,11), rangeEnd: new Date(2007,11,19)}} 
 allowMultipleSelection=true /
   mx:Button label=Selected Range click=run()/
   mx:Script
   ![CDATA[
   public function run():void{
   for(var 
 i:int=0;idc.selectedRanges.length;i++)
   {
   
 trace(dc.selectedRanges[i].rangeStart);
   
 trace(dc.selectedRanges[i].rangeEnd);
   }
   }
   ]]
   
   /mx:Script
 /mx:Application
 2. Notice that selectable range is in between 11-December to 19-December
 3. Select all the dates 
 4. Click on the button 'Selected Range'. Notice that in the trace selected 
 range start shows 12-December.
  Actual Results: DateChooser selectedRanges gives selectedRange start+1 day.
  
  
  Expected Results: selectedRange start date should be 11-December.
  
  
  Workaround (if any): none
 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira