I'm a bit frustrated here and hope someone can point out where I've
gone wrong.
I've got a repeater that is drawing out 4 circles and binding to a
Singleton class' variable via binding -- all this works well the first
time -- the Singleton class is loading in xml that holds the x/y and
size coords for these 4 circles.
I want to load in the next 4 circles xml and have the repeater redraw
these 4 circles - how best to do this? If I'm using a custom canvas to
draw these 4 circles; should the canvas itself redraw upon the
CircleData.getInstance().currentCircle change?!?
If it's not clear what I'm doing, here's some code.
main.mxml is drawing out a CircleLayout.mxml as a component (Canvas),
and inside there is:
<mx:Repeater id="rep"
dataProvider="{CircleData.getInstance().currentCircle.circle}">
<mx:Button x="{Number([EMAIL PROTECTED])}"
y="{Number([EMAIL PROTECTED])}"
width="{(Number([EMAIL PROTECTED])*defaultSize)}"
height="{(Number([EMAIL PROTECTED])*defaultSize)}"
styleName="{String([EMAIL PROTECTED])}"
label="{String([EMAIL PROTECTED]).toUpperCase()}"
useHandCursor="{CircleData.getInstance().isEdit}"
buttonMode="{CircleData.getInstance().isEdit}"/>
</mx:Repeater >
And within the CircleData class:
public function setCircleData(event:Event):void{
circlesList = new XML(xmlURLLoader.data);
pos = circlesList.item.length()-1;
var tmp:XMLList = [EMAIL PROTECTED];
// change this datelist constructor to have id# of cirlce items
dateList = new ArrayCollection();
for(var i:uint=0; i<tmp.length(); i++){
dateList.addItem({label: tmp[i], data:i});
}
loadCircles(pos);
}
public function loadCircles(newPos:Number):void{
currentCircle = circlesList.item[pos];
}
And the combo box is really just doing
CircleData.getInstance().loadCircles(pos)
But the repeaters aren't firing off the redraw again?