Jeff, 

did you ever move forward with this? 

I'd also like to have complex information in the "data" property of a
node. seems to me that it might make sense as an option for the
out-of-the-box code to not try to turn "data" into children since
"label" and "data" are sort of magic names.

d

On 6/6/05, Jeff Beeman <[EMAIL PROTECTED]> wrote:
>  My other thought for a simpler, quicker approach was to use the good old
>  variables of "data" and "label" for each node, and the "data" variable
>  would simply contain a number that references the id of what I'm looking
>  at.  The full data for the node would be stored elsewhere.  
>  
>  The big problem I have with that solution is that my data is now
>  disconnected and I'm creating unnecessary clutter in my app.  Having not
>  looked into the TreeDataProvider too thoroughly yet, could you give me
>  an idea how difficult it might be if I simple modify it to do the
>  following:
>  
>  Any arrays inside a tree data provider are treated as nodes, unless the
>  array is called "data", in which case it is treated as the data for the
>  node.
>  
>  Sounds simple too me on paper... but I realize it could end up being a
>  major headache - thoughts before I begin?
>  
>  
>  /******************************************
>  * Jeff Beeman
>  ******************************************/
>  -----Original Message-----
>  From: [email protected] [mailto:[EMAIL PROTECTED] On
>  Behalf Of alex_harui
>  Sent: Monday, June 06, 2005 7:11 PM
>  To: [email protected]
>  Subject: [flexcoders] Re: Tree dataProviders & backingObject
>  
>  Ah yes, the ol' "convert arrays to children" problem.  The 
>  TreeDataProvider is guilty of trying to hard to figure out which 
>  parts of a complex object are children.  I can only think of two ways 
>  to deal with this:
>  
>  1) write your own implementation of TreeDataProvider that doesn't 
>  munge your data.
>  
>  2) convert your data into the TreeNodes by using addTreeNodeAt then 
>  adding the arrays later.
>  
>  I'd go with #1, it'll be hard to get started but the best solution in 
>  the end.
>  
>  
>  --- In [email protected], Jeff Beeman <[EMAIL PROTECTED]> 
>  wrote:
>  > It looks like I just need to look more into the TreeDataProvider 
>  API.
>  > I'm not very familiar with it (as you can tell), and I guess the
>  > behavior I'm experiencing does make sense.  It just gets difficult 
>  when
>  > I'm trying to make an object that has multiple properties, including
>  > arrays, be the 'data' part of the tree node, as the arrays end up
>  > showing as children (which does make sense).
>  > 
>  > I guess, my recommendation to MM would be to document this 
>  component a
>  > bit better, as I really had no clue where to start with looking for 
>  a
>  > solution :)
>  > 
>  > Thanks, all!
>  > 
>  > 
>  > /******************************************
>  > * Jeff Beeman
>  > ******************************************/
>  > -----Original Message-----
>  > From: [email protected] 
>  [mailto:[EMAIL PROTECTED] On
>  > Behalf Of alex_harui
>  > Sent: Friday, June 03, 2005 4:29 PM
>  > To: [email protected]
>  > Subject: [flexcoders] Re: Tree dataProviders & backingObject
>  > 
>  > The Tree needs a hierarchy of objects each of which implement 
>  > TreeDataProvider.  That way, at each level in the tree we can ask 
>  the 
>  > current node for its children and other data.
>  > 
>  > Built-in Flash types like XMLNode don't support TreeDataProvider 
>  and 
>  > it is too hard to mix it in (and bad practice as well).  Thus we 
>  take 
>  > each XMLNode and wrap it in a TreeDataProvider and put the original 
>  > node in a backingObject.
>  > 
>  > There is no API for limiting tree depth.  I'd think twice before 
>  > implementing it because it would seem to me that the tree should 
>  > faithfully represent its data so, if the data has only two levels 
>  > then fine, but if it has more you should show that too.
>  > 
>  > However, if you really gotta do it, you have a couple of choices 
>  > depending on what you want the UI to look like.  You could override 
>  > setIsOpen on the Tree and block opening of things that are too 
>  deep, 
>  > but the those nodes at level 2 with children will still look like 
>  > folders.  You could customize a TreeDataProvider to pretend that 
>  > nodes of level 2 have no children.  That's probably the best option.
>  > 
>  > --- In [email protected], "Matt Chotin" <[EMAIL PROTECTED]> 
>  wrote:
>  > > Check out the TreeDataProvider API in the ASDoc.  The 
>  backingObject 
>  > is
>  > > used by one implementation of that API (called TreeNode) which is 
>  > used
>  > > when the object you are passing to the Tree does not implement
>  > > TreeDataProvider itself.  
>  > > 
>  > >  
>  > > 
>  > > I don't think we provide an easy way to limit the depth of the 
>  > tree.  I
>  > > suppose you could simply implement the TreeDataProvider API 
>  > yourself to
>  > > make sure that children that are too deep aren't displayed.
>  > > 
>  > >  
>  > > 
>  > > Matt
>  > > 
>  > >  
>  > > 
>  > > ________________________________
>  > > 
>  > > From: [email protected] 
>  > [mailto:[EMAIL PROTECTED] On
>  > > Behalf Of Jeff Beeman
>  > > Sent: Friday, June 03, 2005 2:50 PM
>  > > To: [email protected]
>  > > Subject: [flexcoders] Tree dataProviders & backingObject
>  > > 
>  > >  
>  > > 
>  > > Is there any sort of documentation on the way the Tree component 
>  > deals
>  > > with it's dataProvider?  
>  > > 
>  > > Using the "Object Inspector" from
>  > > http://www.coenraets.com/viewarticle.jsp?articleId=83
> I can see 
>  that
>  > > binding my dataProvider for the tree to an object creates a 
>  > subobject
>  > > called backingObject that actually holds the data.
>  > > 
>  > > So, I've got 2 additional questions - Why does it do this?  And, a
>  > > related question is, how do I limit how many nodes of an object 
>  the 
>  > tree
>  > > actually uses for it's display?  (For example, I only want it to 
>  go 
>  > 2
>  > > levels into a dataProvider)
>  > > 
>  > > 
>  > > /*******************************************
>  > > * Jeff Beeman
>  > > * Digital Media & Instructional Technologies
>  > > * Arizona State University
>  > > *******************************************/
>  > > 
>  > > 
>  > > 
>  > > 
>  > > 
>  > > ________________________________
>  > > 
>  > > Yahoo! Groups Links
>  > > 
>  > > *      To visit your group on the web, go to:
>  > >       http://groups.yahoo.com/group/flexcoders/
>  > >         
>  > > *      To unsubscribe from this group, send an email to:
>  > >       [EMAIL PROTECTED]
>  > > <mailto:[EMAIL PROTECTED]
>  subject=Unsubscribe> 
>  > >         
>  > > *      Your use of Yahoo! Groups is subject to the Yahoo! Terms of
>  > > Service <http://docs.yahoo.com/info/terms/> .
>  > 
>  > 
>  > 
>  > 
>  >  
>  > Yahoo! Groups Links
>  
>  
>  
>  
>  
>  
>  Yahoo! Groups Links
>  
>  
>  
>  
>  
>  
>  
>  
>  
>  
>  ________________________________
>  Yahoo! Groups Links
>  
>  
> To visit your group on the web, go to:
> http://groups.yahoo.com/group/flexcoders/
>   
> To unsubscribe from this group, send an email to:
> [EMAIL PROTECTED]
>   
> Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service. 


-- 
----------------------------------
David Aden
Webworld Technologies


 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to