Re: [flexcoders] Re: Bindings on visual components being forgotten? (Flex 3 - 4.6)

2012-03-21 Thread Alex Harui
So is this intermittent or just never works in this configuration?  Are there 
console warning about not being able to detect changes?

Can you make a 20-line test case?


On 3/20/12 7:05 PM, Uber_Nick nic...@gmail.com wrote:






Nope, no difference with one vs two-way Bindings.  I discovered this problem 
with DropDownLists that had one-way bindings and used the change event to 
update the value vo.  I may have even been using selectedIndex instead of 
selectedItem-- don't remember.

The problem persisted after I tried two-way bindings.

Funny thing about it would be that the DropDownList would say May but the 
value of the VO would still be February.  I'd then change the DropDownList to 
June and the VO would update to June.  So the pointers were all referencing 
the right objects.

Even stranger-- changing the VO again externally would not update the 
DropDownList.  Something was going on with either the binding inside the 
DropDownList or the display/render function.  I would have blamed that 
component if it weren't also happening on Input Boxes.

--- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com , Alex 
Harui aharui@... wrote:

 If you take off the two-way binding does it work?


 On 3/18/12 7:41 PM, Uber_Nick nick14@... wrote:






 I haven't tried explicitly re-setting the value manually or with 
 BindingUtils, but that's something I'll try now!  Should still be working 
 without that.

 I have a feeling the problem is actually in the display logic of the 
 component.  Like perhaps some built-in efficiency code to ignore binding 
 updates when it's hidden.  But I'll have to deep-dive a little further to 
 verify that.  It's more likely something I'm missing or doing wrong.

 --- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com  
 mailto:flexcoders%40yahoogroups.com , yang chen chenyang3@ wrote:
 
  Have you tried using binding util?
 
   To: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com  
   mailto:flexcoders%40yahoogroups.com
   From: nick14@
   Date: Fri, 16 Mar 2012 20:08:47 +
   Subject: [flexcoders] Bindings on visual components being forgotten?  
   (Flex 3 - 4.6)
  
   Seeing a strange, rare, issue after updating an app to 4.6.  I can't seem 
   to reproduce it in a dev environment, so I'll list out my issue and setup 
   to see if it sounds familiar to anyone.
  
   The problem:
   Visual components seem to occasionally forget the objects they're bound 
   to.  For instance, I have something like this:
  
   s:DropDownList
   id=cmbMonth
   dataProvider={model.months}
   selectedItem=@{model.selectedMonth}
   /
   s:Label text={model.selectedMonth} /
  
   When the problem occurs, the selectedMonth in the label component is 
   correct, say, February.  But the DropDownList will display a blank.  Even 
   though the DropDownList contains all the months, meaning models.months is 
   bound correctly.
  
   I tried adding:
   requireSelection=true
  
   The addition changed the behavior.  No more blanks!  But now, instead of 
   blanks, selectedMonth is showing something random like May.
  
   Background:
   App has been in production in various versions of Flex 3 for two years 
   without ever seeing this.  Upgrading to Flex 4 and swapping out some Halo 
   components with equivalent Spark ones, users, myself included, began 
   noticing this phenomenon.  I cannot seem to reproduce it in a reliable 
   fashion.  But I've gotten some feedback based on some attempted fixes 
   pushed out to users.
  
   Troubleshooting so far:
   Since it normally works, there's no super-obvious things missing, like an 
   uninitialized pointer, missing Bindable tag, accidental = assignment 
   instead of == comparison, etc.
  
   Also, we know the variable references are pointing to the correct place.  
   model.selectedMonth is showing up fine for a label just underneath the 
   dropdown.  model.months is being referenced just fine by the dropdown 
   itself.  It's just the display of model.selectedMonth in the dropdown.  
   Upon saving, the model.month property correctly propagates itself to the 
   DB, even when the dropdown is displaying the wrong value.  Switching 
   between one-way and two-way bindings don't seem to make a difference 
   either.  I noted above that I tried forcing requireSelection=true, 
   which does prevent the DropDownList from being blanked-out, but doesn't 
   force it to stay on the correct value.
  
   I thought it might be related to just the DropDownList component, but the 
   problem is also occurring on s:TextInput's text property.  Seems like 
   when it happens with the TextInput component (showing a blank value), 
   it's doing so for all the TextInput components.  I'm not so sure if it's 
   happening for all DropDownList elements, though.
  
  
   App setup:
   I have an mx:ViewStack attached to hide/show effects with two containers 
   inside (loggedOff/loggedOn), and a TabNavigator within 

