Hi,

 Can any one help in selection of particular tree node. I will be
having a tree with 3 levels of data in my left side. And right side
I'll be having 3 input box where If we give 'Company1' in level1,
'Deparment1' in level2 and 'Emp3' in level3 and if we press ok . It
has to select company1-deparment1-emp3 node level selection.

Here is my sample application code(3 sample files):

<?xml version="1.0" encoding="utf-8"?>
<!-- MainApp.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
xmlns:ns1="components.*"
    width="954" height="100%" horizontalScrollPolicy="off"
verticalScrollPolicy="auto"
    paddingLeft="10" paddingRight="10" paddingTop="10"
paddingBottom="10">

    <mx:HBox width="100%" height="100%" horizontalGap="2">

        <mx:VBox width="25%" height="100%">
            <ns1:CompanyTree id="treeWindow" backgroundColor="0xADD8E6"
width="100%" height="100%"/>
        </mx:VBox>

        <mx:VBox width="100%" height="100%" horizontalScrollPolicy="off"
verticalScrollPolicy="off">
            <ns1:CompanyInput id="compInput" width="100%" height="100%"/>
        </mx:VBox>

    </mx:HBox>
</mx:Application>

<?xml version="1.0" encoding="utf-8"?>
<!-- components/CompanyInput.mxml -->
<mx:Box xmlns:mx="http://www.adobe.com/2006/mxml"; height="100%"
width="100%">

    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.managers.PopUpManager;

            import mx.collections.ArrayCollection;

            private function ok_Click(event:MouseEvent):void {
                
mx.core.Application.application.treeWindow.setSelection(level1.text,
level2.text, level3.text);
            }

        ]]>
    </mx:Script>

    <mx:Form>
        <mx:FormItem label="Level1">
            <mx:TextInput id="level1" textAlign="left" width="300"/>
        </mx:FormItem>

        <mx:FormItem label="Level2">
            <mx:TextInput id="level2" textAlign="left" width="300"/>
        </mx:FormItem>

        <mx:FormItem label="Level3">
            <mx:TextInput id="level3" textAlign="left" width="300"/>
        </mx:FormItem>
    </mx:Form>

    <mx:Button id="okb" label="Ok" textAlign="center"
        fillColors="[0xDEB887, 0xDEB887]" borderColor="0xF4A460"
        click="ok_Click(event);"/>

</mx:Box>


<?xml version="1.0" encoding="utf-8"?>
<!-- components/CompanyTree.mxml -->
<mx:Box xmlns:mx="http://www.adobe.com/2006/mxml"; initialize="init();"
        height="100%" width="100%" paddingBottom="0" paddingTop="0">

        <!-- {{{ SCRIPT -->
        <mx:Script>
        <![CDATA[
                import mx.binding.utils.ChangeWatcher;
                import mx.controls.Alert;
                import mx.binding.utils.BindingUtils;
                import mx.events.ListEvent;
                import mx.collections.ListCollectionView;
                import mx.collections.ArrayCollection;

                [Binding]
                public var treeData:ListCollectionView = new ArrayCollection();

                private function init():void {
                    var level2Children:ArrayCollection = new ArrayCollection();
                    level2Children.addItem({label:'Emp1', level1:'Company1',
level2:'Department1', level3:'Emp1', clickable:true});
                    level2Children.addItem({label:'Emp2', level1:'Company1',
level2:'Department1', level3:'Emp2', clickable:false});
                    level2Children.addItem({label:'Emp3', level1:'Company1',
level2:'Department1', level3:'Emp3', clickable:true});

                    var level1Children:ArrayCollection = new ArrayCollection();
                    level1Children.addItem({label:'Department1',
children:level2Children, level1:'Company1', level2:'Department1',
level3:'All', clickable:true});

                    level2Children = new ArrayCollection();
                    level2Children.addItem({label:'Emp4', level1:'Company1',
level2:'Department2', level3:'Emp4', clickable:true});
                    level2Children.addItem({label:'Emp5', level1:'Company1',
level2:'Department2', level3:'Emp5', clickable:true});
                    level2Children.addItem({label:'Emp6', level1:'Company1',
level2:'Department2', level3:'Emp6', clickable:true});

                    level1Children.addItem({label:'Department2',
children:level2Children, level1:'Company1', level2:'Department2',
level3:'All', clickable:true});

                    treeData.addItem({label:'Company1', children:level1Children,
level1:'Company1', level2:'All', level3:'All', clickable:true});

                    level2Children = new ArrayCollection();
                    level2Children.addItem({label:'Emp1', level1:'Company2',
level2:'Department1', level3:'Emp1', clickable:true});
                    level2Children.addItem({label:'Emp2', level1:'Company2',
level2:'Department1', level3:'Emp2', clickable:true});
                    level2Children.addItem({label:'Emp3', level1:'Company2',
level2:'Department1', level3:'Emp3', clickable:true});

                    level1Children = new ArrayCollection();
                    level1Children.addItem({label:'Department1',
children:level2Children, level1:'Company2', level2:'Department1',
level3:'All', clickable:true});

                    treeData.addItem({label:'Company2', children:level1Children,
level1:'Company2', level2:'All', level3:'All', clickable:true});
                }

                public function setSelection(level1:String, level2:String,
level3:String):void {
                        trace("\n\nCompanyTree setSelection");
                        trace("\tSetSelection Models: " + level1 + "---" + 
level2 + "---" +
level3);
                        trace("\t\t CompanyTree Size: " + 
compTree.dataProvider.length);
                }

        ]]>
        </mx:Script>
        <!-- }}} -->

        <mx:VBox height="100%" width="100%" backgroundColor="0xFFFFFF"
verticalGap="1">
            <mx:Tree id="compTree" width="100%" height="100%" showRoot="true"
backgroundColor="0xB0E0E6"
                dataProvider = "{treeData}"/>
        </mx:VBox>

</mx:Box>

Looking forward for your reply.

Thanks & Regards,
Anil
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Flex 
India Community" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/flex_india?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to