<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="onInit()" viewSourceURL="srcview/index.html">
    <mx:Script>
        <![CDATA[
            import com.flextras.BindableReadOnly.ComponentBindableReadOnly;
        
            [Bindable]
            public var cbro : ComponentBindableReadOnly = new ComponentBindableReadOnly();
            
            public function onInit():void{
                normalPropertyValue.text = cbro.propertyNormal;
            }

        ]]>
    </mx:Script>
    <mx:Form>
        <mx:FormItem label="Normal Property Value">
            <mx:Text text="{cbro.propertyNormal}" />
        </mx:FormItem>
        <mx:FormItem label="Normal Property Change" direction="horizontal">
            <mx:TextInput id="normalPropertyValue" /> 
            <mx:Button label="Change Normal Property" click="cbro.propertyNormal = normalPropertyValue.text" />
        </mx:FormItem>

        <mx:FormItem label="Read Only non-bindable Property Value" direction="horizontal">
            <mx:Text text="{cbro.propertyRO}" id="readOnlyNotBindable" /> 
            <mx:Button label="update Read Only Non-Bindable Property" click="readOnlyNotBindable.text = cbro.propertyRO" />
        </mx:FormItem>

        <mx:FormItem label="Read Only bindable Property Value">
            <mx:Text text="{cbro.propertyBRO}" />
        </mx:FormItem>


        <mx:FormItem label="Side Effect Changes" direction="horizontal">
            <mx:TextInput id="newValue" /> 
            <mx:Button label="Call Side Effect" click="cbro.causeSideEffect(newValue.text)" />
        </mx:FormItem>

    </mx:Form>
    
</mx:Application>