[flexcoders] Flex 4.1 scrolling problem

2012-03-21 Thread bu4fred
I'm committed to using a spark container because I need to use the spark states 
model.

I would like to create my own component that would automatically scroll as 
necessary and appropriately adjust the scrollbar on a browser window resize.  
This generic scrolling container may be included in a tabnavigator or other 
containers (that should not scroll) to get the desired layout.

It look like all I need to do is wrap the spark container in a Scroller or link 
a Scroller to the container.  

My problem is that AFAIK you cannot add elements to a custom mxml component if 
you've already added a component (like a s:Group ) to the component defnition.  
I.e. I cannot use mxml to define a custome component that is an s:Group inside 
a Scroller.  So I guess the approch is to create a custom actionscript 
component.

I'm hoping somebody has already solved this problem and can point me toward a 
link or provide a snippet.

I plan to upgrade to Flex 4.5 in a few months if that's relevant.



[flexcoders] Re: Bindings on visual components being forgotten? (Flex 3 - 4.6)

2012-03-21 Thread Uber_Nick
It's been happening with all configurations, but intermittently.  I've had 0 
success reproducing it at will, even though myself and multiple users have come 
across it on non-dev environments.

My troubleshooting has mostly been releasing things I think *might* have an 
impact, then asking users to send screen caps if they come across the issue 
again.  It seems to be occurring regularly, although a hundred runs of the code 
below haven't shown it on my dev box.  So I can't tell if there are any console 
messages at runtime.  There are no compile-time warnings, and there weren't any 
of these issues when compiling with Flex 3 (swapping Spark components for Halo).

Below is an 80-line, 4-file example I've been trying to use to attempt to 
reproduce the problem.  I have not been successful reproducing it, but the 
structure and components used below closely resembled the full app.  Only thing 
missing is that the full app has a set of Mate controllers and a bunch of AMF 
remote calls.  Nothing those touch seem to be affected though.

Since this problem is so hard to reproduce, I don't expect a resolution here.  
Just seeing if I'm doing something glaringly wrong or if the problems sound 
familiar to other developers.

?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 
minWidth=955 minHeight=600 xmlns:local=*


fx:Declarations
local:MyModel id=model /
/fx:Declarations

mx:ViewStack selectedIndex={model.viewStackIndex}
s:NavigatorContent
showEffect=Fade
hideEffect=Fade

local:Page1 model={model} /
/s:NavigatorContent
s:NavigatorContent
showEffect=Fade
hideEffect=Fade

local:Page2 model={model}/
/s:NavigatorContent
/mx:ViewStack
/s:Application

// MyModel.as
package
{
[Bindable]
public class MyModel
{
public var viewStackIndex:Number=0;

public var one:String=one;
public var two:String=two;
public var three:String=three;
public var four:String=four;
}
}

// Page1.mxml
?xml version=1.0 encoding=utf-8?
s:Group xmlns:fx=http://ns.adobe.com/mxml/2009; 
 xmlns:s=library://ns.adobe.com/flex/spark 
 xmlns:mx=library://ns.adobe.com/flex/mx width=400 
height=300 xmlns:local=*
fx:Declarations
local:MyModel id=model /
/fx:Declarations  
s:Button label=Forward x=150 y=100 click=model.viewStackIndex = 
(model.viewStackIndex == 0) ? 1 : 0;/
/s:Group

// Page2.mxml
?xml version=1.0 encoding=utf-8?
s:Group xmlns:fx=http://ns.adobe.com/mxml/2009; 
 xmlns:s=library://ns.adobe.com/flex/spark 
 xmlns:mx=library://ns.adobe.com/flex/mx width=400 
