/**
* Generated by mxmlc 2.0
*
* Package:
* Class: DataBinding2
* Source: C:\Documents and Settings\Kaleb Pederson\My Documents\workspace\DataBinding2\DataBinding2.mxml
* Template: flex2/compiler/mxml/gen/ClassDef.vm
* Time: 2007.10.24 16:32:22 PDT
*/
package
{
import flash.accessibility.*;
import flash.debugger.*;
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.media.*;
import flash.net.*;
import flash.printing.*;
import flash.profiler.*;
import flash.system.*;
import flash.text.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
import mx.binding.*;
import mx.containers.HBox;
import mx.controls.Label;
import mx.controls.TextInput;
import mx.core.Application;
import mx.core.ClassFactory;
import mx.core.DeferredInstanceFromClass;
import mx.core.DeferredInstanceFromFunction;
import mx.core.IDeferredInstance;
import mx.core.IFactory;
import mx.core.IPropertyChangeNotifier;
import mx.core.UIComponentDescriptor;
import mx.core.mx_internal;
import mx.styles.*;
[Frame(extraClass="_DataBinding2_FlexInit")]
[Frame(factoryClass="_DataBinding2_mx_managers_SystemManager")]
public class DataBinding2
extends mx.core.Application
{
[Bindable]
/**
* @private
**/
public var dst : mx.controls.TextInput;
[Bindable]
/**
* @private
**/
public var lbl : mx.controls.Label;
[Bindable]
/**
* @private
**/
public var src : mx.controls.TextInput;
private var _documentDescriptor_ : mx.core.UIComponentDescriptor =
new mx.core.UIComponentDescriptor({
type: mx.core.Application
,
propertiesFactory: function():Object { return {
childDescriptors: [
new mx.core.UIComponentDescriptor({
type: mx.containers.HBox
,
propertiesFactory: function():Object { return {
childDescriptors: [
new mx.core.UIComponentDescriptor({
type: mx.controls.Label
,
propertiesFactory: function():Object { return {
text: "Source Field:"
}}
})
,
new mx.core.UIComponentDescriptor({
type: mx.controls.TextInput
,
id: "src"
,
propertiesFactory: function():Object { return {
width: 219
}}
})
]
}}
})
,
new mx.core.UIComponentDescriptor({
type: mx.containers.HBox
,
propertiesFactory: function():Object { return {
childDescriptors: [
new mx.core.UIComponentDescriptor({
type: mx.controls.Label
,
propertiesFactory: function():Object { return {
text: "Destination Field:"
}}
})
,
new mx.core.UIComponentDescriptor({
type: mx.controls.TextInput
,
id: "dst"
,
propertiesFactory: function():Object { return {
width: 219
}}
})
]
}}
})
,
new mx.core.UIComponentDescriptor({
type: mx.controls.Label
,
id: "lbl"
})
]
}}
})
/**
* @private
**/
public function DataBinding2()
{
super();
mx_internal::_document = this;
mx_internal::_DataBinding2_StylesInit();
this.layout = "vertical";
this.viewSourceURL = "srcview/index.html";
}
/**
* @private
**/
override public function initialize():void
{
mx_internal::setDocumentDescriptor(_documentDescriptor_);
_DataBinding2_bindingsSetup();
var target:DataBinding2 = this;
if (_watcherSetupUtil == null)
{
var watcherSetupUtilClass:Object = getDefinitionByName("_DataBinding2WatcherSetupUtil");
watcherSetupUtilClass["init"](null);
}
_watcherSetupUtil.setup(this,
function(propertyName:String):* { return target[propertyName]; },
_bindings,
_watchers);
super.initialize();
}
[Bindable] public var bool:Boolean;
private var _bindings:Array;
private var _watchers:Array;
private function _DataBinding2_bindingsSetup():void
{
if (!_bindings)
{
_bindings = [];
}
if (!_watchers)
{
_watchers = [];
}
var binding:Binding;
binding = new mx.binding.Binding(this,
function():*
{
return src.text;
},
function(_sourceFunctionReturnValue:*):void
{
dst.text = _sourceFunctionReturnValue;
},
"dst.text");
_bindings[0] = binding;
binding = new mx.binding.Binding(this,
function():*
{
return dst.text;
},
function(_sourceFunctionReturnValue:*):void
{
src.text = _sourceFunctionReturnValue;
},
"src.text");
binding.twoWayCounterpart = _bindings[0];
_bindings[0].twoWayCounterpart = binding;
_bindings[1] = binding;
binding = new mx.binding.Binding(this,
function():*
{
return src.text.length > 5;
},
function(_sourceFunctionReturnValue:*):void
{
bool = _sourceFunctionReturnValue;
},
"bool");
_bindings[2] = binding;
binding = new mx.binding.Binding(this,
function():String
{
var result:* = "[Source Length] " + (src.text.length) + " > 5 : " + (bool);
var stringResult:String = (result == undefined ? null : String(result));
return stringResult;
},
function(_sourceFunctionReturnValue:String):void
{
lbl.text = _sourceFunctionReturnValue;
},
"lbl.text");
_bindings[3] = binding;
}
private function _DataBinding2_bindingExprs():void
{
var destination:*;
[Binding(id='0')]
dst.text = src.text;
[Binding(id='1')]
src.text = dst.text;
[Binding(id='2')]
bool = src.text.length > 5;
[Binding(id='3')]
destination = "[Source Length] " + (src.text.length) + " > 5 : " + (bool);
}
/**
* @private
**/
public static function set watcherSetupUtil(watcherSetupUtil:IWatcherSetupUtil):void
{
(DataBinding2)._watcherSetupUtil = watcherSetupUtil;
}
private static var _watcherSetupUtil:IWatcherSetupUtil;
static mx_internal var _DataBinding2_StylesInit_done : Boolean = false;
mx_internal function _DataBinding2_StylesInit():void
{
if (mx_internal::_DataBinding2_StylesInit_done)
return;
else
mx_internal::_DataBinding2_StylesInit_done = true;
var style:CSSStyleDeclaration;
var effects:Array;
StyleManager.mx_internal::initProtoChainRoots();
}
/**
* @private
**/
public var _bindingsByDestination : Object;
/**
* @private
**/
public var _bindingsBeginWithWord : Object;
}
}