Updated Branches: refs/heads/develop 14a83f02b -> 9c4b232f2
Changes necessary to get ActionScript DataGrid to cross-compile to JavaScript DataGrid. Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9c4b232f Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9c4b232f Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9c4b232f Branch: refs/heads/develop Commit: 9c4b232f27a27456edcdde675b31e1fdd493a37f Parents: 14a83f0 Author: Peter Ent <[email protected]> Authored: Tue Jan 28 17:08:37 2014 -0500 Committer: Peter Ent <[email protected]> Committed: Tue Jan 28 17:08:37 2014 -0500 ---------------------------------------------------------------------- .../as/projects/FlexJSJX/basic-manifest.xml | 1 + .../as/projects/FlexJSJX/src/FlexJSJXClasses.as | 1 + .../html/staticControls/beads/DataGridView.as | 16 +++-- .../as/projects/FlexJSUI/basic-manifest.xml | 1 - .../as/projects/FlexJSUI/src/FlexJSUIClasses.as | 1 - .../controllers/ItemRendererMouseController.as | 2 +- .../supportClasses/DataGridColumn.as | 69 -------------------- .../controllers/ItemRendererMouseController.js | 8 +++ 8 files changed, 23 insertions(+), 76 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSJX/basic-manifest.xml ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSJX/basic-manifest.xml b/frameworks/as/projects/FlexJSJX/basic-manifest.xml index 5ff940f..7b80e80 100644 --- a/frameworks/as/projects/FlexJSJX/basic-manifest.xml +++ b/frameworks/as/projects/FlexJSJX/basic-manifest.xml @@ -22,6 +22,7 @@ <componentPackage> <component id="DataGrid" class="org.apache.flex.html.staticControls.DataGrid"/> + <component id="DataGridColumn" class="org.apache.flex.html.staticControls.supportClasses.DataGridColumn"/> <component id="DataGridPresentationModel" class="org.apache.flex.html.staticControls.beads.models.DataGridPresentationModel" /> <component id="BarChart" class="org.apache.flex.charts.BarChart" /> <component id="BarChartSeries" class="org.apache.flex.charts.supportClasses.BarChartSeries" /> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSJX/src/FlexJSJXClasses.as ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSJX/src/FlexJSJXClasses.as b/frameworks/as/projects/FlexJSJX/src/FlexJSJXClasses.as index d7a3b82..69d2648 100644 --- a/frameworks/as/projects/FlexJSJX/src/FlexJSJXClasses.as +++ b/frameworks/as/projects/FlexJSJX/src/FlexJSJXClasses.as @@ -33,6 +33,7 @@ internal class FlexJSJXClasses import org.apache.flex.charts.beads.layouts.BarChartLayout; BarChartLayout; import org.apache.flex.charts.supportClasses.BarChartSeries; BarChartSeries; import org.apache.flex.charts.supportClasses.BoxItemRenderer; BoxItemRenderer; + import org.apache.flex.html.staticControls.supportClasses.DataGridColumn; DataGridColumn; import org.apache.flex.html.staticControls.beads.DataGridColumnView; DataGridColumnView; import org.apache.flex.html.staticControls.beads.DataGridView; DataGridView; http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/staticControls/beads/DataGridView.as ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/staticControls/beads/DataGridView.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/staticControls/beads/DataGridView.as index 079b25c..f73a265 100644 --- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/staticControls/beads/DataGridView.as +++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/staticControls/beads/DataGridView.as @@ -66,8 +66,9 @@ package org.apache.flex.html.staticControls.beads var columnLabels:Array = new Array(); var buttonWidths:Array = new Array(); for(var i:int=0; i < sharedModel.columns.length; i++) { - columnLabels.push(sharedModel.columns[i].label); - buttonWidths.push(sharedModel.columns[i].columnWidth); + var dgc:DataGridColumn = sharedModel.columns[i] as DataGridColumn; + columnLabels.push(dgc.label); + buttonWidths.push(dgc.columnWidth); } var bblayout:ButtonBarLayout = new ButtonBarLayout(); bblayout.buttonWidths = buttonWidths; @@ -136,12 +137,17 @@ package org.apache.flex.html.staticControls.beads columnContainer.width = sw; columnContainer.height = sh - 25; + var colXpos:Number = 0; + for(var i:int=0; i < columns.length; i++) { var column:List = columns[i]; var cw:Number = sw/(columns.length); column.y = 0; + column.x = colXpos; column.height = columnContainer.height; // this will actually be Nitem*rowHeight + + colXpos += column.width; } IEventDispatcher(_strand).dispatchEvent(new Event("layoutComplete")); @@ -155,7 +161,8 @@ package org.apache.flex.html.staticControls.beads for(var i:int=0; i < columns.length; i++) { if (list != columns[i]) { - columns[i].selectedIndex = list.selectedIndex; + var otherList:List = columns[i] as List; + otherList.selectedIndex = list.selectedIndex; } } @@ -167,7 +174,8 @@ package org.apache.flex.html.staticControls.beads var list:List = event.target as List; for(var i:int=0; i < columns.length; i++) { if (list != columns[i]) { - columns[i].rollOverIndex = list.rollOverIndex; + var otherList:List = columns[i] as List; + otherList.rollOverIndex = list.rollOverIndex; } } http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSUI/basic-manifest.xml ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSUI/basic-manifest.xml b/frameworks/as/projects/FlexJSUI/basic-manifest.xml index ecd3082..2fe364b 100644 --- a/frameworks/as/projects/FlexJSUI/basic-manifest.xml +++ b/frameworks/as/projects/FlexJSUI/basic-manifest.xml @@ -29,7 +29,6 @@ <component id="SimpleBinding" class="org.apache.flex.binding.SimpleBinding"/> <component id="Button" class="org.apache.flex.html.staticControls.Button"/> <component id="ButtonBar" class="org.apache.flex.html.staticControls.ButtonBar"/> - <component id="DataGridColumn" class="org.apache.flex.html.staticControls.supportClasses.DataGridColumn"/> <component id="DropDownList" class="org.apache.flex.html.staticControls.DropDownList"/> <component id="DropDownListList" class="org.apache.flex.html.staticControls.supportClasses.DropDownListList"/> <component id="Image" class="org.apache.flex.html.staticControls.Image"/> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as b/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as index 4b043d8..fa30008 100644 --- a/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as +++ b/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as @@ -85,7 +85,6 @@ internal class FlexJSUIClasses import org.apache.flex.html.staticControls.beads.layouts.VScrollBarLayout; VScrollBarLayout; import org.apache.flex.html.staticControls.beads.TextItemRendererFactoryForArrayData; TextItemRendererFactoryForArrayData; import org.apache.flex.html.staticControls.beads.DataItemRendererFactoryForArrayData; DataItemRendererFactoryForArrayData; - import org.apache.flex.html.staticControls.supportClasses.DataGridColumn; DataGridColumn; import org.apache.flex.core.ItemRendererClassFactory; ItemRendererClassFactory; import org.apache.flex.core.FilledRectangle; FilledRectangle; import org.apache.flex.events.CustomEvent; CustomEvent; http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.as ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.as index fbc0b1c..1a70434 100644 --- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.as +++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.as @@ -49,7 +49,7 @@ package org.apache.flex.html.staticControls.beads.controllers if (target) { target.hovered = true; - target.dispatchEvent(new Event("rollover")); + target.dispatchEvent(new Event("rollover",true)); } } http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/supportClasses/DataGridColumn.as ---------------------------------------------------------------------- diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/supportClasses/DataGridColumn.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/supportClasses/DataGridColumn.as deleted file mode 100644 index a0b9769..0000000 --- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/supportClasses/DataGridColumn.as +++ /dev/null @@ -1,69 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// -// Licensed to the Apache Software Foundation (ASF) under one or more -// contributor license agreements. See the NOTICE file distributed with -// this work for additional information regarding copyright ownership. -// The ASF licenses this file to You 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. -// -//////////////////////////////////////////////////////////////////////////////// -package org.apache.flex.html.staticControls.supportClasses -{ - import mx.core.IFactory; - - public class DataGridColumn - { - public function DataGridColumn() - { - } - - private var _itemRenderer:IFactory; - public function get itemRenderer():IFactory - { - return _itemRenderer; - } - public function set itemRenderer(value:IFactory):void - { - _itemRenderer = value; - } - - private var _columnWidth:Number = 100; - public function get columnWidth():Number - { - return _columnWidth; - } - public function set columnWidth(value:Number):void - { - _columnWidth = value; - } - - private var _label:String; - public function get label():String - { - return _label; - } - public function set label(value:String):void - { - _label = value; - } - - private var _dataField:String; - public function get dataField():String - { - return _dataField; - } - public function set dataField(value:String):void - { - _dataField = value; - } - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9c4b232f/frameworks/js/FlexJS/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.js ---------------------------------------------------------------------- diff --git a/frameworks/js/FlexJS/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.js b/frameworks/js/FlexJS/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.js index f893eda..29af085 100644 --- a/frameworks/js/FlexJS/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.js +++ b/frameworks/js/FlexJS/src/org/apache/flex/html/staticControls/beads/controllers/ItemRendererMouseController.js @@ -69,6 +69,10 @@ org.apache.flex.html.staticControls.beads.controllers. ItemRendererMouseController.prototype.handleMouseOver = function(event) { this.strand_.set_hovered(true); + + var newEvent = new goog.events.Event('rollover'); + newEvent.target = this.strand_; + this.strand_.get_itemRendererParent().dispatchEvent(newEvent); }; @@ -80,6 +84,10 @@ org.apache.flex.html.staticControls.beads.controllers. ItemRendererMouseController.prototype.handleMouseOut = function(event) { this.strand_.set_hovered(false); + + var newEvent = new goog.events.Event('rollout'); + newEvent.target = this.strand_; + this.strand_.get_itemRendererParent().dispatchEvent(newEvent); };