height=300 xmlns:local=*
 
fx:Script
![CDATA[
import mx.collections.ArrayList;
]]
/fx:Script

fx:Declarations
local:MyModel id=model /
/fx:Declarations
s:TextInput x=10 y=10 text={model.one} /
s:CheckBox x=250 y=10 label={model.two} 
selected={model.two=='two'} visible={model.two=='two'} /
s:Button label=Back x=150 y=100 click=model.viewStackIndex = 
(model.viewStackIndex == 0) ? 1 : 0;/
s:Label x=10 y=200 text={model.three} /
s:DropDownList x=250 y=200  selectedItem={model.four} 
dataProvider={new ArrayList(['bar', 'four', 'bar', 'bar', 'bar', 'bar'])} /
/s:Group




--- In flexcoders@yahoogroups.com, Alex Harui aharui@... wrote:

 So is this intermittent or just never works in this configuration?  Are there 
 console warning about not being able to detect changes?
 
 Can you make a 20-line test case?
 
 
 On 3/20/12 7:05 PM, Uber_Nick nick14@... wrote:
 
 
 
 
 
 
 Nope, no difference with one vs two-way Bindings.  I discovered this problem 
 with DropDownLists that had one-way bindings and used the change event to 
 update the value vo.  I may have even been using selectedIndex instead of 
 selectedItem-- don't remember.
 
 The problem persisted after I tried two-way bindings.
 
 Funny thing about it would be that the DropDownList would say May but the 
 value of the VO would still be February.  I'd then change the DropDownList 
 to June and the VO would update to June.  So the pointers were all 
 referencing the right objects.
 
 Even stranger-- changing the VO again externally would not update the 
 DropDownList.  Something was going on with either the binding inside the 
 DropDownList or the display/render function.  

Re: [flexcoders] Re: Bindings on visual components being forgotten? (Flex 3 - 4.6)

2012-03-21 Thread Alex Harui
I see duplicate dataprovider entries which might confuse which selectedIndex to 
use.

They key is to make sure binding events are getting dispatched.  You might want 
to add a logging facility to track changes and events and some other properties.


On 3/21/12 8:09 AM, Uber_Nick nic...@gmail.com wrote:






It's been happening with all configurations, but intermittently.  I've had 0 
success reproducing it at will, even though myself and multiple users have come 
across it on non-dev environments.

My troubleshooting has mostly been releasing things I think *might* have an 
impact, then asking users to send screen caps if they come across the issue 
again.  It seems to be occurring regularly, although a hundred runs of the code 
below haven't shown it on my dev box.  So I can't tell if there are any console 
messages at runtime.  There are no compile-time warnings, and there weren't any 
of these issues when compiling with Flex 3 (swapping Spark components for Halo).

Below is an 80-line, 4-file example I've been trying to use to attempt to 
reproduce the problem.  I have not been successful reproducing it, but the 
structure and components used below closely resembled the full app.  Only thing 
missing is that the full app has a set of Mate controllers and a bunch of AMF 
remote calls.  Nothing those touch seem to be affected though.

Since this problem is so hard to reproduce, I don't expect a resolution here.  
Just seeing if I'm doing something glaringly wrong or if the problems sound 
familiar to other developers.

?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 minWidth=955 minHeight=600 
xmlns:local=*


fx:Declarations
local:MyModel id=model /
/fx:Declarations

mx:ViewStack selectedIndex={model.viewStackIndex}
s:NavigatorContent
showEffect=Fade
hideEffect=Fade

local:Page1 model={model} /
/s:NavigatorContent
s:NavigatorContent
showEffect=Fade
hideEffect=Fade

local:Page2 model={model}/
/s:NavigatorContent
/mx:ViewStack
/s:Application

// MyModel.as
package
{
[Bindable]
public class MyModel
{
public var viewStackIndex:Number=0;

public var one:String=one;
public var two:String=two;
public var three:String=three;
public var four:String=four;
}
}

