You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2015/04/15 23:43:30 UTC

[25/55] [abbrv] git commit: [flex-asjs] [refs/heads/develop] - move handwritten JS code to final home. Build scripts still need fixing up

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Charts/js/src/org/apache/flex/charts/core/IVerticalAxisBead.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/js/src/org/apache/flex/charts/core/IVerticalAxisBead.js b/frameworks/projects/Charts/js/src/org/apache/flex/charts/core/IVerticalAxisBead.js
new file mode 100644
index 0000000..f4a9bac
--- /dev/null
+++ b/frameworks/projects/Charts/js/src/org/apache/flex/charts/core/IVerticalAxisBead.js
@@ -0,0 +1,59 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * org_apache_flex_charts_core_IVerticalAxisBead
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_charts_core_IVerticalAxisBead');
+
+goog.require('org_apache_flex_charts_core_IAxisBead');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_charts_core_IAxisBead}
+ */
+org_apache_flex_charts_core_IVerticalAxisBead = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_charts_core_IVerticalAxisBead.prototype.FLEXJS_CLASS_INFO = {
+    names: [{ name: 'IVerticalAxisBead', qName: 'org_apache_flex_charts_core_IVerticalAxisBead'}],
+    interfaces: [org_apache_flex_charts_core_IAxisBead]
+  };
+
+Object.defineProperties(org_apache_flex_charts_core_IVerticalAxisBead.prototype, {
+    /** @expose */
+    axisWidth: {
+        set: function(value) {},
+        get: function() {}
+    },
+    /** @expose */
+    maximum: {
+        get: function() {}
+    },
+    /** @expose */
+    minimum: {
+        get: function() {}
+    }
+});

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartAxisGroup.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartAxisGroup.js b/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartAxisGroup.js
new file mode 100644
index 0000000..e12cb13
--- /dev/null
+++ b/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartAxisGroup.js
@@ -0,0 +1,155 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_charts_supportClasses_ChartAxisGroup');
+
+goog.require('org_apache_flex_charts_core_IAxisGroup');
+goog.require('org_apache_flex_core_UIBase');
+goog.require('org_apache_flex_core_graphics_Path');
+goog.require('org_apache_flex_html_Label');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_core_UIBase}
+ * @implements {org_apache_flex_charts_core_IAxisGroup}
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup =
+    function() {
+  org_apache_flex_charts_supportClasses_ChartAxisGroup.base(this, 'constructor');
+};
+goog.inherits(
+    org_apache_flex_charts_supportClasses_ChartAxisGroup,
+    org_apache_flex_core_UIBase);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'ChartAxisGroup',
+                qName: 'org_apache_flex_charts_supportClasses_ChartAxisGroup' }],
+      interfaces: [org_apache_flex_charts_core_IAxisGroup] };
+
+
+/**
+ * @override
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.
+    prototype.createElement = function() {
+  this.element = document.createElement('div');
+  this.element.flexjs_wrapper = this;
+  this.className = 'ChartAxisGroup';
+
+  this.positioner = this.element;
+
+  return this.element;
+};
+
+
+/**
+ * @expose
+ * @param {string} text The label to display.
+ * @param {number} xpos The x position of the label.
+ * @param {number} ypos The y position of the label.
+ * @param {number} boxWidth The size of the area for the label.
+ * @param {number} boxHeight The size of the area for the label.
+ * @param {org_apache_flex_core_graphics_IStroke} tickFill The color of the path.
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.drawHorizontalTickLabel =
+function(text, xpos, ypos, boxWidth, boxHeight, tickFill) {
+  var label = new org_apache_flex_html_Label();
+  this.addElement(label);
+  label.text = text;
+  label.x = xpos - label.width / 2;
+  label.y = ypos;
+};
+
+
+/**
+ * @expose
+ * @param {string} text The label to display.
+ * @param {number} xpos The x position of the label.
+ * @param {number} ypos The y position of the label.
+ * @param {number} boxWidth The size of the area for the label.
+ * @param {number} boxHeight The size of the area for the label.
+ * @param {org_apache_flex_core_graphics_IStroke} tickFill The color of the path.
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.drawVerticalTickLabel =
+function(text, xpos, ypos, boxWidth, boxHeight, tickFill) {
+  var label = new org_apache_flex_html_Label();
+  this.addElement(label);
+  label.text = text;
+  label.x = xpos;
+  label.y = ypos - label.height / 2;
+};
+
+
+/**
+ * @expose
+ * @param {number} originX The x position of the path.
+ * @param {number} originY The y position of the path.
+ * @param {number} width The size of the area for the path.
+ * @param {number} height The size of the area for the path.
+ * @param {string} marks The path to draw.
+ * @param {org_apache_flex_core_graphics_IStroke} tickStroke The color of the path.
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.drawTickMarks =
+function(originX, originY, width, height, marks, tickStroke) {
+  var tickPath = new org_apache_flex_core_graphics_Path();
+  tickPath.x = 0;
+  tickPath.y = 0;
+  tickPath.width = this.width;
+  tickPath.height = this.height;
+  this.addElement(tickPath);
+  tickPath.stroke = tickStroke;
+  tickPath.drawPath(0, 0, marks);
+};
+
+
+/**
+ * @expose
+ * @param {number} originX The x position of the path.
+ * @param {number} originY The y position of the path.
+ * @param {number} width The size of the area for the path.
+ * @param {number} height The size of the area for the path.
+ * @param {org_apache_flex_core_graphics_IStroke} lineStroke The color of the path.
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.drawAxisLine =
+function(originX, originY, width, height, lineStroke) {
+  var axisPath = new org_apache_flex_core_graphics_Path();
+  axisPath.x = 0;
+  axisPath.y = 0;
+  axisPath.width = this.width;
+  axisPath.height = this.height;
+  this.addElement(axisPath);
+  axisPath.stroke = lineStroke;
+  var pathLine = 'M ' + String(originX) + ' ' + String(originY) + ' l ' + String(width) + ' ' + String(height);
+  axisPath.drawPath(0, 0, pathLine);
+};
+
+
+/**
+ * @return {void}
+ */
+org_apache_flex_charts_supportClasses_ChartAxisGroup.prototype.removeAllElements =
+function() {
+  var svg = this.element;
+  while (svg.lastChild) {
+    svg.removeChild(svg.lastChild);
+  }
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartDataGroup.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartDataGroup.js b/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartDataGroup.js
new file mode 100644
index 0000000..14d03a4
--- /dev/null
+++ b/frameworks/projects/Charts/js/src/org/apache/flex/charts/supportClasses/ChartDataGroup.js
@@ -0,0 +1,82 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_charts_supportClasses_ChartDataGroup');
+
+goog.require('org_apache_flex_charts_core_IChartDataGroup');
+goog.require('org_apache_flex_html_supportClasses_NonVirtualDataGroup');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_html_supportClasses_NonVirtualDataGroup}
+ * @implements {org_apache_flex_charts_core_IChartDataGroup}
+ */
+org_apache_flex_charts_supportClasses_ChartDataGroup =
+    function() {
+  org_apache_flex_charts_supportClasses_ChartDataGroup.base(this, 'constructor');
+};
+goog.inherits(
+    org_apache_flex_charts_supportClasses_ChartDataGroup,
+    org_apache_flex_html_supportClasses_NonVirtualDataGroup);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_charts_supportClasses_ChartDataGroup.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'ChartDataGroup',
+                qName: 'org_apache_flex_charts_supportClasses_ChartDataGroup' }],
+      interfaces: [org_apache_flex_charts_core_IChartDataGroup] };
+
+
+/**
+ * @override
+ */
+org_apache_flex_charts_supportClasses_ChartDataGroup.
+    prototype.createElement = function() {
+  this.element = document.createElement('div');
+  this.element.flexjs_wrapper = this;
+  this.className = 'ChartDataGroup';
+
+  this.positioner = this.element;
+
+  return this.element;
+};
+
+
+/**
+ * @expose
+ * @param {Object} series The series containing the itemRenderer.
+ * @param {number} index The position of the itemRenderer within the series.
+ * @return {Object} The itemRenderer that matches the series and index.
+ */
+org_apache_flex_charts_supportClasses_ChartDataGroup.prototype.getItemRendererForSeriesAtIndex =
+function(series, index) {
+  var n = this.numElements;
+  for (var i = 0; i < n; i++)
+  {
+    var child = this.getElementAt(i);
+    if (child && child.series == series) {
+      if (index === 0) return child;
+      --index;
+    }
+  }
+
+  return null;
+};
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/flash/display/Sprite.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/flash/display/Sprite.js b/frameworks/projects/Core/js/src/flash/display/Sprite.js
new file mode 100644
index 0000000..8d9684d
--- /dev/null
+++ b/frameworks/projects/Core/js/src/flash/display/Sprite.js
@@ -0,0 +1,40 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('flash_display_Sprite');
+
+
+
+/**
+ * @constructor
+ */
+flash_display_Sprite = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+flash_display_Sprite.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'Sprite',
+                qName: 'flash_display_Sprite' }] };
+
+
+/**
+ * @expose
+ */
+flash_display_Sprite.prototype.start = function() {
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/core/ClassFactory.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/core/ClassFactory.js b/frameworks/projects/Core/js/src/mx/core/ClassFactory.js
new file mode 100644
index 0000000..97fec5c
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/core/ClassFactory.js
@@ -0,0 +1,64 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('mx_core_ClassFactory');
+
+goog.require('mx_core_IFactory');
+
+
+
+/**
+ * @constructor
+ * @implements {mx_core_IFactory}
+ * @param {Function} generator The class definition to use for newInstance.
+ */
+mx_core_ClassFactory = function(generator) {
+  /**
+   * @private
+   * @type {Function}
+   */
+  this.generator_ = generator;
+  this.properties_ = null;
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_core_ClassFactory.prototype.
+    FLEXJS_CLASS_INFO =
+        { names: [{ name: 'ClassFactory',
+           qName: 'mx_core_ClassFactory' }],
+    interfaces: [mx_core_IFactory] };
+
+
+/**
+ * @expose
+ * @return {Object} The new instance of the class described by generator.
+ */
+mx_core_ClassFactory.
+    prototype.newInstance = function() {
+  var obj = new this.generator_();
+
+  if (this.properties_) {
+    var prop;
+    for (prop in this.properties_) {
+      obj[prop] = this.properties_[prop];
+    }
+  }
+
+  return obj;
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/core/IFactory.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/core/IFactory.js b/frameworks/projects/Core/js/src/mx/core/IFactory.js
new file mode 100644
index 0000000..556a4e0
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/core/IFactory.js
@@ -0,0 +1,45 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('mx_core_IFactory');
+
+
+
+/**
+ * @interface
+ */
+mx_core_IFactory = function() {
+};
+
+
+/**
+ * @expose
+ * @return {Object} A new instance of the itemRenderer.
+ */
+mx_core_IFactory.prototype.newInstance = function() {};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_core_IFactory.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IFactory',
+                qName: 'mx_core_IFactory' }] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/states/AddItems.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/states/AddItems.js b/frameworks/projects/Core/js/src/mx/states/AddItems.js
new file mode 100644
index 0000000..22f7619
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/states/AddItems.js
@@ -0,0 +1,129 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('mx_states_AddItems');
+
+goog.require('org_apache_flex_core_IDocument');
+
+
+
+/**
+ * @constructor
+ * @implements {org_apache_flex_core_IDocument}
+ */
+mx_states_AddItems = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_states_AddItems.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'AddItems',
+                qName: 'mx_states_AddItems' }],
+      interfaces: [org_apache_flex_core_IDocument] };
+
+
+/**
+ * @param {Object} document The MXML object.
+ * @param {?string=} opt_id The id.
+ */
+mx_states_AddItems.prototype.setDocument = function(document, opt_id) {
+  opt_id = typeof opt_id !== 'undefined' ? opt_id : null;
+  this.document = document;
+  var data = document['mxmlsd'][this.itemsDescriptorIndex];
+  if (typeof(data.slice) == 'function') {
+    this.itemsDescriptor = {};
+    this.itemsDescriptor.descriptor = data;
+    // replace the entry in the document so subsequent
+    // addItems know it is shared
+    this.document['mxmlsd'][this.itemsDescriptorIndex] = this.itemsDescriptor;
+  } else
+    this.itemsDescriptor = data;
+};
+
+
+/**
+ * @expose
+ * @type {Object} document The MXML object.
+ */
+mx_states_AddItems.prototype.document = null;
+
+
+/**
+ * @expose
+ * @type {Array} items The array of items to add.
+ */
+mx_states_AddItems.prototype.items = null;
+
+
+/**
+ * @expose
+ * @type {number} itemsDescriptor The index into the array
+ *                               of itemDescriptors on the document
+ */
+mx_states_AddItems.prototype.itemsDescriptorIndex = -1;
+
+
+/**
+ * @expose
+ * @type {Object} itemsDescriptor The descriptors for items.
+ */
+mx_states_AddItems.prototype.itemsDescriptor = null;
+
+
+/**
+ * @expose
+ * @type {string} destination The id of the parent.
+ */
+mx_states_AddItems.prototype.destination = '';
+
+
+/**
+ * @expose
+ * @type {string} propertyName The child property name (e.g. mxmlContent).
+ */
+mx_states_AddItems.prototype.propertyName = '';
+
+
+/**
+ * @expose
+ * @type {string} position Where the item goes relative to relativeTo.
+ */
+mx_states_AddItems.prototype.position = '';
+
+
+/**
+ * @expose
+ * @type {?string} relativeTo The id of the child where the item goes.
+ */
+mx_states_AddItems.prototype.relativeTo = null;
+
+
+/**
+ * @expose
+ * @param {Object} properties The properties for the new object.
+ * @return {Object} The new object.
+ */
+mx_states_AddItems.prototype.initializeFromObject = function(properties) {
+  var p;
+
+  for (p in properties) {
+    this[p] = properties[p];
+  }
+
+  return this;
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/states/SetEventHandler.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/states/SetEventHandler.js b/frameworks/projects/Core/js/src/mx/states/SetEventHandler.js
new file mode 100644
index 0000000..1edc36e
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/states/SetEventHandler.js
@@ -0,0 +1,91 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('mx_states_SetEventHandler');
+
+goog.require('org_apache_flex_core_IDocument');
+
+
+
+/**
+ * @constructor
+ * @implements {org_apache_flex_core_IDocument}
+ */
+mx_states_SetEventHandler = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_states_SetEventHandler.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'SetEventHandler',
+                qName: 'mx_states_SetEventHandler' }],
+      interfaces: [org_apache_flex_core_IDocument] };
+
+
+/**
+ * @param {Object} document The MXML object.
+ * @param {?string=} opt_id The id.
+ */
+mx_states_SetEventHandler.prototype.setDocument = function(document, opt_id) {
+  opt_id = typeof opt_id !== 'undefined' ? opt_id : null;
+  this.document = document;
+};
+
+
+/**
+ * @expose
+ * @type {Object} document The MXML object.
+ */
+mx_states_SetEventHandler.prototype.document = null;
+
+
+/**
+ * @expose
+ * @type {string} name The event to listen for.
+ */
+mx_states_SetEventHandler.prototype.name = '';
+
+
+/**
+ * @expose
+ * @type {string} target The id of the object.
+ */
+mx_states_SetEventHandler.prototype.target = '';
+
+
+/**
+ * @expose
+ * @type {Object} handlerFunction The listener to be added.
+ */
+mx_states_SetEventHandler.prototype.handlerFunction = null;
+
+
+/**
+ * @expose
+ * @param {Object} properties The properties for the new object.
+ * @return {Object} The new object.
+ */
+mx_states_SetEventHandler.prototype.initializeFromObject = function(properties) {
+  var p;
+
+  for (p in properties) {
+    this[p] = properties[p];
+  }
+
+  return this;
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/states/SetProperty.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/states/SetProperty.js b/frameworks/projects/Core/js/src/mx/states/SetProperty.js
new file mode 100644
index 0000000..f7feca9
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/states/SetProperty.js
@@ -0,0 +1,98 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('mx_states_SetProperty');
+
+goog.require('org_apache_flex_core_IDocument');
+
+
+
+/**
+ * @constructor
+ * @implements {org_apache_flex_core_IDocument}
+ */
+mx_states_SetProperty = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_states_SetProperty.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'SetProperty',
+                qName: 'mx_states_SetProperty' }],
+      interfaces: [org_apache_flex_core_IDocument] };
+
+
+/**
+ * @param {Object} document The MXML object.
+ * @param {?string=} opt_id The id.
+ */
+mx_states_SetProperty.prototype.setDocument = function(document, opt_id) {
+  opt_id = typeof opt_id !== 'undefined' ? opt_id : null;
+  this.document = document;
+};
+
+
+/**
+ * @expose
+ * @type {Object} document The MXML object.
+ */
+mx_states_SetProperty.prototype.document = null;
+
+
+/**
+ * @expose
+ * @type {string} name The target property name.
+ */
+mx_states_SetProperty.prototype.name = '';
+
+
+/**
+ * @expose
+ * @type {?string} target The id of the object.
+ */
+mx_states_SetProperty.prototype.target = null;
+
+
+/**
+ * @expose
+ * @type {Object} previousValue The value to revert to.
+ */
+mx_states_SetProperty.prototype.previousValue = null;
+
+
+/**
+ * @expose
+ * @type {Object} value The value to set.
+ */
+mx_states_SetProperty.prototype.value = null;
+
+
+/**
+ * @expose
+ * @param {Object} properties The properties for the new object.
+ * @return {Object} The new object.
+ */
+mx_states_SetProperty.prototype.initializeFromObject = function(properties) {
+  var p;
+
+  for (p in properties) {
+    this[p] = properties[p];
+  }
+
+  return this;
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/mx/states/State.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/mx/states/State.js b/frameworks/projects/Core/js/src/mx/states/State.js
new file mode 100644
index 0000000..0d6df35
--- /dev/null
+++ b/frameworks/projects/Core/js/src/mx/states/State.js
@@ -0,0 +1,49 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('mx_states_State');
+
+
+
+/**
+ * @constructor
+ * @param {Object=} opt_props The initial properties.
+ */
+mx_states_State = function(opt_props) {
+  opt_props = typeof opt_props !== 'undefined' ? opt_props : null;
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+mx_states_State.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'State',
+                qName: 'mx_states_State' }] };
+
+
+/**
+ * @expose
+ * @type {string} name The state name.
+ */
+mx_states_State.prototype.name = '';
+
+
+/**
+ * @expose
+ * @type {Array} overrides The state data.
+ */
+mx_states_State.prototype.overrides = null;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/Application.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/Application.js b/frameworks/projects/Core/js/src/org/apache/flex/core/Application.js
new file mode 100644
index 0000000..2e20a19
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/Application.js
@@ -0,0 +1,128 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_Application');
+
+goog.require('org_apache_flex_core_HTMLElementWrapper');
+goog.require('org_apache_flex_core_IParent');
+goog.require('org_apache_flex_core_IValuesImpl');
+goog.require('org_apache_flex_core_ValuesManager');
+goog.require('org_apache_flex_utils_MXMLDataInterpreter');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_core_HTMLElementWrapper}
+ */
+org_apache_flex_core_Application = function() {
+  org_apache_flex_core_Application.base(this, 'constructor');
+};
+goog.inherits(org_apache_flex_core_Application,
+    org_apache_flex_core_HTMLElementWrapper);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_Application.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'Application',
+                qName: 'org_apache_flex_core_Application' }],
+      interfaces: [org_apache_flex_core_IParent] };
+
+
+/**
+ * @expose
+ * @type {Object}
+ */
+org_apache_flex_core_Application.prototype.controller = null;
+
+
+/**
+ * @expose
+ * @type {Object}
+ */
+org_apache_flex_core_Application.prototype.initialView = null;
+
+
+/**
+ * @expose
+ * @type {org_apache_flex_events_EventDispatcher}
+ */
+org_apache_flex_core_Application.prototype.model = null;
+
+
+Object.defineProperties(org_apache_flex_core_Application.prototype, {
+    /** @expose */
+    valuesImpl: {
+        /** @this {org_apache_flex_core_Application} */
+        set: function(value) {
+            org_apache_flex_core_ValuesManager.valuesImpl = value;
+            if (value.init) {
+              value.init(this);
+            }
+        }
+    },
+    /** @expose */
+    MXMLDescriptor: {
+        /** @this {org_apache_flex_core_Application} */
+        get: function() {
+            return null;
+        }
+    }
+});
+
+
+/**
+ * @expose
+ */
+org_apache_flex_core_Application.prototype.start = function() {
+  this.element = document.getElementsByTagName('body')[0];
+  this.element.flexjs_wrapper = this;
+  this.element.className = 'Application';
+
+  org_apache_flex_utils_MXMLDataInterpreter.generateMXMLInstances(this, null, this.MXMLDescriptor);
+
+  this.dispatchEvent('initialize');
+
+  if (this.model) this.addBead(this.model);
+  if (this.controller) this.addBead(this.controller);
+
+  this.initialView.applicationModel = this.model;
+  this.addElement(this.initialView);
+
+  this.dispatchEvent('viewChanged');
+};
+
+
+/**
+ * @expose
+ * @param {Array} data The data for the attributes.
+ */
+org_apache_flex_core_Application.prototype.generateMXMLAttributes = function(data) {
+  org_apache_flex_utils_MXMLDataInterpreter.generateMXMLProperties(this, data);
+};
+
+
+/**
+ * @param {Object} c The child element.
+ */
+org_apache_flex_core_Application.prototype.addElement =
+    function(c) {
+  this.element.appendChild(c.element);
+  c.addedToParent();
+};
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/BeadViewBase.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/BeadViewBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/BeadViewBase.js
new file mode 100644
index 0000000..924d48a
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/BeadViewBase.js
@@ -0,0 +1,72 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_BeadViewBase');
+
+goog.require('org_apache_flex_core_IBeadView');
+goog.require('org_apache_flex_events_EventDispatcher');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_events_EventDispatcher}
+ * @implements {org_apache_flex_core_IBeadView}
+ */
+org_apache_flex_core_BeadViewBase = function() {
+    org_apache_flex_core_BeadViewBase.base(this, 'constructor');
+  };
+goog.inherits(
+              org_apache_flex_core_BeadViewBase,
+              org_apache_flex_events_EventDispatcher);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_BeadViewBase.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'BeadViewBase',
+                qName: 'org_apache_flex_core_BeadViewBase'}],
+    interfaces: [org_apache_flex_core_IBeadView]};
+
+
+/**
+ * @protected
+ * @type {Object}
+ */
+org_apache_flex_core_BeadViewBase.prototype._strand = null;
+
+
+Object.defineProperties(org_apache_flex_core_BeadViewBase.prototype, {
+    /** @expose */
+    strand: {
+        /** @this {org_apache_flex_core_BeadViewBase} */
+        set: function(value) {
+            if (this._strand !== value) {
+              this._strand = value;
+            }
+        }
+    },
+    /** @expose */
+    host: {
+        /** @this {org_apache_flex_core_BeadViewBase} */
+        get: function() {
+            return this._strand;
+        }
+    }
+});
+
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/CallLaterBead.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/CallLaterBead.js b/frameworks/projects/Core/js/src/org/apache/flex/core/CallLaterBead.js
new file mode 100644
index 0000000..5ddfbcf
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/CallLaterBead.js
@@ -0,0 +1,93 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_CallLaterBead');
+
+
+
+/**
+ * @constructor
+ */
+org_apache_flex_core_CallLaterBead = function() {
+
+  /**
+   * @private
+   * @type {Object}
+   */
+  this.strand_ = null;
+
+  /**
+   * @private
+   * @type {Array}
+   */
+  this.calls_ = null;
+
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_CallLaterBead.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'CallLaterBead.js',
+                qName: 'org_apache_flex_core_CallLaterBead'}] };
+
+
+Object.defineProperties(org_apache_flex_core_CallLaterBead.prototype, {
+    /** @expose */
+    strand: {
+        /** @this {org_apache_flex_binding_GenericBinding} */
+        set: function(value) {
+            if (this.strand_ !== value) {
+              this.strand_ = value;
+            }
+        }
+    }
+});
+
+
+/**
+ * @param {Function} fn The fucntion to call later.
+ * @param {Array=} opt_args The optional array of arguments.
+ * @param {Object=} opt_thisArg The optional 'this' object.
+ */
+org_apache_flex_core_CallLaterBead.prototype.callLater =
+    function(fn, opt_args, opt_thisArg) {
+
+  if (this.calls_ == null)
+    this.calls_ = [{thisArg: opt_thisArg, fn: fn, args: opt_args }];
+  else
+    this.calls_.push({thisArg: opt_thisArg, fn: fn, args: opt_args });
+
+  window.setTimeout(goog.bind(this.callback, this), 0);
+};
+
+
+/**
+ * @protected
+ */
+org_apache_flex_core_CallLaterBead.prototype.callback =
+    function() {
+  var list = this.calls_;
+  var n = list.length;
+  for (var i = 0; i < n; i++)
+  {
+     var call = list.shift();
+     var fn = call.fn;
+     fn.apply(call.thisArg, call.args);
+  }
+};
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js
new file mode 100644
index 0000000..87758f3
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js
@@ -0,0 +1,187 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_ContainerBase');
+
+goog.require('org_apache_flex_core_IMXMLDocument');
+goog.require('org_apache_flex_core_UIBase');
+goog.require('org_apache_flex_core_ValuesManager');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_core_UIBase}
+ */
+org_apache_flex_core_ContainerBase = function() {
+  this.mxmlProperties = null;
+  org_apache_flex_core_ContainerBase.base(this, 'constructor');
+
+  /**
+   * @private
+   * @type {boolean}
+   */
+  this.initialized_ = false;
+
+  /**
+   * @private
+   * @type {Array}
+   */
+  this.states_ = null;
+
+  /**
+   * @private
+   * @type {Array}
+   */
+  this.transitions_ = null;
+
+  /**
+   * @private
+   * @type {?String}
+   */
+  this.currentState_ = null;
+
+  this.document = this;
+
+};
+goog.inherits(org_apache_flex_core_ContainerBase,
+    org_apache_flex_core_UIBase);
+
+
+/**
+ * @expose
+ */
+org_apache_flex_core_ContainerBase.prototype.mxmlContent = null;
+
+
+/**
+ * @expose
+ * @type {Array}
+ */
+org_apache_flex_core_ContainerBase.prototype.mxmlDescriptor = null;
+
+
+/**
+ * @expose
+ * @type {Array}
+ */
+org_apache_flex_core_ContainerBase.prototype.mxmlsd = null;
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_ContainerBase.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'ContainerBase',
+                qName: 'org_apache_flex_core_ContainerBase'}] ,
+      interfaces: [org_apache_flex_core_IMXMLDocument]};
+
+
+/**
+ * @override
+ */
+org_apache_flex_core_ContainerBase.prototype.addedToParent = function() {
+  org_apache_flex_core_ContainerBase.base(this, 'addedToParent');
+
+  if (!this.initialized_) {
+    org_apache_flex_utils_MXMLDataInterpreter.generateMXMLInstances(this.document,
+        this, this.MXMLDescriptor);
+
+    this.dispatchEvent('initBindings');
+    this.dispatchEvent('initComplete');
+    this.initialized_ = true;
+  }
+  this.dispatchEvent('childrenAdded');
+};
+
+
+/**
+ * @expose
+ * @param {Array} data The data for the attributes.
+ */
+org_apache_flex_core_ContainerBase.prototype.generateMXMLAttributes = function(data) {
+  org_apache_flex_utils_MXMLDataInterpreter.generateMXMLProperties(this, data);
+};
+
+
+/**
+ * @expose
+ * @param {Object} doc The document.
+ * @param {Array} desc The descriptor data.
+ */
+org_apache_flex_core_ContainerBase.prototype.setMXMLDescriptor =
+    function(doc, desc) {
+  this.mxmlDescriptor = desc;
+  this.document = doc;
+};
+
+
+Object.defineProperties(org_apache_flex_core_ContainerBase.prototype, {
+    /** @expose */
+    MXMLDescriptor: {
+        /** @this {org_apache_flex_core_ContainerBase} */
+        get: function() {
+            return this.mxmlDescriptor;
+        }
+    },
+    /** @expose */
+    states: {
+        /** @this {org_apache_flex_core_ContainerBase} */
+        get: function() {
+            return this.states_;
+        },
+        /** @this {org_apache_flex_core_ContainerBase} */
+        set: function(s) {
+            this.states_ = s;
+            this.currentState_ = s[0].name;
+
+            if (org_apache_flex_core_ValuesManager.valuesImpl.getValue) {
+              /**
+               * @type {Function}
+               */
+              var impl = /** @type {Function} */ (org_apache_flex_core_ValuesManager.valuesImpl.
+                  getValue(this, 'iStatesImpl'));
+              // TODO: (aharui) check if bead already exists
+              this.addBead(new impl());
+            }
+        }
+    },
+    /** @expose */
+    currentState: {
+        /** @this {org_apache_flex_core_ContainerBase} */
+        get: function() {
+             return this.currentState_;
+        },
+        /** @this {org_apache_flex_core_ContainerBase} */
+        set: function(s) {
+             var event = new org_apache_flex_events_ValueChangeEvent(
+                  'currentStateChange', false, false, this.currentState_, s);
+             this.currentState_ = s;
+             this.dispatchEvent(event);
+        }
+    },
+    /** @expose */
+    transitions: {
+        /** @this {org_apache_flex_core_ContainerBase} */
+        get: function() {
+             return this.transitions_;
+        },
+        /** @this {org_apache_flex_core_ContainerBase} */
+        set: function(s) {
+           this.transitions_ = s;
+        }
+    }
+});

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/DataBindingBase.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/DataBindingBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/DataBindingBase.js
new file mode 100644
index 0000000..7445ffd
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/DataBindingBase.js
@@ -0,0 +1,34 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_DataBindingBase');
+
+
+
+/**
+ * @constructor
+ */
+org_apache_flex_core_DataBindingBase = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_DataBindingBase.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'DataBindingBase',
+                qName: 'org_apache_flex_core_DataBindingBase'}] };
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/FilledRectangle.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/FilledRectangle.js b/frameworks/projects/Core/js/src/org/apache/flex/core/FilledRectangle.js
new file mode 100644
index 0000000..836be5a
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/FilledRectangle.js
@@ -0,0 +1,86 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_FilledRectangle');
+
+goog.require('org_apache_flex_core_UIBase');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_core_UIBase}
+ */
+org_apache_flex_core_FilledRectangle = function() {
+  org_apache_flex_core_FilledRectangle.base(this, 'constructor');
+
+  /**
+   * @private
+   * @type {number}
+   */
+  this.fillColor_ = 0;
+};
+goog.inherits(org_apache_flex_core_FilledRectangle,
+    org_apache_flex_core_UIBase);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_FilledRectangle.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'FilledRectangle',
+                qName: 'org_apache_flex_core_FilledRectangle' }] };
+
+
+/**
+ * @override
+ */
+org_apache_flex_core_FilledRectangle.prototype.addedToParent = function() {
+  org_apache_flex_core_FilledRectangle.base(this, 'addedToParent');
+  this.drawRect(this.x, this.y, this.width, this.height);
+};
+
+
+Object.defineProperties(org_apache_flex_core_FilledRectangle.prototype, {
+    /** @expose */
+    fillColor: {
+        /** @this {org_apache_flex_core_FilledRectangle} */
+        get: function() {
+             return this.fillColor_;
+        },
+        /** @this {org_apache_flex_core_FilledRectangle} */
+        set: function(value) {
+             this.fillColor_ = value;
+        }
+    }
+});
+
+
+/**
+ * @expose
+ * @param {number} x The left coordinate.
+ * @param {number} y The top coordinate.
+ * @param {number} width The width.
+ * @param {number} height The height.
+ */
+org_apache_flex_core_UIBase.prototype.drawRect = function(x, y, width, height) {
+  this.element.style.position = 'absolute';
+  this.element.style.backgroundColor = '#' + this.fillColor_.toString(16);
+  if (!isNaN(x)) this.x = x;
+  if (!isNaN(y)) this.y = y;
+  if (!isNaN(width)) this.width = width;
+  if (!isNaN(height)) this.height = height;
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/FormatBase.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/FormatBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/FormatBase.js
new file mode 100644
index 0000000..41358eb
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/FormatBase.js
@@ -0,0 +1,126 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_FormatBase');
+
+goog.require('org_apache_flex_core_IFormatBead');
+goog.require('org_apache_flex_events_EventDispatcher');
+
+
+
+/**
+ * @constructor
+ * @implements {org_apache_flex_core_IFormatBead}
+ * @extends {org_apache_flex_events_EventDispatcher}
+ */
+org_apache_flex_core_FormatBase = function() {
+  goog.base(this);
+};
+goog.inherits(org_apache_flex_core_FormatBase,
+    org_apache_flex_events_EventDispatcher);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_FormatBase.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'FormatBase',
+                qName: 'org_apache_flex_core_FormatBase' }],
+      interfaces: [org_apache_flex_core_IFormatBead] };
+
+
+/**
+ * @private
+ * @type {org_apache_flex_core_IStrand}
+ */
+org_apache_flex_core_FormatBase.prototype.strand_ = null;
+
+
+/**
+ * @type {string}
+ */
+org_apache_flex_core_FormatBase.prototype._propertyName = 'text';
+
+
+/**
+ * @type {string}
+ */
+org_apache_flex_core_FormatBase.prototype._eventName = 'textChange';
+
+
+/**
+ * @type {string}
+ */
+org_apache_flex_core_FormatBase.prototype._formattedResult = '';
+
+
+Object.defineProperties(org_apache_flex_core_FormatBase.prototype, {
+    /** @expose */
+    strand: {
+        /** @this {org_apache_flex_core_FormatBase} */
+        set: function(value) {
+            this.strand_ = value;
+        }
+    },
+    /** @expose */
+    propertyValue: {
+        /** @this {org_apache_flex_core_FormatBase} */
+        get: function() {
+            var value = this.strand_[this.propertyName];
+            return value;
+        }
+    },
+    /** @expose */
+    propertyName: {
+        /** @this {org_apache_flex_core_FormatBase} */
+        get: function() {
+            if (this._propertyName == null) {
+              this._propertyName = 'text';
+            }
+            return this._propertyName;
+        },
+        /** @this {org_apache_flex_core_FormatBase} */
+        set: function(value) {
+            this._propertyName = value;
+        }
+    },
+    /** @expose */
+    eventName: {
+        /** @this {org_apache_flex_core_FormatBase} */
+        get: function() {
+            if (this._eventName == null) {
+                 return this._propertyName + 'Change';
+            }
+            return this._eventName;
+        },
+        /** @this {org_apache_flex_core_FormatBase} */
+        set: function(value) {
+            this._eventName = value;
+        }
+    },
+    /** @expose */
+    formattedString: {
+        /** @this {org_apache_flex_core_FormatBase} */
+        get: function() {
+             return null;
+        }
+    }
+});

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/HTMLElementWrapper.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/HTMLElementWrapper.js b/frameworks/projects/Core/js/src/org/apache/flex/core/HTMLElementWrapper.js
new file mode 100644
index 0000000..85f6b71
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/HTMLElementWrapper.js
@@ -0,0 +1,177 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+goog.provide('org_apache_flex_core_HTMLElementWrapper');
+
+goog.require('org_apache_flex_core_IBeadModel');
+goog.require('org_apache_flex_core_IStrand');
+goog.require('org_apache_flex_events_BrowserEvent');
+goog.require('org_apache_flex_events_EventDispatcher');
+goog.require('org_apache_flex_utils_Language');
+
+
+
+/**
+ * @constructor
+ * @extends {org_apache_flex_events_EventDispatcher}
+ */
+org_apache_flex_core_HTMLElementWrapper = function() {
+  org_apache_flex_core_HTMLElementWrapper.base(this, 'constructor');
+};
+goog.inherits(org_apache_flex_core_HTMLElementWrapper,
+    org_apache_flex_events_EventDispatcher);
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'HTMLElementWrapper',
+                qName: 'org_apache_flex_core_HTMLElementWrapper' }],
+      interfaces: [org_apache_flex_core_IStrand] };
+
+
+/**
+ * @expose
+ * @type {EventTarget}
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.element = null;
+
+
+/**
+ * @private
+ * @type {Array.<Object>}
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.beads_ = null;
+
+
+/**
+ * @protected
+ * @type {boolean}
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.internalDisplay = 'inline';
+
+
+/**
+ * @expose
+ * @param {Object} bead The new bead.
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.addBead = function(bead) {
+  if (!this.beads_) {
+    this.beads_ = [];
+  }
+
+  this.beads_.push(bead);
+
+  if (org_apache_flex_utils_Language.is(bead, org_apache_flex_core_IBeadModel)) {
+    this.model = bead;
+  }
+
+  bead.strand = this;
+};
+
+
+/**
+ * @expose
+ * @param {!Object} classOrInterface The requested bead type.
+ * @return {Object} The bead.
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.getBeadByType =
+    function(classOrInterface) {
+  var bead, i, n;
+
+  n = this.beads_.length;
+  for (i = 0; i < n; i++) {
+    bead = this.beads_[i];
+
+    if (org_apache_flex_utils_Language.is(bead, classOrInterface)) {
+      return bead;
+    }
+  }
+
+  return null;
+};
+
+
+Object.defineProperties(org_apache_flex_core_HTMLElementWrapper.prototype, {
+    /** @expose */
+    MXMLDescriptor: {
+        get: function() {
+            return null;
+        }
+    }
+});
+
+
+/**
+ * @expose
+ * @param {Object} bead The bead to remove.
+ * @return {Object} The bead.
+ */
+org_apache_flex_core_HTMLElementWrapper.prototype.removeBead = function(bead) {
+  var i, n, value;
+
+  n = this.beads_.length;
+  for (i = 0; i < n; i++) {
+    value = this.beads_[i];
+
+    if (bead === value) {
+      this.beads_.splice(i, 1);
+
+      return bead;
+    }
+  }
+
+  return null;
+};
+
+
+/**
+ * @type {function((goog.events.Listener|null), (Object|null)):boolean}
+ */
+org_apache_flex_core_HTMLElementWrapper.googFireListener = null;
+
+
+/**
+ * Fires a listener with a set of arguments
+ *
+ * @param {goog.events.Listener} listener The listener object to call.
+ * @param {Object} eventObject The event object to pass to the listener.
+ * @return {boolean} Result of listener.
+ */
+org_apache_flex_core_HTMLElementWrapper.fireListenerOverride = function(listener, eventObject) {
+  var e = new org_apache_flex_events_BrowserEvent();
+  e.wrappedEvent = eventObject;
+  return org_apache_flex_core_HTMLElementWrapper.googFireListener(listener, e);
+};
+
+
+/**
+ * Static initializer
+ */
+org_apache_flex_core_HTMLElementWrapper.installOverride = function() {
+  org_apache_flex_core_HTMLElementWrapper.googFireListener =
+      goog.events.fireListener;
+  goog.events.fireListener = org_apache_flex_core_HTMLElementWrapper.fireListenerOverride;
+};
+
+
+/**
+ * The properties that triggers the static initializer
+ */
+org_apache_flex_core_HTMLElementWrapper.installedOverride =
+    org_apache_flex_core_HTMLElementWrapper.installOverride();
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IBead.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IBead.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IBead.js
new file mode 100644
index 0000000..dc8903c
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IBead.js
@@ -0,0 +1,49 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IBead');
+
+
+
+/**
+ * IBead
+ *
+ * @interface
+ */
+org_apache_flex_core_IBead = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IBead.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IBead',
+                qName: 'org_apache_flex_core_IBead' }] };
+
+
+Object.defineProperties(org_apache_flex_core_IBead.prototype, {
+    /** @expose */
+    strand: {
+        /** @this {org_apache_flex_binding_GenericBinding} */
+        set: function(value) {}
+    }
+});
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadController.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadController.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadController.js
new file mode 100644
index 0000000..87dacd3
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadController.js
@@ -0,0 +1,42 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IBeadController');
+
+goog.require('org_apache_flex_core_IBead');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IBead}
+ */
+org_apache_flex_core_IBeadController = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IBeadController.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IBeadController',
+                qName: 'org_apache_flex_core_IBeadController' }],
+      interfaces: [org_apache_flex_core_IBead] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadLayout.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadLayout.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadLayout.js
new file mode 100644
index 0000000..799c309
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadLayout.js
@@ -0,0 +1,42 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IBeadLayout');
+
+goog.require('org_apache_flex_core_IBead');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IBead}
+ */
+org_apache_flex_core_IBeadLayout = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IBeadLayout.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IBeadLayout',
+                qName: 'org_apache_flex_core_IBeadLayout' }],
+      interfaces: [org_apache_flex_core_IBead] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadModel.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadModel.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadModel.js
new file mode 100644
index 0000000..476e088
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadModel.js
@@ -0,0 +1,45 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IBeadModel');
+
+goog.require('org_apache_flex_core_IBead');
+goog.require('org_apache_flex_events_IEventDispatcher');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IBead}
+ * @extends {org_apache_flex_events_IEventDispatcher}
+ */
+org_apache_flex_core_IBeadModel = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IBeadModel.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IBeadModel',
+                qName: 'org_apache_flex_core_IBeadModel' }],
+      interfaces: [org_apache_flex_core_IBead,
+                   org_apache_flex_events_IEventDispatcher] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadView.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadView.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadView.js
new file mode 100644
index 0000000..c5550bb
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IBeadView.js
@@ -0,0 +1,38 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IBeadView');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IBeadView = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IBeadView.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IBeadView',
+                qName: 'org_apache_flex_core_IBeadView' }] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IChild.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IChild.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IChild.js
new file mode 100644
index 0000000..6971f5e
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IChild.js
@@ -0,0 +1,49 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_core_IChild
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IChild');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IChild = function() {
+};
+
+
+Object.defineProperties(org_apache_flex_core_IChild.prototype, {
+    /** @expose */
+    parent: {
+        get: function() {}
+    }
+});
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IChild.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IChild', qName: 'org_apache_flex_core_IChild'}]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IChrome.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IChrome.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IChrome.js
new file mode 100644
index 0000000..0f1bf86
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IChrome.js
@@ -0,0 +1,31 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_core_IChrome
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IChrome');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IChrome = function() {
+};
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IContainer.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IContainer.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IContainer.js
new file mode 100644
index 0000000..8a835a5
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IContainer.js
@@ -0,0 +1,58 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_core_IContainer
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IContainer');
+
+goog.require('org_apache_flex_core_IParent');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IParent}
+ */
+org_apache_flex_core_IContainer = function() {
+};
+
+
+/**
+ * @return {Array} All of the children of the container.
+ */
+org_apache_flex_core_IContainer.prototype.getChildren = function() {};
+
+
+/**
+ * Called after all of the children have been added to the container.
+ * @return {void}
+ */
+org_apache_flex_core_IContainer.prototype.childrenAdded = function() {};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IContainer.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IContainer', qName: 'org_apache_flex_core_IContainer'}],
+  interfaces: [org_apache_flex_core_IParent]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IContentView.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IContentView.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IContentView.js
new file mode 100644
index 0000000..54761ef
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IContentView.js
@@ -0,0 +1,79 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_core_IContentView
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IContentView');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IContentView = function() {
+};
+
+
+Object.defineProperties(org_apache_flex_core_IContentView.prototype, {
+    /** @expose */
+    x: {
+        get: function() {},
+        set: function(value) {}
+    },
+    /** @expose */
+    y: {
+        get: function() {},
+        set: function(value) {}
+    },
+    /** @expose */
+    width: {
+        get: function() {},
+        set: function(value) {}
+    },
+    /** @expose */
+    height: {
+        get: function() {},
+        set: function(value) {}
+    }
+});
+
+
+/**
+ * Adds a new element to component.
+ * @param {Object} value The child element being added.
+ */
+org_apache_flex_core_IContentView.prototype.addElement = function(value) {};
+
+
+/**
+ * Removes all of the component's children.
+ * @return {void}
+ */
+org_apache_flex_core_IContentView.prototype.removeAllElements = function() {};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IContentView.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IContentView', qName: 'org_apache_flex_core_IContentView'}]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IDataGridModel.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IDataGridModel.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IDataGridModel.js
new file mode 100644
index 0000000..4578798
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IDataGridModel.js
@@ -0,0 +1,41 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IDataGridModel');
+
+goog.require('org_apache_flex_core_ISelectionModel');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_ISelectionModel}
+ */
+org_apache_flex_core_IDataGridModel = function() {
+};
+
+
+/**
+ * @const
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IDataGridModel.prototype.FLEXJS_CLASS_INFO =
+{ names: [{ name: 'IDataGridModel',
+                qName: 'org_apache_flex_core_IDataGridModel' }],
+      interfaces: [org_apache_flex_core_ISelectionModel] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IDataProviderItemRendererMapper.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IDataProviderItemRendererMapper.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IDataProviderItemRendererMapper.js
new file mode 100644
index 0000000..e4156a9
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IDataProviderItemRendererMapper.js
@@ -0,0 +1,53 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_html_beads_IDataProviderItemRendererMapper
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IDataProviderItemRendererMapper');
+
+goog.require('org_apache_flex_core_IBead');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IBead}
+ */
+org_apache_flex_core_IDataProviderItemRendererMapper =
+function() {
+};
+
+
+/**
+ * @expose
+ */
+org_apache_flex_core_IDataProviderItemRendererMapper.prototype.itemRendererFactory = null;
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IDataProviderItemRendererMapper.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IDataProviderItemRendererMapper',
+             qName: 'org_apache_flex_core_IDataProviderItemRendererMapper'}],
+  interfaces: [org_apache_flex_core_IBead]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IDocument.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IDocument.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IDocument.js
new file mode 100644
index 0000000..3c1ebf1
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IDocument.js
@@ -0,0 +1,51 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IDocument');
+
+
+
+/**
+ * IDocument
+ *
+ * @interface
+ */
+org_apache_flex_core_IDocument = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IDocument.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IDocument',
+                qName: 'org_apache_flex_core_IDocument' }] };
+
+
+/**
+ * setDocument()
+ *
+ * @expose
+ * @param {Object} document The DOM document element.
+ * @param {string=} opt_id The id (optional).
+ */
+org_apache_flex_core_IDocument.prototype.setDocument =
+    function(document, opt_id) {};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IEffectTimer.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IEffectTimer.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IEffectTimer.js
new file mode 100644
index 0000000..c727db3
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IEffectTimer.js
@@ -0,0 +1,45 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * org_apache_flex_core_IEffectTimer
+ *
+ * @fileoverview
+ *
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IEffectTimer');
+
+goog.require('org_apache_flex_events_IEventDispatcher');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_events_IEventDispatcher}
+ */
+org_apache_flex_core_IEffectTimer = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IEffectTimer.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IEffectTimer', qName: 'org_apache_flex_core_IEffectTimer'}],
+  interfaces: [org_apache_flex_events_IEventDispatcher]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IFormatBead.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IFormatBead.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IFormatBead.js
new file mode 100644
index 0000000..9074478
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IFormatBead.js
@@ -0,0 +1,59 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IFormatBead');
+
+
+
+/**
+ * @interface
+ * @extends {org_apache_flex_core_IBead}
+ * @extends {org_apache_flex_events_IEventDispatcher}
+ */
+org_apache_flex_core_IFormatBead = function() {
+};
+
+
+Object.defineProperties(org_apache_flex_core_IFormatBead.prototype, {
+    /** @expose */
+    propertyName: {
+        get: function() {},
+        set: function(value) {}
+    },
+    /** @expose */
+    eventName: {
+        get: function() {},
+        set: function(value) {}
+    },
+    /** @expose */
+    formattedString: {
+        get: function() {}
+    }
+});
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IFormatBead.prototype.FLEXJS_CLASS_INFO = {
+  names: [{ name: 'IFormatBead', qName: 'org_apache_flex_core_IFormatBead'}],
+  interfaces: [org_apache_flex_core_IBead, org_apache_flex_events_IEventDispatcher]
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRenderer.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRenderer.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRenderer.js
new file mode 100644
index 0000000..56cb573
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRenderer.js
@@ -0,0 +1,38 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IItemRenderer');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IItemRenderer = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IItemRenderer.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IItemRenderer',
+                qName: 'org_apache_flex_core_IItemRenderer' }] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererClassFactory.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererClassFactory.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererClassFactory.js
new file mode 100644
index 0000000..dd4b195
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererClassFactory.js
@@ -0,0 +1,38 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IItemRendererClassFactory');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IItemRendererClassFactory = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IItemRendererClassFactory.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IItemRendererClassFactory',
+                qName: 'org_apache_flex_core_IItemRendererClassFactory' }] };

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererFactory.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererFactory.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererFactory.js
new file mode 100644
index 0000000..2bb3ab5
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererFactory.js
@@ -0,0 +1,45 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IItemRendererFactory');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IItemRendererFactory = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IItemRendererFactory.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IItemRendererFactory',
+                qName: 'org_apache_flex_core_IItemRendererFactory' }] };
+
+
+/**
+ * @expose
+ * @return {Object} A new instance of the itemRenderer.
+ */
+org_apache_flex_core_IItemRendererFactory.prototype.newInstance = function() {};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererParent.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererParent.js b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererParent.js
new file mode 100644
index 0000000..e64f44a
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/IItemRendererParent.js
@@ -0,0 +1,47 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_IItemRendererParent');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_IItemRendererParent = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_IItemRendererParent.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'IItemRendererParent',
+                qName: 'org_apache_flex_core_IItemRendererParent' }] };
+
+
+/**
+ * @expose
+ * @param {number} index The selected index.
+ */
+org_apache_flex_core_IItemRendererParent.prototype.
+    getItemRendererForIndex = function(index) {
+};

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b677c658/frameworks/projects/Core/js/src/org/apache/flex/core/ILayoutChild.js
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/ILayoutChild.js b/frameworks/projects/Core/js/src/org/apache/flex/core/ILayoutChild.js
new file mode 100644
index 0000000..308d3d6
--- /dev/null
+++ b/frameworks/projects/Core/js/src/org/apache/flex/core/ILayoutChild.js
@@ -0,0 +1,42 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview
+ * @suppress {checkTypes}
+ */
+
+goog.provide('org_apache_flex_core_ILayoutChild');
+
+goog.require('org_apache_flex_core_IChild');
+
+
+
+/**
+ * @interface
+ */
+org_apache_flex_core_ILayoutChild = function() {
+};
+
+
+/**
+ * Metadata
+ *
+ * @type {Object.<string, Array.<Object>>}
+ */
+org_apache_flex_core_ILayoutChild.prototype.FLEXJS_CLASS_INFO =
+    { names: [{ name: 'ILayoutChild',
+                qName: 'org_apache_flex_core_ILayoutChild' }],
+      interfaces: [org_apache_flex_core_IChild] };
+