There’s an example here:

 

http://www.macmartine.com/blog/2006/03/post.html

 

Thanks to Joan for providing the foundation for this!!!

 

 

 


From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of pasflex
Sent: Wednesday, March 22, 2006 11:32 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Re: Tree itemRenderer - flex 2

 

I have tried extending the TreeItemRenderer class similar to your
example, the problem that I have is that the item is still rendered
by a single label.  It's not clear to me how I can create a more
complex item renderer, for example, one that consists of a label and
an image.
Is there a way to do this in flex 2 short of writing a custom
renderer that handles it's own indentation and controls?
Thanks.

--- In flexcoders@yahoogroups.com, "Joan Tan" <[EMAIL PROTECTED]> wrote:
>
> You cannot just drop in any renderer for a Tree component or Menu
which
> need to deal with indentation because your renderer doesn't know
> anything about it. Instead, the easiest thing to do is to use an
> itemRenderer that subclasses the TreeItemRenderer class. Here is an
> example of a Tree item renderer. The renderer will change the font
> weight and color of parent nodes and add text as to how many
children
> each node has.
>

>

>
> package
>
> {
>

>
> import mx.controls.treeClasses.*;
>
> import mx.collections.*;
>

>
>             public class MyTreeItemRenderer extends
TreeItemRenderer
>
>             {
>
>                        
>
>                 public function MyTreeItemRenderer()
>
>                 {
>
>                          super();
>
>                          mouseEnabled = false;
>
>                                    
>
>                 }
>
>                        
>
>                 override public function set data
(value:Object):void
>
>                 {
>
>                          super.data = "">
>
>                          if(TreeListData
(super.listData).hasChildren)
>
>                          {
>
>                              setStyle("color", 0xff0000);
>
>                              setStyle("fontWeight", 'bold');
>
>                         }
>
>                         else
>
>                         {
>
>                              setStyle("color", 0x000000);
>
>                              setStyle("fontWeight", 'normal');
>
>                         }
>
>                 }
>
>             
>
>                override protected function
> updateDisplayList(unscaledWidth:Number, 
unscaledHeight:Number):void
>
>                {
>
>                         super.updateDisplayList(unscaledWidth,
> unscaledHeight);
>
>                         if(super.data)
>
>                         {
>

> if(TreeListData(super.listData).hasChildren)
>
>                               {
>
>                                      var tmp:XMLList = new
> XMLList(TreeListData(super.listData).node);
>
>                                      var myStr:int =
> tmp[0].children().length();
>
>                                      super.label.text =
> TreeListData(super.listData).text + "(" + myStr + ")";
>
>                              }
>
>                        }
>
>               }
>
>       }
>
> }
>
> ________________________________
>
> From: flexcoders@yahoogroups.com
[mailto:[EMAIL PROTECTED] On
> Behalf Of pasflex
> Sent: Wednesday, March 22, 2006 9:52 AM
> To: flexcoders@yahoogroups.com
> Subject: [flexcoders] Tree itemRenderer - flex 2
>

>
> When setting an itemRenderer for a tree in flex2, the tree
controls
> and indentation disappear.  For example, if I try to display a
label
> and an image for each node in the tree and I create an
itemrenderer to
> do so, the tree will only display the root node using the
itemrenderer
> with no controls to open it (basically turning the tree into a one
> item list).
> In flex 1.5 a cellrenderer assigned to a tree didn't override the
> default tree behavior, it only changed the renderering of the item
in
> the node.
> How does one accomplish this is flex2?
>
> Thanks
>
>
>
>
>
> --
> Flexcoders Mailing List
> FAQ:
http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives:
> http://www.mail-archive.com/flexcoders%40yahoogroups.com
>
>
>
>
> ________________________________
>
> YAHOO! GROUPS LINKS
>

>
> *      Visit your group "flexcoders
> <http://groups.yahoo.com/group/flexcoders> " on the web.
>        
> *      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/> .
>

>
> ________________________________
>









--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com




YAHOO! GROUPS LINKS




Reply via email to