// Page1.mxml
?xml version=1.0 encoding=utf-8?
s:Group xmlns:fx=http://ns.adobe.com/mxml/2009;
 xmlns:s=library://ns.adobe.com/flex/spark
 xmlns:mx=library://ns.adobe.com/flex/mx width=400 height=300 
xmlns:local=*
fx:Declarations
local:MyModel id=model /
/fx:Declarations
s:Button label=Forward x=150 y=100 click=model.viewStackIndex = 
(model.viewStackIndex == 0) ? 1 : 0;/
/s:Group

// Page2.mxml
?xml version=1.0 encoding=utf-8?
s:Group xmlns:fx=http://ns.adobe.com/mxml/2009;
 xmlns:s=library://ns.adobe.com/flex/spark
 xmlns:mx=library://ns.adobe.com/flex/mx width=400 height=300 
xmlns:local=*
 
fx:Script
![CDATA[
import mx.collections.ArrayList;
]]
/fx:Script

fx:Declarations
local:MyModel id=model /
/fx:Declarations
s:TextInput x=10 y=10 text={model.one} /
s:CheckBox x=250 y=10 label={model.two} selected={model.two=='two'} 
visible={model.two=='two'} /
s:Button label=Back x=150 y=100 click=model.viewStackIndex = 
(model.viewStackIndex == 0) ? 1 : 0;/
s:Label x=10 y=200 text={model.three} /
s:DropDownList x=250 y=200  selectedItem={model.four} dataProvider={new 
ArrayList(['bar', 'four', 'bar', 'bar', 'bar', 'bar'])} /
/s:Group

--- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com , Alex 
Harui aharui@... wrote:

 So is this intermittent or just never works in this configuration?  Are there 
 console warning about not being able to detect changes?

 Can you make a 20-line test case?


 On 3/20/12 7:05 PM, Uber_Nick nick14@... wrote:






 Nope, no difference with one vs two-way Bindings.  I discovered this problem 
 with DropDownLists that had one-way bindings and used the change event to 
 update the value vo.  I may have even been using selectedIndex instead of 
 selectedItem-- don't remember.

 The problem persisted after I tried two-way bindings.

 Funny thing about it would be that the DropDownList would say May but the 
 value of the VO would still be February.  I'd then change the DropDownList 
 to June and the VO would update to June.  So the pointers were all 
 referencing the right objects.

 Even stranger-- changing the VO again externally would not update the 
 DropDownList.  Something was going on with either the binding inside the 
 DropDownList or the display/render function.  I would have blamed that 
 component if it weren't also happening on Input Boxes.

 --- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com  
 mailto:flexcoders%40yahoogroups.com , Alex Harui aharui@ wrote:
 
  If you take off the two-way binding does it work?
 
 
  On 3/18/12 7:41 PM, Uber_Nick nick14@ wrote:
 
 
 
 
 
 
  I haven't tried explicitly re-setting the value manually or with 
  BindingUtils, but 

Re: [flexcoders] Flex 4.1 scrolling problem

2012-03-21 Thread Alex Harui
I would think a SkinnableContainer’s skin can have a Scroller around its 
contentGroup


On 3/20/12 5:47 PM, bu4fred fred.se...@adventistcare.org wrote:






I'm committed to using a spark container because I need to use the spark states 
model.

I would like to create my own component that would automatically scroll as 
necessary and appropriately adjust the scrollbar on a browser window resize.  
This generic scrolling container may be included in a tabnavigator or other 
containers (that should not scroll) to get the desired layout.

It look like all I need to do is wrap the spark container in a Scroller or link 
a Scroller to the container.

My problem is that AFAIK you cannot add elements to a custom mxml component if 
you've already added a component (like a s:Group ) to the component defnition.  
I.e. I cannot use mxml to define a custome component that is an s:Group inside 
a Scroller.  So I guess the approch is to create a custom actionscript 
component.

I'm hoping somebody has already solved this problem and can point me toward a 
link or provide a snippet.

I plan to upgrade to Flex 4.5 in a few months if that's relevant.






--
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui


[flexcoders] Calendar component for Flex mobile application

2012-03-21 Thread sony antony
Hello all..

Is there any calendar component available to use it in mobile applications.

Regards,
Sony