I had that import in the main mxml before i replied to your message and still get an error?
>
>
> import com.nutrition.Panelcreatemealitem;
>
> -TH
>
> --- In
flexcoders@..., "Jason B" <nospam@> wrote:
> >
> >
> > It wont accept your suggestions
> >
> > Severity and Description Path Resource Location Creation Time Id
> > 1120: Access of undefined property Panelcreatemealitem. /src Main.mxml
> line 105 1246801954900 468962
> >
> >
> >
> >
> >
> >
> >
> >
> > --- In
flexcoders@..., "Tim Hoff" TimHoff@ wrote:
> > >
> > >
> > > Wow, I've got to say; "What a mess." However, you can get it to work
> > > with the following changes:
> > >
> > > [Bindable]
> > > private var customMeals:XMLListCollection = new XMLListCollection();
> > >
> > >
> > >
> > > // addToMeal event Handler
> > > private function addToMealHandler(event:Event):void
> > > {
> > > customMeals.addItem((event.target as
> > > Panelcreatemealitem).mealDetails);
> > > Alert.show(customMeals.toString());
> > > }
> > >
> > > You have some naming conflicts and, since you're dealing with xml,
> > > you'll need to use an XMLListCollection; instead of an
> ArrayCollection.
> > >
> > > -TH
> > >
> > > --- In
flexcoders@..., "Jason B" <nospam@> wrote:
> > > >
> > > > Heres my three mxml files two of which are under the com/ folder
> and
> > > get imported...hope that helps
> > > >
> > > >
> > > > <?xml version="1.0" encoding="utf-8"?>
> > > > <mx:Application xmlns:mx="
http://www.adobe.com/2006/mxml"
> > > layout="vertical"
> > > > creationComplete="init()" styleName="plain"
> > > xmlns:nutrition="com.nutrition.*"
> > > > paddingLeft="10" paddingTop="10" paddingRight="10"
> paddingBottom="10">
> > > >
> > > > <mx:Script>
> > > > <![CDATA[
> > > > import mx.collections.ArrayCollection;
> > > > import mx.collections.ICollectionView;
> > > > import mx.collections.XMLListCollection;
> > > > import com.nutrition.MealItem;
> > > > import mx.controls.Alert;
> > > > import mx.rpc.events.FaultEvent;
> > > > import mx.rpc.events.ResultEvent;
> > > > import mx.rpc.http.HTTPService;
> > > > // initialize
> > > > private function init():void
> > > > {
> > > > //load calories
> > > > httpservice_load("/main.php/flexnutrition/loadcalories",
> > > this["loadcaloriesResultHandler"]);
> > > >
> > > > hsNutrition.send();
> > > > addEventListener('addToMeal', addToMealHandler);
> > > > addEventListener('removeMeal', removeMealHandler);
> > > > addEventListener('learnAboutThis', learnaboutthisswf);
> > > >
> > > >
> > > >
> > > > }
> > > >
> > > > private function httpservice_load(url_src:String,
> > > resulthandler:Function):void{
> > > >
> > > > httpService.url = url_src;
> > > >
> > > > //var tmp:String = resulthandler.toString();
> > > > //if(tmp != "none")
> > > > httpService.addEventListener(ResultEvent.RESULT, resulthandler);
> > > > httpService.send();
> > > > }
> > > >
> > > > private function learnaboutthisswf(event:Event):void{
> > > > vfc_guy.load("/uploads/swf/" + loadswf_var);
> > > >
> > > > }
> > > >
> > > > [Bindable]
> > > > private var nutritionData:XML;
> > > > [Bindable]
> > > > private var maindata:XML;
> > > > [Bindable]
> > > > public var loadswf_var:String;
> > > > [Bindable]
> > > > public var createmeals_loadswf_var:String;
> > > >
> > > > //load all calories for main meals
> > > > private function loadcaloriesResultHandler(event:ResultEvent):void
> > > > {
> > > > maindata = event.result as XML;
> > > > vfc_guy.load("/uploads/swf/" + maindata.swf);
> > > > }
> > > >
> > > > // nutrition result handler
> > > > private function nutritionResultHandler(event:ResultEvent):void
> > > > {
> > > > nutritionData = event.result as XML;
> > > > }
> > > > // nutrition fault handler
> > > > private function nutritionFaultHandler(event:FaultEvent):void
> > > > {
> > > > Alert.show(event.toString());
> > > > }
> > > >
> > > > // create breakfast
> > > > private function createBreakfast():void
> > > > {
> > > > vsMain.selectedIndex = 1;
> > > > plantype = 'Breakfast';
> > > > }
> > > > // create lunch
> > > > private function createLunch():void
> > > > {
> > > > vsMain.selectedIndex = 1;
> > > > plantype = 'Lunch';
> > > > }
> > > > // create dinner
> > > > private function createDinner():void
> > > > {
> > > > vsMain.selectedIndex = 1;
> > > > plantype = 'Dinner';
> > > > }
> > > >
> > > > [Bindable]
> > > > private var plantype:String;
> > > >
> > > > [Bindable]
> > > > private var customMeals:ArrayCollection = new ArrayCollection;
> > > >
> > > > // addToMeal event Handler
> > > > private function addToMealHandler(event:Event):void
> > > > {
> > > > trace(event.target);
> > > > //customMeals.addItem((event.target as mealitem).mealDetails);
> > > > Alert.show(event.toString());
> > > >
> > > > }
> > > >
> > > > // removeMeal event Handler
> > > > private function removeMealHandler(event:Event):void
> > > > {
> > > > customMeals.removeItemAt(ls.selectedIndex);
> > > > }
> > > >
> > > > ]]>
> > > > </mx:Script>
> > > >
> > > > <mx:HTTPService id="hsNutrition"
> > > url="/main.php/flexnutrition/nutritioncal"
> > > > result="nutritionResultHandler(event)"
> > > > fault="nutritionFaultHandler(event)" resultFormat="e4x"/>
> > > >
> > > > <mx:HTTPService id="httpService" url="" resultFormat="e4x"/>
> > > >
> > > > <mx:Label id="totalcalories" text="{'Today\'s Meal Plan is based
> on a
> > > ' + maindata.totalcalories + ' Calorie Diet'}" fontWeight="bold"
> > > fontSize="18"/>
> > > >
> > > > <!--mx:Button label="Print Meal Menu" /-->
> > > >
> > > > <mx:ViewStack id="vsMain" width="100%" height="100%">
> > > >
> > > > <mx:Canvas id="nutrition_canvas" width="100%" height="100%">
> > > >
> > > > <mx:SWFLoader id="vfc_guy" source="" height="400" width="400"
> > > autoLoad="true" x="700" y="100" />
> > > >
> > > > <mx:HBox width="100%" height="100%">
> > > >
> > > > <mx:VBox width="40%" height="100%">
> > > >
> > > > <nutrition:MealPanel id="pnlBreakfast"
> > > meal="{nutritionData.breakfast}"
> > > > title="Breakfast : Please select one meal from
> > > below({maindata.breakfast} Cal Goal)"/>
> > > >
> > > > <mx:HBox horizontalCenter="right">
> > > > <mx:Button label="Create your own Breakfast"
> > > click="createBreakfast()"/>
> > > > </mx:HBox>
> > > >
> > > >
> > > > <nutrition:MealPanel id="pnlSnack1" meal="{nutritionData.snack1}"
> > > > title="Snack : Please select one snack from
> below({maindata.snack1}
> > > Cal Goal)"/>
> > > > <!--mx:Button label="Create your own Lunch"
> click="createLunch()"/-->
> > > >
> > > > <nutrition:MealPanel id="pnlLunch" meal="{nutritionData.lunch}"
> > > > title="Lunch : Please select one meal from below({maindata.lunch}
> Cal
> > > Goal)"/>
> > > >
> > > > <nutrition:MealPanel id="pnlSnack2" meal="{nutritionData.snack2}"
> > > > title="Snack : Please select one snack from
> below({maindata.snack2}
> > > Cal Goal)"/>
> > > > <!--mx:Button label="Create your own Dinner"
> > > click="createDinner()"/-->
> > > >
> > > > <nutrition:MealPanel id="pnlDinner" meal="{nutritionData.dinner}"
> > > > title="Dinner : Please select one meal from
> below({maindata.dinner}
> > > Cal Goal)"/>
> > > >
> > > > <nutrition:MealPanel id="pnlSnack3" meal="{nutritionData.snack3}"
> > > > title="Snack : Please select one snack from
> below({maindata.snack3}
> > > Cal Goal)"/>
> > > > </mx:VBox>
> > > >
> > > >
> > > > </mx:HBox>
> > > > </mx:Canvas>
> > > >
> > > >
> > > > <mx:HBox width="100%" height="100%">
> > > >
> > > > <mx:VBox width="30%" height="100%">
> > > > <mx:HBox>
> > > > <mx:Label text="{'My Custom ' + plantype}"/>
> > > >
> > > > </mx:HBox>
> > > >
> > > > <mx:List id="ls" dataProvider="{customMeals}" width="100%">
> > > > <mx:itemRenderer>
> > > > <mx:Component>
> > > > <mx:VBox>
> > > > <mx:Image width="100" height="100"/>
> > > > <mx:Button label="Remove" click="dispatchEvent(new
> Event('removeMeal',
> > > true))"/>
> > > > <mx:Label text="{data.serving}"/>
> > > > </mx:VBox>
> > > > </mx:Component>
> > > > </mx:itemRenderer>
> > > > </mx:List>
> > > > </mx:VBox>
> > > >
> > > > <mx:VBox width="100%" height="100%">
> > > >
> > > > <!--mx:Label text="Please select ONE ITEM from list below"/-->
> > > > <mx:ViewStack width="40%" height="410" borderStyle="inset"
> > > borderThickness="2" id="vsCreateMeals">
> > > >
> > > > <mx:VBox >
> > > > <nutrition:Panelcreatemeal id="pnlCreateBreakfast"
> > > meal="{nutritionData.breakfast}"/>
> > > > </mx:VBox>
> > > >
> > > > <mx:VBox >
> > > > <nutrition:Panelcreatemeal id="pnlCreateLunch"
> > > meal="{nutritionData.lunch}"/>
> > > > </mx:VBox>
> > > >
> > > > <mx:VBox >
> > > > <nutrition:Panelcreatemeal id="pnlCreateDinner"
> > > meal="{nutritionData.dinner}"/>
> > > > </mx:VBox>
> > > >
> > > > </mx:ViewStack>
> > > > <mx:HBox>
> > > > <mx:Button label="Save" click="vsMain.selectedIndex = 0;"/>
> > > > <mx:Button label="Cancel" click="vsMain.selectedIndex = 0;"/>
> > > > </mx:HBox>
> > > >
> > > > </mx:VBox>
> > > >
> > > >
> > > > </mx:HBox>
> > > >
> > > > </mx:ViewStack>
> > > >
> > > > </mx:Application>
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > <?xml version="1.0" encoding="utf-8"?>
> > > > <mx:Panel xmlns:mx="
http://www.adobe.com/2006/mxml" width="100%"
> > > height="390"
> > > > borderThicknessLeft="0" borderThicknessRight="0"
> > > borderThicknessBottom="0"
> > > > dropShadowEnabled="false"
> > > > horizontalAlign="center"
> > > xmlns:containers="com.dougmccune.containers.*" title="Select An Item
> > > from below">
> > > >
> > > > <mx:Script>
> > > > <![CDATA[
> > > > //import com.createmealPanel;
> > > >
> > > > [Bindable]
> > > > private var _meal:XMLList;
> > > >
> > > > public function set meal(value:XMLList):void
> > > > {
> > > > if(value)
> > > > {
> > > > _meal = value;
> > > > createContainers();
> > > > }
> > > > }
> > > >
> > > > private function createContainers():void
> > > > {
> > > > for each(var item:Object in _meal.itemdata)
> > > > {
> > > > if(item.available == "yes")
> > > > {
> > > > var mealitem:Panelcreatemealitem = new Panelcreatemealitem;
> > > > coverflow.addChild(mealitem);
> > > > mealitem.mealDetails = item;
> > > > }
> > > > }
> > > > }
> > > > ]]>
> > > > </mx:Script>
> > > >
> > > > <containers:CoverFlowContainer id="coverflow" width="100%"
> > > height="100%"
> > > > horizontalGap="1" borderStyle="inset" backgroundColor="0xFFFFFF"
> > > > segments="9" reflectionEnabled="true"/>
> > > >
> > > > <mx:HBox>
> > > > <mx:Button label="item 1"
> > > click="parentApplication.vsCreateMeals.selectedIndex=0;"/>
> > > > <mx:Button label="side item 1"
> > > click="parentApplication.vsCreateMeals.selectedIndex=1;"/>
> > > > <mx:Button label="side item 2"
> > > click="parentApplication.vsCreateMeals.selectedIndex=2;"/>
> > > > </mx:HBox>
> > > > </mx:Panel>
> > > >
> > > >
> > > >
> > > >
> > > > <?xml version="1.0" encoding="utf-8"?>
> > > > <mx:Panel xmlns:mx="
http://www.adobe.com/2006/mxml" width="310"
> > > height="320"
> > > > title="{mealDetails.title}" horizontalAlign="center">
> > > >
> > > >
> > > > <mx:Metadata>
> > > > [Event(name="addToMeal")]
> > > > [Event(name="learnAboutThis")]
> > > > </mx:Metadata>
> > > >
> > > > <mx:Script>
> > > > <![CDATA[
> > > > import mx.controls.Alert;
> > > >
> > > > [Bindable]
> > > > public var mealDetails:Object;
> > > >
> > > >
> > > > private function calldispatch():void {
> > > > parentApplication.createmeals_loadswf_var = mealDetails.swf;
> > > > dispatchEvent(new Event('learnAboutThis', true));
> > > >
> > > > }
> > > >
> > > > ]]>
> > > > </mx:Script>
> > > >
> > > > <mx:Image source="{'/uploads/nutrition/' + mealDetails.imgsource
> }"
> > > width="285" height="159"/>
> > > >
> > > > <mx:Label text="{mealDetails.serving}"/>
> > > >
> > > > <mx:Button label="Add to Meal" click="dispatchEvent(new
> > > Event('addToMeal', true))"/>
> > > >
> > > > <mx:Button label="Learn About This" click="calldispatch()"/>
> > > >
> > > > </mx:Panel>
> > > >
> > > >
> > > >
> > > > --- In
flexcoders@..., Sam Lai samuel.lai@ wrote:
> > > > >
> > > > > It seems like wherever this code is -
> > > > >
> > > > > [Bindable]
> > > > > private var customMeals:ArrayCollection = new ArrayCollection;
> > > > >
> > > > > //throws error on this line
> > > > > customMeals.addItem((event.target as mealitem).mealDetails);
> > > > >
> > > > > event.target is actually the panel containing the 'create meal
> item'
> > > > > button, as opposed to the mealitem itself. Can you post some
> more of
> > > > > the script and MXML for that part?
> > > > >
> > > > > The src folder is empty for me too in the ZIP file.
> > > > >
> > > > > 2009/7/2 Jason B nospam@:
> > > > > > yes heres the results
> > > > > >
> > >
> "Main0.vsMain.HBox8.VBox968.vsCreateMeals.VBox971.pnlCreateBreakfast.cov\
> \
> > > erflow.Panelcreatemealitem1006"
> > > > > >
> > > > > > How can I access the object data, it's in a file thats under
> the
> > > folder /com/nutrition/file.mxml
> > > > > >
> > > > > >
> > > > > >
> > > > > > --- In
flexcoders@..., Sam Lai <samuel.lai@>
> wrote:
> > > > > >>
> > > > > >> I'd add a trace statement just before it to see what type of
> > > object
> > > > > >> event.target is - it could be that the target is the UI
> > > component, and
> > > > > >> not the data object.
> > > > > >>
> > > > > >> //throws error on this line
> > > > > >> trace(event.target);
> > > > > >> customMeals.addItem((event.target as mealitem).mealDetails);
> > > > > >>
> > > > > >> 2009/7/2 Jason B <nospam@>:
> > > > > >> > I've got an problem when the user clicks on button "Add to
> > > Meal" it throws an error because it can't seem to reference the data
> in
> > > mealDetails object inside the com/ directory?
> > > > > >> >
> > > > > >> > I'm trying to add the item to the list control.
> > > > > >> >
> > > > > >> > I have the code located here in case you want more details
> > > > > >> >
http://files.getdropbox.com/u/228472/mealsflex.zip> > > > > >> >
> > > > > >> >
> > > > > >> > [Bindable]
> > > > > >> > private var customMeals:ArrayCollection = new
> ArrayCollection;
> > > > > >> >
> > > > > >> > //throws error on this line
> > > > > >> > customMeals.addItem((event.target as
> mealitem).mealDetails);
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> > <?xml version="1.0" encoding="utf-8"?>
> > > > > >> > <mx:Panel xmlns:mx="
http://www.adobe.com/2006/mxml"
> width="310"
> > > height="320"
> > > > > >> > title="{mealDetails.title}" horizontalAlign="center">
> > > > > >> >
> > > > > >> >
> > > > > >> > <mx:Metadata>
> > > > > >> > [Event(name="addToMeal")]
> > > > > >> > [Event(name="learnAboutThis")]
> > > > > >> > </mx:Metadata>
> > > > > >> >
> > > > > >> > <mx:Script>
> > > > > >> > <![CDATA[
> > > > > >> > import mx.controls.Alert;
> > > > > >> >
> > > > > >> > [Bindable]
> > > > > >> > public var mealDetails:Object;
> > > > > >> >
> > > > > >> >
> > > > > >> > private function calldispatch():void {
> > > > > >> >
> > > parentApplication.createmeals_loadswf_var = mealDetails.swf;
> > > > > >> > dispatchEvent(new
> > > Event('learnAboutThis', true));
> > > > > >> >
> > > > > >> > }
> > > > > >> >
> > > > > >> > ]]>
> > > > > >> > </mx:Script>
> > > > > >> >
> > > > > >> > <mx:Image source="{'/uploads/nutrition/' +
> > > mealDetails.imgsource }" width="285" height="159"/>
> > > > > >> >
> > > > > >> > <mx:Label text="{mealDetails.serving}"/>
> > > > > >> >
> > > > > >> > <mx:Button label="Add to Meal" click="dispatchEvent(new
> > > Event('addToMeal', true))"/>
> > > > > >> >
> > > > > >> > <mx:Button label="Learn About This"
> > > click="calldispatch()"/>
> > > > > >> >
> > > > > >> > </mx:Panel>
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> > ------------------------------------
> > > > > >> >
> > > > > >> > --
> > > > > >> > Flexcoders Mailing List
> > > > > >> > FAQ:
> > >
http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt> > > > > >> > Alternative FAQ location:
> > >
>
https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-\
> \
> > > 1e62079f6847
> > > > > >> > Search Archives:
> > >
http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo!> Groups
> > > Links
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >>
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > ------------------------------------
> > > > > >
> > > > > > --
> > > > > > Flexcoders Mailing List
> > > > > > FAQ:
> > >
http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt> > > > > > Alternative FAQ location:
> > >
>
https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-\
> \
> > > 1e62079f6847
> > > > > > Search Archives:
> > >
http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo!> Groups
> > > Links
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>