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 2017/04/21 16:35:25 UTC
[01/43] git commit: [flex-asjs] [refs/heads/dual] - Initial changes
for Mobile project.
Repository: flex-asjs
Updated Branches:
refs/heads/dual 9fd9b78b7 -> 31e3c55be
Initial changes for Mobile project.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/e0b3528a
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/e0b3528a
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/e0b3528a
Branch: refs/heads/dual
Commit: e0b3528a795f1a99987ce5e25cc7f89986b6d735
Parents: ae5cb4e
Author: Peter Ent <pe...@apache.org>
Authored: Wed Apr 12 15:39:56 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Wed Apr 12 15:39:56 2017 -0400
----------------------------------------------------------------------
.../ButtonBarButtonItemRenderer.as | 34 +++-
.../Mobile/src/main/flex/MobileClasses.as | 1 +
.../apache/flex/mobile/ManagedContentArea.as | 55 ++++++
.../apache/flex/mobile/StackedViewManager.as | 51 ++++--
.../org/apache/flex/mobile/TabbedViewManager.as | 42 +++++
.../flex/org/apache/flex/mobile/TitleView.as | 4 -
.../org/apache/flex/mobile/ViewManagerBase.as | 52 ++----
.../flex/mobile/beads/StackedViewManagerView.as | 175 +++++++++++++------
.../flex/mobile/beads/TabbedViewManagerView.as | 175 +++++++++++++------
.../flex/mobile/beads/ViewManagerViewBase.as | 123 ++++++-------
.../src/main/resources/basic-manifest.xml | 1 +
.../Mobile/src/main/resources/defaults.css | 21 +++
12 files changed, 511 insertions(+), 223 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
index 214125e..4e7ed07 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
@@ -26,6 +26,11 @@ package org.apache.flex.html.supportClasses
import org.apache.flex.html.TextButton;
import org.apache.flex.html.beads.ITextItemRenderer;
import org.apache.flex.events.ItemClickedEvent;
+
+ COMPILE::JS
+ {
+ import org.apache.flex.core.WrappedHTMLElement;
+ }
/**
* The ButtonBarButtonItemRenderer class handles the display of each item for the
@@ -52,6 +57,18 @@ package org.apache.flex.html.supportClasses
super();
}
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
+ * @flexjsignorecoercion HTMLElement
+ */
+ COMPILE::JS
+ override protected function createElement():WrappedHTMLElement
+ {
+ var result:WrappedHTMLElement = super.createElement();
+ trace("Element "+element+"; positioner "+positioner);
+ return result;
+ }
+
protected var textButton:TextButton;
/**
@@ -96,8 +113,14 @@ package org.apache.flex.html.supportClasses
*/
override public function setWidth(value:Number, noEvent:Boolean = false):void
{
- super.setWidth(value, noEvent);
+ super.setWidth(value, true);
textButton.width = value;
+ COMPILE::SWF {
+ textButton.height = height;
+ }
+ COMPILE::JS {
+ textButton.percentHeight = 100;
+ }
}
/**
@@ -105,8 +128,14 @@ package org.apache.flex.html.supportClasses
*/
override public function setHeight(value:Number, noEvent:Boolean = false):void
{
- super.setHeight(value, noEvent);
+ super.setHeight(value, true);
textButton.height = value;
+ COMPILE::SWF {
+ textButton.width = width;
+ }
+ COMPILE::JS {
+ textButton.percentWidth = 100;
+ }
}
/**
@@ -125,7 +154,6 @@ package org.apache.flex.html.supportClasses
var added:Boolean = false;
if (textButton == null) {
textButton = new TextButton();
- textButton.percentWidth = 100;
// listen for clicks on the button and translate them into
// an itemClicked event.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/MobileClasses.as b/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
index 7c650fd..ea74217 100644
--- a/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
+++ b/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
@@ -33,6 +33,7 @@ internal class MobileClasses
import org.apache.flex.mobile.beads.DatePickerView; DatePickerView;
import org.apache.flex.mobile.ToggleSwitch; ToggleSwitch;
import org.apache.flex.mobile.ViewManagerBase; ViewManagerBase;
+ import org.apache.flex.mobile.ManagedContentArea; ManagedContentArea;
import org.apache.flex.mobile.beads.StackedViewManagerView; StackedViewManagerView;
import org.apache.flex.mobile.beads.TabbedViewManagerView; TabbedViewManagerView;
import org.apache.flex.mobile.beads.ViewManagerViewBase; ViewManagerViewBase;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
new file mode 100644
index 0000000..16081e5
--- /dev/null
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.mobile
+{
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.html.Group;
+ import org.apache.flex.events.Event;
+
+ COMPILE::JS
+ {
+ import org.apache.flex.core.WrappedHTMLElement;
+ }
+
+ /**
+ * The ManagedContentArea is the space in which views are displayed by the
+ * view manager classes.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public class ManagedContentArea extends Group
+ {
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function ManagedContentArea()
+ {
+ super();
+ className = "ManagedContentArea";
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
index 9322e66..79368fd 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
@@ -26,6 +26,7 @@ package org.apache.flex.mobile
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.chrome.ToolBar;
import org.apache.flex.mobile.models.ViewManagerModel;
+ import org.apache.flex.mobile.beads.StackedViewManagerView;
[Event(name="viewChanged",type="org.apache.flex.events.Event")]
@@ -127,6 +128,22 @@ package org.apache.flex.mobile
{
return _topView;
}
+
+ /**
+ * @private
+ */
+ override public function addedToParent():void
+ {
+ super.addedToParent();
+
+// var tabbedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
+//
+// var n:int = ViewManagerModel(model).views.length;
+// if (n > 0) {
+// var view:IViewManagerView = ViewManagerModel(model).views[0] as IViewManagerView;
+// push(view);
+// }
+ }
/**
@@ -142,13 +159,15 @@ package org.apache.flex.mobile
nextView.viewManager = this;
ViewManagerModel(model).pushView(nextView);
- if (_topView != null) {
- removeElement(_topView);
- }
- _topView = nextView;
- addElement(_topView);
-
- dispatchEvent( new Event("viewChanged") );
+// var stackedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
+//
+// if (_topView != null) {
+// stackedView.contentArea.removeElement(_topView);
+// }
+// _topView = nextView;
+// stackedView.contentArea.addElement(_topView);
+//
+// dispatchEvent( new Event("viewChanged") );
}
/**
@@ -161,14 +180,16 @@ package org.apache.flex.mobile
*/
public function pop():void
{
- if (ViewManagerModel(model).views.length > 1) {
- var lastView:IChild = ViewManagerModel(model).popView() as IChild;
- removeElement(_topView);
- addElement(lastView);
- _topView = lastView as IViewManagerView;
-
- dispatchEvent( new Event("viewChanged") );
- }
+ var stackedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
+
+// if (ViewManagerModel(model).views.length > 1) {
+// var lastView:IChild = ViewManagerModel(model).popView() as IChild;
+// stackedView.contentArea.removeElement(_topView);
+// stackedView.contentArea.addElement(lastView);
+// _topView = lastView as IViewManagerView;
+//
+// dispatchEvent( new Event("viewChanged") );
+// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
index 243e285..3b0d89d 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
@@ -18,11 +18,13 @@
////////////////////////////////////////////////////////////////////////////////
package org.apache.flex.mobile
{
+ import org.apache.flex.events.Event;
import org.apache.flex.html.Container;
import org.apache.flex.mobile.IViewManagerView;
import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.chrome.TabBar;
import org.apache.flex.mobile.models.ViewManagerModel;
+ import org.apache.flex.mobile.beads.TabbedViewManagerView;
[Event(name="viewChanged",type="org.apache.flex.events.Event")]
@@ -82,6 +84,46 @@ package org.apache.flex.mobile
{
ViewManagerModel(model).selectedIndex = value;
}
+
+ /**
+ * @private
+ */
+ override public function addedToParent():void
+ {
+ super.addedToParent();
+
+// var tabbedView:TabbedViewManagerView = getBeadByType(TabbedViewManagerView) as TabbedViewManagerView;
+//
+// var n:int = ViewManagerModel(model).views.length;
+// if (n > 0) {
+// for (var i:int = 0; i < n; i++)
+// {
+// var view:IViewManagerView = ViewManagerModel(model).views[i] as IViewManagerView;
+// view.viewManager = this;
+// if (i == 0) {
+// tabbedView.contentArea.addElement(view, true);
+// }
+// }
+// ViewManagerModel(model).selectedIndex = 0;
+// }
+ }
+
+ /**
+ * @private
+ */
+ override protected function changeView( event:Event ):void
+ {
+// var tabbedView:TabbedViewManagerView = getBeadByType(TabbedViewManagerView) as TabbedViewManagerView;
+//
+// var index:Number = ViewManagerModel(model).selectedIndex;
+// if (currentView) {
+// tabbedView.contentArea.removeElement(currentView);
+// }
+// currentView = views[index];
+// tabbedView.contentArea.addElement(currentView);
+//
+// dispatchEvent( new Event("viewChanged") );
+ }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as
index 504f62e..0200e72 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as
@@ -33,10 +33,6 @@ package org.apache.flex.mobile
public function TitleView()
{
super();
-
- // views always take up 100% of their space
- percentWidth = 100;
- percentHeight = 100;
}
private var _title:String;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
index 6d7175e..cc16ae3 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
@@ -20,15 +20,12 @@ package org.apache.flex.mobile
{
import org.apache.flex.core.UIBase;
import org.apache.flex.events.Event;
- import org.apache.flex.html.Container;
+ import org.apache.flex.html.Group;
import org.apache.flex.mobile.IViewManagerView;
import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.models.ViewManagerModel;
-// import org.apache.flex.html.beads.SolidBackgroundBead;
-// import org.apache.flex.html.beads.SingleLineBorderBead;
-
/**
* Event dispatched when the current (selected) view changes.
*
@@ -47,7 +44,7 @@ package org.apache.flex.mobile
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public class ViewManagerBase extends UIBase implements IViewManager
+ public class ViewManagerBase extends Group implements IViewManager
{
/**
* Constructor.
@@ -61,9 +58,7 @@ package org.apache.flex.mobile
percentHeight = 100;
model.addEventListener("selectedIndexChanged", changeView);
-
-// addBead(new SolidBackgroundBead());
-// addBead(new SingleLineBorderBead());
+
}
/**
@@ -162,40 +157,21 @@ package org.apache.flex.mobile
/**
* @private
*/
- override public function addedToParent():void
+ protected function changeView( event:Event ):void
{
- super.addedToParent();
-
- var n:int = ViewManagerModel(model).views.length;
- if (n > 0) {
- for (var i:int = 0; i < n; i++)
- {
- var view:IViewManagerView = ViewManagerModel(model).views[i] as IViewManagerView;
- view.viewManager = this;
- if (i == 0) {
- addElement(view, true);
- }
- }
- ViewManagerModel(model).selectedIndex = 0;
- }
- }
-
- /**
- * @private
- */
- private function changeView( event:Event ):void
- {
- var index:Number = ViewManagerModel(model).selectedIndex;
- if (_currentView) {
- removeElement(_currentView);
- }
- _currentView = views[index];
- addElement(_currentView);
-
- dispatchEvent( new Event("viewChanged") );
+ // handled in subclass
}
private var _currentView:IViewManagerView;
+ public function get currentView():IViewManagerView
+ {
+ return _currentView;
+ }
+ public function set currentView(value:IViewManagerView):void
+ {
+ _currentView = value;
+ // probably need to dispatch an event or do something more complex
+ }
/**
* The currently visible view.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
index 85368ae..bd99b00 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
@@ -26,6 +26,8 @@ package org.apache.flex.mobile.beads
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
+ import org.apache.flex.mobile.IViewManagerView;
+ import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.chrome.ToolBar;
import org.apache.flex.mobile.models.ViewManagerModel;
@@ -54,74 +56,145 @@ package org.apache.flex.mobile.beads
super();
}
- private var _toolBar:ToolBar;
-
+ private var _strand:IStrand;
+ private var _contentArea:ManagedContentArea;
+
+ public function get contentArea():ManagedContentArea
+ {
+ return _contentArea;
+ }
+
+ public function get toolBar():ToolBar
+ {
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ return model.toolBar;
+ }
+ public function set toolBar(value:ToolBar):void
+ {
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ model.toolBar = value;
+ }
+
+ override public function get strand():IStrand
+ {
+ return _strand;
+ }
override public function set strand(value:IStrand):void
{
+ _strand = value;
+ super.strand = value;
+
+ // The content area will hold the views
+ _contentArea = new ManagedContentArea();
+
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
if (model.toolBarItems)
{
- _toolBar = new ToolBar();
- _toolBar.controls = model.toolBarItems;
- _toolBar.addBead(new HorizontalLayout());
- UIBase(value).addElement(_toolBar,false);
+ var tbar:ToolBar = new ToolBar();
+ tbar.controls = model.toolBarItems;
+ tbar.addBead(new HorizontalLayout());
+ toolBar = tbar;
}
-
- super.strand = value;
- }
- override public function get strand():IStrand
- {
- return super.strand;
}
- /**
- * @private
- */
- override protected function layoutChromeElements():void
- {
- var host:UIBase = strand as UIBase;
- var contentAreaY:Number = 0;
- var contentAreaHeight:Number = host.height;
- var toolbarHeight:Number = _toolBar == null ? 0 : _toolBar.height;
-
- var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete(event);
- if (navigationBar)
- {
- navigationBar.x = 0;
- navigationBar.y = 0;
- navigationBar.width = host.width;
-
- contentAreaHeight -= navigationBar.height;
- contentAreaY = navigationBar.height;
-
- model.navigationBar = navigationBar;
+ COMPILE::SWF {
+ _contentArea.percentWidth = 100;
+ _contentArea.percentHeight = 100;
}
+ UIBase(_strand).addElement(_contentArea);
- if (_toolBar)
- {
- _toolBar.x = 0;
- _toolBar.y = host.height - toolbarHeight;
- _toolBar.width = host.width;
-
- contentAreaHeight -= toolbarHeight;
-
- model.toolBar = _toolBar;
+ if (toolBar) {
+ UIBase(_strand).addElement(toolBar);
}
- if (contentAreaY < 0) contentAreaY = 0;
- if (contentAreaHeight < 0) contentAreaHeight = 0;
+ performLayout(event);
- model.contentX = 0;
- model.contentY = contentAreaY;
- model.contentWidth = host.width;
- model.contentHeight = contentAreaHeight;
+ showViewByIndex(0);
+ }
+
+ private var _topView:IViewManagerView;
+
+ protected function showViewByIndex(index:int):void
+ {
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
- sizeViewsToFitContentArea();
+ if (_topView != null) {
+ contentArea.removeElement(_topView);
+ }
+ _topView = model.views[index] as IViewManagerView;
+ contentArea.addElement(_topView);
- // notify the views that the content size has changed
- IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
+ COMPILE::JS {
+ if (_topView) {
+ UIBase(_topView).element.style["flex-grow"] = "1";
+ }
+ }
}
+
+ override protected function layoutViewAfterContentLayout():void
+ {
+ super.layoutViewAfterContentLayout();
+
+ COMPILE::SWF {
+ if (_topView) {
+ UIBase(_topView).width = contentArea.width;
+ UIBase(_topView).height = contentArea.height;
+ }
+ }
+ }
+
+ /**
+ * @private
+ */
+// override protected function layoutChromeElements():void
+// {
+// var host:UIBase = strand as UIBase;
+// var contentAreaY:Number = 0;
+// var contentAreaHeight:Number = host.height;
+// var toolbarHeight:Number = _toolBar == null ? 0 : _toolBar.height;
+//
+// var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+//
+// if (navigationBar)
+// {
+// navigationBar.x = 0;
+// navigationBar.y = 0;
+// navigationBar.width = host.width;
+//
+// contentAreaHeight -= navigationBar.height;
+// contentAreaY = navigationBar.height;
+//
+// model.navigationBar = navigationBar;
+// }
+//
+// if (_toolBar)
+// {
+// _toolBar.x = 0;
+// _toolBar.y = host.height - toolbarHeight;
+// _toolBar.width = host.width;
+//
+// contentAreaHeight -= toolbarHeight;
+//
+// model.toolBar = _toolBar;
+// }
+//
+// if (contentAreaY < 0) contentAreaY = 0;
+// if (contentAreaHeight < 0) contentAreaHeight = 0;
+//
+// model.contentX = 0;
+// model.contentY = contentAreaY;
+// model.contentWidth = host.width;
+// model.contentHeight = contentAreaHeight;
+//
+// sizeViewsToFitContentArea();
+//
+// // notify the views that the content size has changed
+// IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
+// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
index 787375d..227ae74 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
@@ -26,9 +26,12 @@ package org.apache.flex.mobile.beads
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
+ import org.apache.flex.mobile.IViewManagerView;
+ import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.chrome.TabBar;
import org.apache.flex.mobile.models.ViewManagerModel;
+ import org.apache.flex.mobile.beads.TabbedViewManagerView;
/**
* The TabbedViewManagerView constructs the visual elements of the TabbedViewManager. The
@@ -54,9 +57,25 @@ package org.apache.flex.mobile.beads
super();
}
- private var _tabBar:TabBar;
-
private var _strand:IStrand;
+ private var _contentArea:ManagedContentArea;
+
+ public function get tabBar():TabBar
+ {
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ return model.tabBar;
+ }
+ public function set tabBar(value:TabBar):void
+ {
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ model.tabBar = value;
+ }
+
+ public function get contentArea():ManagedContentArea
+ {
+ return _contentArea;
+ }
+
override public function get strand():IStrand
{
return _strand;
@@ -64,17 +83,69 @@ package org.apache.flex.mobile.beads
override public function set strand(value:IStrand):void
{
_strand = value;
+ super.strand = value;
+
+ // The content area will hold the views
+ _contentArea = new ManagedContentArea();
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
// TabbedViewManager always has a TabBar
- _tabBar = new TabBar();
- _tabBar.dataProvider = model.views;
- _tabBar.labelField = "title";
- _tabBar.addEventListener("change",handleButtonBarChange);
- UIBase(_strand).addElement(_tabBar, false);
+ var tbar:TabBar = new TabBar();
+ tbar.dataProvider = model.views;
+ tbar.labelField = "title";
+ tbar.addEventListener("change",handleButtonBarChange);
+ tabBar = tbar;
+ }
+
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete(event);
- super.strand = value;
+ COMPILE::SWF {
+ _contentArea.percentWidth = 100;
+ _contentArea.percentHeight = 100;
+ }
+ UIBase(_strand).addElement(_contentArea);
+
+ if (tabBar) {
+ UIBase(_strand).addElement(tabBar);
+ }
+
+ performLayout(event);
+
+ showViewByIndex(0);
+ }
+
+ private var _currentView:IViewManagerView;
+
+ protected function showViewByIndex(index:int):void
+ {
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+
+ if (_currentView != null) {
+ contentArea.removeElement(_currentView);
+ }
+ _currentView = model.views[index] as IViewManagerView;
+ contentArea.addElement(_currentView);
+
+ COMPILE::JS {
+ if (_currentView) {
+ UIBase(_currentView).element.style["flex-grow"] = "1";
+ }
+ }
+ }
+
+ override protected function layoutViewAfterContentLayout():void
+ {
+ super.layoutViewAfterContentLayout();
+
+ COMPILE::SWF {
+ if (_currentView) {
+ UIBase(_currentView).width = contentArea.width;
+ UIBase(_currentView).height = contentArea.height;
+ }
+ }
}
/**
@@ -82,58 +153,60 @@ package org.apache.flex.mobile.beads
*/
private function handleButtonBarChange(event:Event):void
{
- var newIndex:Number = _tabBar.selectedIndex;
+ var newIndex:Number = tabBar.selectedIndex;
var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
// doing this will trigger the selectedIndexChanged event which will
// tell the strand to switch views
model.selectedIndex = newIndex;
+
+ showViewByIndex(newIndex);
}
/**
* @private
*/
- override protected function layoutChromeElements():void
- {
- var host:UIBase = _strand as UIBase;
- var contentAreaY:Number = 0;
- var contentAreaHeight:Number = host.height;
-
- var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
-
- if (navigationBar)
- {
- navigationBar.x = 0;
- navigationBar.y = 0;
- navigationBar.width = host.width;
-
- contentAreaHeight -= navigationBar.height;
- contentAreaY = navigationBar.height;
-
- model.navigationBar = navigationBar;
- }
-
- if (_tabBar)
- {
- _tabBar.x = 0;
- _tabBar.y = host.height - _tabBar.height;
- _tabBar.width = host.width;
- _tabBar.dispatchEvent(new Event("layoutNeeded"));
-
- contentAreaHeight -= _tabBar.height;
-
- model.tabBar = _tabBar;
- }
-
- model.contentX = 0;
- model.contentY = contentAreaY;
- model.contentWidth = host.width;
- model.contentHeight = contentAreaHeight;
-
- sizeViewsToFitContentArea();
-
- // notify the views that the content size has changed
- IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
- }
+// override protected function layoutChromeElements():void
+// {
+// var host:UIBase = _strand as UIBase;
+// var contentAreaY:Number = 0;
+// var contentAreaHeight:Number = host.height;
+//
+// var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+//
+// if (navigationBar)
+// {
+// navigationBar.x = 0;
+// navigationBar.y = 0;
+// navigationBar.width = host.width;
+//
+// contentAreaHeight -= navigationBar.height;
+// contentAreaY = navigationBar.height;
+//
+// model.navigationBar = navigationBar;
+// }
+//
+// if (_tabBar)
+// {
+// _tabBar.x = 0;
+// _tabBar.y = host.height - _tabBar.height;
+// _tabBar.width = host.width;
+// _tabBar.dispatchEvent(new Event("layoutNeeded"));
+//
+// contentAreaHeight -= _tabBar.height;
+//
+// model.tabBar = _tabBar;
+// }
+//
+// model.contentX = 0;
+// model.contentY = contentAreaY;
+// model.contentWidth = host.width;
+// model.contentHeight = contentAreaHeight;
+//
+// sizeViewsToFitContentArea();
+//
+// // notify the views that the content size has changed
+// IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
+// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
index f314fad..5599ad9 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
@@ -28,6 +28,7 @@ package org.apache.flex.mobile.beads
import org.apache.flex.events.Event;
import org.apache.flex.html.Container;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
+ import org.apache.flex.html.beads.GroupView;
import org.apache.flex.mobile.IViewManagerView;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.models.ViewManagerModel;
@@ -41,7 +42,7 @@ package org.apache.flex.mobile.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public class ViewManagerViewBase implements IBeadView
+ public class ViewManagerViewBase extends GroupView implements IBeadView
{
/**
* Constructor.
@@ -56,23 +57,15 @@ package org.apache.flex.mobile.beads
super();
}
- public function get host():IUIBase
- {
- return _strand as IUIBase;
- }
- public function set host(value:IUIBase):void
- {
- // not implemented; getter only.
- }
-
- private var _navigationBar:NavigationBar;
public function get navigationBar():NavigationBar
{
- return _navigationBar;
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ return model.navigationBar;
}
public function set navigationBar(value:NavigationBar):void
{
- // not implemented; getter only.
+ var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ model.navigationBar = value;
}
private var _strand:IStrand;
@@ -80,22 +73,29 @@ package org.apache.flex.mobile.beads
{
return _strand;
}
- public function set strand(value:IStrand):void
+ override public function set strand(value:IStrand):void
{
+ super.strand = value;
_strand = value;
- UIBase(_strand).addEventListener("sizeChanged", sizeChangedHandler);
- UIBase(_strand).addEventListener("widthChanged", sizeChangedHandler);
- UIBase(_strand).addEventListener("heightChanged", sizeChangedHandler);
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
model.addEventListener("selectedIndexChanged", viewsChangedHandler);
if (model.navigationBarItems)
{
- _navigationBar = new NavigationBar();
- _navigationBar.controls = model.navigationBarItems;
- _navigationBar.addBead(new HorizontalLayout());
- UIBase(_strand).addElement(_navigationBar, false);
+ var navBar:NavigationBar = new NavigationBar();
+ navBar.controls = model.navigationBarItems;
+ navBar.addBead(new HorizontalLayout());
+ navigationBar = navBar;
+ }
+ }
+
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete(event);
+
+ if (navigationBar) {
+ UIBase(_strand).addElement(navigationBar);
}
}
@@ -110,56 +110,57 @@ package org.apache.flex.mobile.beads
/**
* @private
*/
- protected function sizeChangedHandler(event:Event):void
- {
- layoutChromeElements();
- }
+// protected function sizeChangedHandler(event:Event):void
+// {
+// layoutChromeElements();
+// }
/**
* @private
*/
protected function layoutChromeElements():void
{
- var host:UIBase = _strand as UIBase;
- var contentAreaY:Number = 0;
- var contentAreaHeight:Number = host.height;
-
- var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
-
- if (_navigationBar)
- {
- _navigationBar.x = 0;
- _navigationBar.y = 0;
- _navigationBar.width = host.width;
-
- contentAreaHeight -= _navigationBar.height;
- contentAreaY = _navigationBar.height;
-
- model.navigationBar = _navigationBar;
- }
-
- model.contentX = 0;
- model.contentY = contentAreaY;
- model.contentWidth = host.width;
- model.contentHeight = contentAreaHeight;
-
- sizeViewsToFitContentArea();
+ performLayout(null);
+// var host:UIBase = _strand as UIBase;
+// var contentAreaY:Number = 0;
+// var contentAreaHeight:Number = host.height;
+//
+// var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+//
+// if (_navigationBar)
+// {
+// _navigationBar.x = 0;
+// _navigationBar.y = 0;
+// _navigationBar.width = host.width;
+//
+// contentAreaHeight -= _navigationBar.height;
+// contentAreaY = _navigationBar.height;
+//
+// model.navigationBar = _navigationBar;
+// }
+//
+// model.contentX = 0;
+// model.contentY = contentAreaY;
+// model.contentWidth = host.width;
+// model.contentHeight = contentAreaHeight;
+//
+// sizeViewsToFitContentArea();
}
protected function sizeViewsToFitContentArea():void
{
- var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
-
- var n:int = ViewManagerModel(model).views.length;
- if (n > 0) {
- for (var i:int = 0; i < n; i++)
- {
- var view:IViewManagerView = ViewManagerModel(model).views[i] as IViewManagerView;
- UIBase(view).x = model.contentX;
- UIBase(view).y = model.contentY;
- UIBase(view).setWidthAndHeight(model.contentWidth, model.contentHeight, true);
- }
- }
+// var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+//
+// var n:int = ViewManagerModel(model).views.length;
+// if (n > 0) {
+// for (var i:int = 0; i < n; i++)
+// {
+// var view:IViewManagerView = ViewManagerModel(model).views[i] as IViewManagerView;
+// UIBase(view).x = model.contentX;
+// UIBase(view).y = model.contentY;
+// UIBase(view).setWidthAndHeight(model.contentWidth, model.contentHeight, true);
+// }
+// }
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml b/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
index e0f523d..ac85e14 100644
--- a/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
@@ -23,6 +23,7 @@
<component id="StackedViewManager" class="org.apache.flex.mobile.StackedViewManager" />
<component id="TabbedViewManager" class="org.apache.flex.mobile.TabbedViewManager" />
<component id="TitleView" class="org.apache.flex.mobile.TitleView" />
+ <component id="ManagedContentArea" class="org.apache.flex.mobile.ManagedContentArea" />
<component id="NavigationBar" class="org.apache.flex.mobile.chrome.NavigationBar" />
<component id="ToolBar" class="org.apache.flex.mobile.chrome.ToolBar" />
<component id="TabBar" class="org.apache.flex.mobile.chrome.TabBar" />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e0b3528a/frameworks/projects/Mobile/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/resources/defaults.css b/frameworks/projects/Mobile/src/main/resources/defaults.css
index ddf9229..405a3a5 100644
--- a/frameworks/projects/Mobile/src/main/resources/defaults.css
+++ b/frameworks/projects/Mobile/src/main/resources/defaults.css
@@ -20,16 +20,29 @@
@namespace "library://ns.apache.org/flexjs/basic";
@namespace svg "library://ns.apache.org/flexjs/svg";
+NavigationBar
+{
+ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalFlexLayout");
+}
+
StackedViewManager
{
IBeadModel: ClassReference("org.apache.flex.mobile.models.ViewManagerModel");
IBeadView: ClassReference("org.apache.flex.mobile.beads.StackedViewManagerView");
+ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
}
TabbedViewManager
{
IBeadModel: ClassReference("org.apache.flex.mobile.models.ViewManagerModel");
IBeadView: ClassReference("org.apache.flex.mobile.beads.TabbedViewManagerView");
+ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
+}
+
+ManagedContentArea
+{
+ display: flex;
+ flex-grow: 1;
}
ToggleSwitch
@@ -63,3 +76,11 @@ DatePicker {
IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModelExtended");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.RangeStepperMouseController");
}
+
+@media -flex-flash
+{
+ NavigationBar {
+ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
+ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
+ }
+}
[40/43] git commit: [flex-asjs] [refs/heads/dual] - Merge branch
'develop' into dual
Posted by ah...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
index cad6827,0000000..6fb927d
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
@@@ -1,264 -1,0 +1,265 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.beads.layouts
+{
+// import org.apache.flex.html.beads.layouts.HorizontalLayout;
+
+ import org.apache.flex.core.LayoutBase;
+ import org.apache.flex.core.ILayoutChild;
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IParentIUIBase;
+ import org.apache.flex.core.UIBase;
+
+ COMPILE::SWF {
+ import org.apache.flex.core.IUIBase;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.geom.Rectangle;
+ import org.apache.flex.utils.CSSUtils;
+ import org.apache.flex.utils.CSSContainerUtils;
+ }
+
+ public class HorizontalFlexLayout extends LayoutBase
+ {
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function HorizontalFlexLayout()
+ {
+ super();
+ }
+
+ private var _grow:Number = -1;
+
+ /**
+ * Sets the amount items grow in proportion to other items.
+ * The default is 0 which prevents the items from expanding to
+ * fit the space. Use a negative value to unset this property.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get grow():Number {
+ return _grow;
+ }
+ public function set grow(value:Number):void {
+ _grow = value;
+ }
+
+ private var _shrink:Number = -1;
+
+ /**
+ * Sets the amount an item may shrink in proportion to other items.
+ * The default is 1 which allows items to shrink to fit into the space.
+ * Set this to 0 if you want to allow scrolling of the space. Use a
+ * negative value to unset this property.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get shrink():Number {
+ return _shrink;
+ }
+ public function set shrink(value:Number):void {
+ _shrink = value;
+ }
+
+ /**
+ * @copy org.apache.flex.core.IBeadLayout#layout
+ * @flexjsignorecoercion org.apache.flex.core.ILayoutHost
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override public function layout():Boolean
+ {
+ COMPILE::SWF {
+ var contentView:ILayoutView = layoutView;
+
+ var n:Number = contentView.numElements;
+ if (n == 0) return false;
+
+ var spacing:String = "none";
+
+ var maxWidth:Number = 0;
+ var maxHeight:Number = 0;
+ var growCount:Number = 0;
+ var childData:Array = [];
+ var hostWidthSizedToContent:Boolean = host.isWidthSizedToContent();
+ var hostHeightSizedToContent:Boolean = host.isHeightSizedToContent();
+ var hostWidth:Number = hostWidthSizedToContent ? host.width : contentView.width;
+ var hostHeight:Number = hostHeightSizedToContent ? host.height : contentView.height;
+
+ var ilc:ILayoutChild;
+ var data:Object;
+ var canAdjust:Boolean = false;
+
+ var paddingMetrics:Rectangle = CSSContainerUtils.getPaddingMetrics(host);
+ var borderMetrics:Rectangle = CSSContainerUtils.getBorderMetrics(host);
+
+ // adjust the host's usable size by the metrics. If hostSizedToContent, then the
+ // resulting adjusted value may be less than zero.
+ hostWidth -= paddingMetrics.left + paddingMetrics.right + borderMetrics.left + borderMetrics.right;
+ hostHeight -= paddingMetrics.top + paddingMetrics.bottom + borderMetrics.top + borderMetrics.bottom;
+
+ if ((hostWidth <= 0 && !hostWidthSizedToContent) || (hostHeight <= 0 && !hostHeightSizedToContent)) return false;
+
+ var remainingWidth:Number = hostWidth;
+
+ //trace("HorizontalFlexLayout for "+UIBase(host).id+" with remainingWidth: "+remainingWidth);
+
+ // First pass determines the data about the child.
+ for(var i:int=0; i < n; i++)
+ {
+ var child:IUIBase = contentView.getElementAt(i) as IUIBase;
+ if (child == null || !child.visible) {
+ childData.push({width:0, height:0, mt:0, ml:0, mr:0, mb:0, canAdjust:false});
+ continue;
+ }
+
+ ilc = child as ILayoutChild;
+
+ var margins:Object = childMargins(child, hostWidth, hostHeight);
+
+ var flexGrow:Object = ValuesManager.valuesImpl.getValue(child, "flex-grow");
+ var growValue:Number = 0;
+ if (flexGrow != null) {
+ growValue = Number(flexGrow);
+ if (!isNaN(growValue) && growValue > 0) growCount++;
+ else growValue = 0;
+ }
+
+ var useHeight:Number = -1;
+ if (!hostHeightSizedToContent) {
+ if (ilc) {
+ if (!isNaN(ilc.percentHeight)) useHeight = hostHeight * (ilc.percentHeight/100.0);
+ else if (!isNaN(ilc.explicitHeight)) useHeight = ilc.explicitHeight;
+ else useHeight = hostHeight;
+ }
+ }
+
+ var useWidth:Number = -1;
+ if (ilc) {
+ if (!isNaN(ilc.explicitWidth)) useWidth = ilc.explicitWidth;
+ else if (!isNaN(ilc.percentWidth)) useWidth = hostWidth * (ilc.percentWidth/100.0);
+ else if (ilc.width > 0) useWidth = ilc.width;
+ }
+ if (growValue == 0 && useWidth > 0) remainingWidth -= useWidth + margins.left + margins.right;
+ else remainingWidth -= margins.left + margins.right;
+
+ if (maxWidth < useWidth) maxWidth = useWidth;
+ if (maxHeight < useHeight) maxHeight = useHeight;
+
+ childData.push({width:useWidth, height:useHeight,
+ mt:margins.top, ml:margins.left, mr:margins.right, mb:margins.bottom,
+ grow:growValue, canAdjust:canAdjust});
+ }
+
+ var xpos:Number = borderMetrics.left + paddingMetrics.left;
+ var ypos:Number = borderMetrics.top + paddingMetrics.top;
+
+ // Second pass sizes and positions the children based on the data gathered.
+ for(i=0; i < n; i++)
+ {
+ child = contentView.getElementAt(i) as IUIBase;
+ data = childData[i];
+ //if (data.width == 0 || data.height == 0) continue;
+
+ useHeight = (data.height < 0 ? maxHeight : data.height);
+
+ var setWidth:Boolean = true;
+ if (data.width != 0) {
+ if (data.grow > 0 && growCount > 0) {
+ useWidth = remainingWidth / growCount;
+ setWidth = false;
+ } else {
+ useWidth = data.width;
+ }
+ } else {
+ useWidth = child.width;
+ }
+
+ ilc = child as ILayoutChild;
+ if (ilc) {
+ ilc.setX(xpos + data.ml);
+ ilc.setY(ypos + data.mt);
+ if (data.height > 0) {
+ //ilc.height = useHeight;
+ ilc.setHeight(useHeight);
+ }
+ if (useWidth > 0) {
+ if (setWidth) ilc.setWidth(useWidth);
+ else ilc.width = useWidth;
+ }
+ } else {
+ child.x = xpos + data.ml;
+ child.y = ypos + data.mt;
+ child.height = useHeight;
+ if (data.width > 0) {
+ child.width = useWidth;
+ }
+ }
+
+ xpos += useWidth + data.mr + data.ml;
+
+ //trace("HorizontalFlexLayout: setting child "+i+" to "+child.width+" x "+child.height+" at "+child.x+", "+child.y);
+ }
+
+ //trace("HorizontalFlexLayout: complete");
+
+ return true;
+ }
+
+ COMPILE::JS {
+ var contentView:ILayoutView = layoutView;
+
+ // set the display on the contentView
+ contentView.element.style["display"] = "flex";
+ contentView.element.style["flex-flow"] = "row";
+
+ var n:int = contentView.numElements;
+ if (n == 0) return false;
+
+ for(var i:int=0; i < n; i++) {
+ var child:UIBase = contentView.getElementAt(i) as UIBase;
+ if (grow >= 0) child.element.style["flex-grow"] = String(grow);
+ if (shrink >= 0) child.element.style["flex-shrink"] = String(shrink);
++ child.dispatchEvent(new Event("layoutNeeded"));
+ }
+
+ return true;
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
index f495acc,0000000..c543425
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
@@@ -1,260 -1,0 +1,261 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.beads.layouts
+{
+ //import org.apache.flex.html.beads.layouts.VerticalLayout;
+
+ import org.apache.flex.core.LayoutBase;
+ import org.apache.flex.core.ILayoutChild;
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.IParentIUIBase;
+
+ COMPILE::SWF {
+ import org.apache.flex.core.IUIBase;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.geom.Rectangle;
+ import org.apache.flex.utils.CSSUtils;
+ import org.apache.flex.utils.CSSContainerUtils;
+ }
+
+ public class VerticalFlexLayout extends LayoutBase
+ {
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function VerticalFlexLayout()
+ {
+ super();
+ }
+
+ private var _grow:Number = -1;
+
+ /**
+ * Sets the amount items grow in proportion to other items.
+ * The default is 0 which prevents the items from expanding to
+ * fit the space. Use a negative value to unset this property.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get grow():Number {
+ return _grow;
+ }
+ public function set grow(value:Number):void {
+ _grow = value;
+ }
+
+ private var _shrink:Number = -1;
+
+ /**
+ * Sets the amount an item may shrink in proportion to other items.
+ * The default is 1 which allows items to shrink to fit into the space.
+ * Set this to 0 if you want to allow scrolling of the space. Use a negative
+ * value to unset this property.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get shrink():Number {
+ return _shrink;
+ }
+ public function set shrink(value:Number):void {
+ _shrink = value;
+ }
+
+ /**
+ *
+ * @flexjsignorecoercion org.apache.flex.core.ILayoutHost
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override public function layout():Boolean
+ {
+ COMPILE::SWF {
+ var contentView:ILayoutView = layoutView;
+
+ var n:Number = contentView.numElements;
+ if (n == 0) return false;
+
+ var spacing:String = "none";
+
+ var maxWidth:Number = 0;
+ var maxHeight:Number = 0;
+ var growCount:Number = 0;
+ var childData:Array = [];
+ var hostWidthSizedToContent:Boolean = host.isWidthSizedToContent();
+ var hostHeightSizedToContent:Boolean = host.isHeightSizedToContent();
+ var hostWidth:Number = hostWidthSizedToContent ? host.width : contentView.width;
+ var hostHeight:Number = hostHeightSizedToContent ? host.height : contentView.height;
+
+ var ilc:ILayoutChild;
+ var data:Object;
+ var canAdjust:Boolean = false;
+
+ var paddingMetrics:Rectangle = CSSContainerUtils.getPaddingMetrics(host);
+ var borderMetrics:Rectangle = CSSContainerUtils.getBorderMetrics(host);
+
+ // adjust the host's usable size by the metrics. If hostSizedToContent, then the
+ // resulting adjusted value may be less than zero.
+ hostWidth -= paddingMetrics.left + paddingMetrics.right + borderMetrics.left + borderMetrics.right;
+ hostHeight -= paddingMetrics.top + paddingMetrics.bottom + borderMetrics.top + borderMetrics.bottom;
+
+ var remainingHeight:Number = hostHeight;
+
+ //trace("VerticalFlexLayout for "+UIBase(host).id+" with remainingHeight: "+remainingHeight);
+
+ // First pass determines the data about the child.
+ for(var i:int=0; i < n; i++)
+ {
+ var child:IUIBase = contentView.getElementAt(i) as IUIBase;
+ if (child == null || !child.visible) {
+ childData.push({width:0, height:0, mt:0, ml:0, mr:0, mb:0, grow:0, canAdjust:false});
+ continue;
+ }
+
+ ilc = child as ILayoutChild;
+
+ var margins:Object = childMargins(child, hostWidth, hostHeight);
+
+ var flexGrow:Object = ValuesManager.valuesImpl.getValue(child, "flex-grow");
+ var growValue:Number = 0;
+ if (flexGrow != null) {
+ growValue = Number(flexGrow);
+ if (!isNaN(growValue) && growValue > 0) growCount++;
+ else growValue = 0;
+ }
+
+ var useWidth:Number = -1;
+ if (!hostWidthSizedToContent) {
+ if (ilc) {
+ if (!isNaN(ilc.percentWidth)) useWidth = hostWidth * (ilc.percentWidth/100.0);
+ else if (!isNaN(ilc.explicitWidth)) useWidth = ilc.explicitWidth;
+ else useWidth = hostWidth;
+ }
+ }
+
+ var useHeight:Number = -1;
+ if (ilc) {
+ if (!isNaN(ilc.explicitHeight)) useHeight = ilc.explicitHeight;
+ else if (!isNaN(ilc.percentHeight)) useHeight = hostHeight * (ilc.percentHeight/100.0);
+ else if (ilc.height > 0) useHeight = ilc.height;
+ }
+ if (growValue == 0 && useHeight > 0) remainingHeight -= useHeight + margins.top + margins.bottom;
+ else remainingHeight -= margins.top + margins.bottom;
+
+ if (maxWidth < useWidth) maxWidth = useWidth;
+ if (maxHeight < useHeight) maxHeight = useHeight;
+
+ childData.push({width:useWidth, height:useHeight,
+ mt:margins.top, ml:margins.left, mr:margins.right, mb:margins.bottom,
+ grow:growValue, canAdjust:canAdjust});
+ }
+
+ var xpos:Number = borderMetrics.left + paddingMetrics.left;
+ var ypos:Number = borderMetrics.top + paddingMetrics.top;
+
+ // Second pass sizes and positions the children based on the data gathered.
+ for(i=0; i < n; i++)
+ {
+ child = contentView.getElementAt(i) as IUIBase;
+ data = childData[i];
+
+ useWidth = (data.width < 0 ? hostWidth : data.width);
+
+ var setHeight:Boolean = true;
+ if (data.height != 0) {
+ if (data.grow > 0 && growCount > 0) {
+ useHeight = remainingHeight / growCount;
+ setHeight = false;
+ } else {
+ useHeight = data.height;
+ }
+ } else {
+ useHeight = child.height;
+ }
+
+ ilc = child as ILayoutChild;
+ if (ilc) {
+ ilc.setX(xpos + data.ml);
+ ilc.setY(ypos + data.mt);
+ if (data.width > 0) {
+ //ilc.width = useWidth;
+ ilc.setWidth(useWidth);
+ }
+ if (useHeight > 0) {
+ if (setHeight) ilc.setHeight(useHeight);
+ else ilc.height = useHeight;
+ }
+ } else {
+ child.x = xpos + data.ml;
+ child.y = ypos + data.mt;
+ child.width = useWidth;
+ if (useHeight > 0) {
+ child.height = useHeight;
+ }
+ }
+
+ ypos += useHeight + data.mt + data.mb;
+
+ //trace("VerticalFlexLayout: setting child "+i+" to "+child.width+" x "+child.height+" at "+child.x+", "+child.y);
+ }
+
+ //trace("VerticalFlexLayout: complete");
+
+ return true;
+ }
+
+ COMPILE::JS {
+ var contentView:ILayoutView = layoutView;
+
+ contentView.element.style["display"] = "flex";
+ contentView.element.style["flex-flow"] = "column";
+
+ var n:int = contentView.numElements;
+ if (n == 0) return false;
+
+ for(var i:int=0; i < n; i++) {
+ var child:UIBase = contentView.getElementAt(i) as UIBase;
+ if (grow >= 0) child.element.style["flex-grow"] = String(grow);
+ if (shrink >= 0) child.element.style["flex-shrink"] = String(shrink);
++ child.dispatchEvent(new Event("layoutNeeded"));
+ }
+
+ return true;
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
index de1b304,0000000..d9b130e
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
@@@ -1,84 -1,0 +1,94 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.supportClasses
+{
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IBeadLayout;
+ import org.apache.flex.core.IParentIUIBase;
+ import org.apache.flex.events.Event;
+
+ /**
+ * The MXMLItemRenderer class is the base class for itemRenderers that are MXML-based
+ * and provides support for a layout and a data object.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public class MXMLItemRenderer extends DataItemRenderer implements ILayoutParent, ILayoutHost, IStrand, ILayoutView
+ {
+ /**
+ * constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function MXMLItemRenderer()
+ {
+ super();
+ }
+
+ [Bindable("dataChange")]
+ override public function set data(value:Object):void
+ {
+ if (value != data)
+ {
+ super.data = value;
+ dispatchEvent(new Event("dataChange"));
+ }
+ }
+
+ public function getLayoutHost():ILayoutHost
+ {
+ return this;
+ }
+
+ public function get contentView():ILayoutView
+ {
+ return this;
+ }
+
+ override public function adjustSize():void
+ {
+ var layout:IBeadLayout = getBeadByType(IBeadLayout) as IBeadLayout;
+ if (layout != null) {
+ layout.layout();
+ }
+ }
++
++ public function beforeLayout():void
++ {
++
++ }
++
++ public function afterLayout():void
++ {
++
++ }
+
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
index 0000000,0000000..049fe9b
new file mode 100644
--- /dev/null
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
@@@ -1,0 -1,0 +1,244 @@@
++////////////////////////////////////////////////////////////////////////////////
++//
++// 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.supportClasses
++{
++ import org.apache.flex.core.IItemRenderer;
++ import org.apache.flex.core.IItemRendererParent;
++ import org.apache.flex.core.UIBase;
++ import org.apache.flex.core.SimpleCSSStyles;
++ import org.apache.flex.events.Event;
++ import org.apache.flex.events.MouseEvent;
++ import org.apache.flex.html.TextButton;
++ import org.apache.flex.html.beads.ITextItemRenderer;
++ import org.apache.flex.events.ItemClickedEvent;
++
++ COMPILE::JS
++ {
++ import org.apache.flex.core.WrappedHTMLElement;
++ }
++
++ /**
++ * The TextButtonItemRenderer class extends TextButton and turns it into an itemRenderer
++ * suitable for use in most DataContainer/List/DataGrid applications.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public class TextButtonItemRenderer extends TextButton implements ITextItemRenderer
++ {
++ public function TextButtonItemRenderer()
++ {
++ super();
++
++ style = new SimpleCSSStyles();
++
++ addEventListener('click',handleClickEvent);
++ }
++
++ private var _data:Object;
++
++ /**
++ * The data to be displayed as the text value. Use this in conjunction with
++ * the labelField property to select an item from the dataProvider record to use
++ * as the text value of the button.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get data():Object
++ {
++ return _data;
++ }
++ public function set data(value:Object):void
++ {
++ _data = value;
++
++ var valueAsString:String;
++
++ if (value is String) {
++ valueAsString = value as String;
++ }
++ else if (value.hasOwnProperty("label")) {
++ valueAsString = String(value["label"]);
++ }
++ else if (value.hasOwnProperty("title")) {
++ valueAsString = String(value["title"]);
++ }
++
++ if (valueAsString) text = valueAsString;
++ }
++
++ /**
++ * @private
++ */
++ protected function handleClickEvent(event:MouseEvent):void
++ {
++ var newEvent:ItemClickedEvent = new ItemClickedEvent("itemClicked");
++ newEvent.multipleSelection = event.shiftKey;
++ newEvent.index = index;
++ newEvent.data = data;
++ dispatchEvent(newEvent);
++ }
++
++ /*
++ * IItemRenderer, ISelectableItemRenderer
++ */
++
++ private var _itemRendererParent:Object;
++
++ /**
++ * The parent container for the itemRenderer instance.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get itemRendererParent():Object
++ {
++ return _itemRendererParent;
++ }
++ public function set itemRendererParent(value:Object):void
++ {
++ _itemRendererParent = value;
++ }
++
++ private var _labelField:String = "label";
++
++ /**
++ * The name of the field within the data to use as a label. Some itemRenderers use this field to
++ * identify the value they should show while other itemRenderers ignore this if they are showing
++ * complex information.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get labelField():String
++ {
++ return _labelField;
++ }
++ public function set labelField(value:String):void
++ {
++ _labelField = value;
++ }
++
++ private var _listData:Object;
++
++ [Bindable("__NoChangeEvent__")]
++ /**
++ * Additional data about the list structure the itemRenderer may
++ * find useful.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get listData():Object
++ {
++ return _listData;
++ }
++ public function set listData(value:Object):void
++ {
++ _listData = value;
++ }
++
++ private var _index:int;
++
++ /**
++ * The position with the dataProvider being shown by the itemRenderer instance.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get index():int
++ {
++ return _index;
++ }
++ public function set index(value:int):void
++ {
++ _index = value;
++ }
++
++ private var _hovered:Boolean;
++
++ /**
++ * Whether or not the itemRenderer is in a hovered state.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get hovered():Boolean
++ {
++ return _hovered;
++ }
++ public function set hovered(value:Boolean):void
++ {
++ _hovered = value;
++ }
++
++ private var _selected:Boolean;
++
++ /**
++ * Whether or not the itemRenderer is in a selected state.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get selected():Boolean
++ {
++ return _selected;
++ }
++ public function set selected(value:Boolean):void
++ {
++ _selected = value;
++ }
++
++ private var _down:Boolean;
++
++ /**
++ * Whether or not the itemRenderer is in a down (or pre-selected) state.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function get down():Boolean
++ {
++ return _down;
++ }
++ public function set down(value:Boolean):void
++ {
++ _down = value;
++ }
++ }
++}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/resources/basic-manifest.xml
index 7dbe764,072aed9..d57c592
--- a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
@@@ -81,20 -70,13 +81,20 @@@
<component id="Slider" class="org.apache.flex.html.Slider"/>
<component id="NumericStepper" class="org.apache.flex.html.NumericStepper" />
<component id="StringItemRenderer" class="org.apache.flex.html.supportClasses.StringItemRenderer"/>
+ <component id="AccordionItemRenderer" class="org.apache.flex.html.supportClasses.AccordionItemRenderer"/>
+ <component id="AccordionCollapseBead" class="org.apache.flex.html.beads.AccordionCollapseBead"/>
+ <component id="DispatchInputFinishedBead" class="org.apache.flex.html.beads.DispatchInputFinishedBead"/>
+ <component id="DispatchKeyboardEventBead" class="org.apache.flex.html.beads.DispatchKeyboardEventBead"/>
<component id="TreeItemRenderer" class="org.apache.flex.html.supportClasses.TreeItemRenderer"/>
<component id="DataItemRenderer" class="org.apache.flex.html.supportClasses.DataItemRenderer"/>
- <component id="ButtonBarButtonItemRenderer" class="org.apache.flex.html.supportClasses.ButtonBarButtonItemRenderer"/>
+ <component id="MXMLItemRenderer" class="org.apache.flex.html.supportClasses.MXMLItemRenderer"/>
- <component id="ButtonBarButtonItemRenderer" class="org.apache.flex.html.supportClasses.ButtonBarButtonItemRenderer"/>
+ <component id="DateItemRenderer" class="org.apache.flex.html.supportClasses.DateItemRenderer"/>
+ <component id="DayNameItemRenderer" class="org.apache.flex.html.supportClasses.DayNameItemRenderer"/>
++ <component id="TextButtonItemRenderer" class="org.apache.flex.html.supportClasses.TextButtonItemRenderer"/>
<!--
<component id="TextFieldItemRenderer" class="org.apache.flex.html.supportClasses.TextFieldItemRenderer"/>
- <component id="HScrollBar" class="org.apache.flex.html.supportClasses.HScrollBar"/>
- <component id="VScrollBar" class="org.apache.flex.html.supportClasses.VScrollBar"/>
+ <component id="HScrollBar" class="org.apache.flex.html.supportClasses.HScrollBar"/>
+ <component id="VScrollBar" class="org.apache.flex.html.supportClasses.VScrollBar"/>
<component id="HRuleView" class="org.apache.flex.html.beads.HRuleView" />
<component id="VRuleView" class="org.apache.flex.html.beads.VRuleView" />
-->
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/resources/defaults.css
index 9ecea43,5ce20fb..02a5bdb
--- a/frameworks/projects/Basic/src/main/resources/defaults.css
+++ b/frameworks/projects/Basic/src/main/resources/defaults.css
@@@ -23,60 -23,26 +23,37 @@@
/* Global style declaration */
*
{
-- font-family: "Arial";
-- font-size: 12px;
++ font-family: "Arial";
++ font-size: 12px;
border-width: 1px;
}
.flexjs *, . flexjs *:before, . flexjs *:after {
-- -moz-box-sizing: border-box;
-- -webkit-box-sizing: border-box;
-- box-sizing: border-box;
++ -moz-box-sizing: border-box;
++ -webkit-box-sizing: border-box;
++ box-sizing: border-box;
}
- Accordion
- {
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
- IBeadView: ClassReference("org.apache.flex.html.beads.AccordionView");
- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.OneFlexibleChildVerticalLayout");
- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.AccordionItemRenderer");
- IViewport: ClassReference("org.apache.flex.html.supportClasses.ClippingViewport");
- IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
- IAccordionCollapseBead: ClassReference("org.apache.flex.html.beads.AccordionCollapseBead");
- border-style: solid;
- border-color: #222222;
- }
-
- AccordionItemRenderer
+ .unselectable
{
- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AccordionItemRendererMouseController");
- IBeadView: ClassReference("org.apache.flex.html.beads.AccordionItemRendererView");
- -moz-user-select: -moz-none;
- -khtml-user-select: none;
- -webkit-user-select: none;
- -o-user-select: none;
- user-select: none;
++ -moz-user-select: -moz-none;
++ -khtml-user-select: none;
++ -webkit-user-select: none;
++ -o-user-select: none;
++ user-select: none;
}
+Alert
+{
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.AlertModel");
-
- background-color: #FFFFFF;
- border-style: solid;
- border-color: #000000;
- border-width: 1px;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.AlertModel");
++
++ background-color: #FFFFFF;
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
+}
+
+
- .unselectable
- {
- -moz-user-select: -moz-none;
- -khtml-user-select: none;
- -webkit-user-select: none;
- -o-user-select: none;
- user-select: none;
- }
-
Application
{
padding: 0px;
@@@ -85,118 -51,77 +62,113 @@@
Button
{
-- background-color: #f8f8f8;
-- border: 1px solid #808080;
-- border-radius: 2px;
-- padding: 4px;
-- margin: 0px;
++ background-color: #f8f8f8;
++ border: 1px solid #808080;
++ border-radius: 2px;
++ padding: 4px;
++ margin: 0px;
}
Button:hover
{
-- background-color: #e8e8e8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #e8e8e8;
++ border: 1px solid #808080;
++ padding: 4px;
}
Button:active
{
-- background-color: #d8d8d8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #d8d8d8;
++ border: 1px solid #808080;
++ padding: 4px;
}
ButtonBar
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.ButtonBarView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.ButtonBarLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
-- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
-- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.ButtonBarButtonItemRenderer");
-
- border-style: none;
- }
-
- ButtonBarButtonItemRenderer
- {
- width: 80;
- height: 30;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ButtonBarModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ButtonBarView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.ButtonBarLayout");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
++ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.TextButtonItemRenderer");
++
++ border-style: none;
+}
- border-style: none;
+ComboBox
+{
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ComboBoxModel");
- IBeadView: ClassReference("org.apache.flex.html.beads.ComboBoxView");
- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ComboBoxController");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ComboBoxModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ComboBoxView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ComboBoxController");
+ IPopUp: ClassReference("org.apache.flex.html.supportClasses.ComboBoxList");
}
-ButtonBarButtonItemRenderer
+ComboBoxList
{
- width: 80;
- height: 30;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
+ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
+ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
++ IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
++ IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
+ border-style: solid;
+ border-radius: 4px;
+ border-color: #000000;
+ border-width: 1px;
+ background-color: #FFFFFF;
+}
+
+.ComboBoxButton {
+ padding: 0px;
+ margin: 0px;
}
Container
{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
}
ControlBar
{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.FlexibleFirstChildHorizontalLayout");
++ IBeadView: ClassReference("org.apache.flex.html.beads.GroupView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalFlexLayout");
-- background-color: #CECECE;
-- border-style: none;
-- /*border-style: solid;
-- border-color: #000000;
-- border-width: 1px;*/
++ padding: 2px;
++ background-color: #E2E2E2;
++ border-top: solid 1px #333333;
++ height: 30px;
+}
+
+DataContainer
+{
+ IBeadModel: ClassReference("org.apache.flex.html.beads.models.DataProviderModel");
+ IBeadView: ClassReference("org.apache.flex.html.beads.DataContainerView");
+ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
+ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
+ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
+ IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
+ IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
+ border-style: solid;
+ border-color: #222222;
}
-
/* ASJS */
DataGrid
{
-- IDataGridPresentationModel: ClassReference("org.apache.flex.html.beads.models.DataGridPresentationModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.DataGridView");
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.DataGridModel");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.DataGridLayout");
--
-- background-color: #FFFFFF;
++ IDataGridPresentationModel: ClassReference("org.apache.flex.html.beads.models.DataGridPresentationModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.DataGridView");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.DataGridModel");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
++
++ background-color: #FFFFFF;
border-style: solid;
border-color: #222222;
border-width: 1px;
@@@ -204,14 -129,14 +176,13 @@@
DataGridButtonBar
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ButtonBarModel");
IBeadView: ClassReference("org.apache.flex.html.beads.ButtonBarView");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.ButtonBarLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DataGridButtonBarButtonItemRenderer");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.TextButtonItemRenderer");
border-style: none;
}
@@@ -221,7 -146,7 +192,6 @@@ DataGridColumnList
IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayList");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
@@@ -233,61 -158,25 +203,72 @@@
.DataGridListArea {
background-color: #FFFFFF;
-- border-style: solid;
-- border-color: #333333;
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
++ IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
++ IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
}
+/* DateChooser */
+
DateChooser {
-- IBeadView: ClassReference("org.apache.flex.html.beads.DateChooserView");
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateChooserMouseController");
-- width: 280px;
- height: 230px;
- height: 240px;
++ IBeadView: ClassReference("org.apache.flex.html.beads.DateChooserView");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateChooserMouseController");
++ width: 280px;
++ height: 240px;
+}
+
+DateChooserList {
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
+ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DataItemRenderer");
- border-style: solid;
- border-radius: 4px;
- border-color: #000000;
- border-width: 1px;
- background-color: #FFFFFF;
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DateItemRenderer");
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ background-color: #FFFFFF;
++}
++
++DateChooserHeader {
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DayNameItemRenderer");
++ height: 20px;
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ background-color: #FFFFFF;
+}
+
- DateChooserHeader {
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DayNameItemRenderer");
- border-style: solid;
- border-color: #000000;
- border-width: 1px;
- background-color: #FFFFFF;
++.DateChooserMonthButtons {
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalFlexLayout");
++ height: 20px;
+}
+
+DateItemRenderer
+{
- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
- text-align: center;
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
++ text-align: center;
++ flex-shrink: 0;
++ flex-grow: 1;
+}
+
+DayNameItemRenderer
+{
- text-align: center;
++ text-align: center;
++ flex-shrink: 0;
++ flex-grow: 1;
}
-
+
+/* DateField */
+
DateField {
-- IBeadView: ClassReference("org.apache.flex.html.beads.DateFieldView");
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateFieldMouseController");
- IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatMMDDYYYYBead");
- IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatYYYYMMDDBead");
++ IBeadView: ClassReference("org.apache.flex.html.beads.DateFieldView");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateFieldMouseController");
++ IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatYYYYMMDDBead");
}
+/* RangeStepper */
+
RangeStepper {
IBeadView: ClassReference("org.apache.flex.html.beads.RangeStepperView");
IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModelExtended");
@@@ -295,13 -184,13 +276,18 @@@
}
Form {
--
++
++}
++
++Group {
++ IBeadView: ClassReference("org.apache.flex.html.beads.GroupView");
}
HContainer
{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
++ white-space: nowrap;
}
Image
@@@ -311,63 -200,55 +297,78 @@@
IBeadView: ClassReference("org.apache.flex.html.beads.ImageView");
}
++BinaryImage
++{
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.BinaryImageModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ImageView");
++ IBinaryImageLoader: ClassReference("org.apache.flex.html.beads.BinaryImageLoader");
++}
++
ImageAndTextButton
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ImageAndTextModel");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ImageAndTextModel");
}
ImageButton
{
-- border-style: none;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ImageModel");
++ border-style: none;
}
ImageButton:hover
{
-- border-style: none;
++ border-style: none;
}
ImageButton:active
{
-- border-style: none;
- }
-
- BinaryImage
- {
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.BinaryImageModel");
- IBeadView: ClassReference("org.apache.flex.html.beads.ImageView");
- IBinaryImageLoader: ClassReference("org.apache.flex.html.beads.BinaryImageLoader");
++ border-style: none;
}
VContainer
{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
}
List
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
-- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
-- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
-- IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
++ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
++ IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
border-style: solid;
border-color: #222222;
+ background-color: #FFFFFF;
}
-Tree
++Accordion
+ {
+ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.AccordionView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.OneFlexibleChildVerticalLayout");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
++ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.AccordionItemRenderer");
++ IViewport: ClassReference("org.apache.flex.html.supportClasses.ClippingViewport");
++ IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
++ IAccordionCollapseBead: ClassReference("org.apache.flex.html.beads.AccordionCollapseBead");
++ border-style: solid;
++ border-color: #222222;
++}
++
+Tree
+{
+ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArrayListSelectionModel");
IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.TreeSingleSelectionMouseController");
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForHierarchicalData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.TreeItemRenderer");
@@@ -379,141 -260,139 +380,163 @@@
NumericStepper
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
}
Panel
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.PanelModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.PanelView");
--
-- background-color: #FFFFFF;
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
-- padding: 2px;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.PanelModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.PanelView");
++ IPanelLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
++
++ background-color: #FFFFFF;
++ border: solid 1px #333333
}
PanelWithControlBar
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.PanelModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.PanelWithControlBarView");
--
-- background-color: #FFFFFF;
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
-- padding: 2px;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.PanelModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.PanelWithControlBarView");
++ IPanelLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
++
++ background-color: #FFFFFF;
++ border: solid 1px #333333;
++}
++
++Panel .TitleBar
++{
++ border-bottom: solid 1px #333333;
}
SimpleList
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
-- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
-- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.ListView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
++ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
}
Slider
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
- iBeadView: ClassReference("org.apache.flex.html.beads.SliderView");
- iBeadController: ClassReference("org.apache.flex.html.beads.controllers.SliderMouseController");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
++ iBeadView: ClassReference("org.apache.flex.html.beads.SliderView");
++ iBeadController: ClassReference("org.apache.flex.html.beads.controllers.SliderMouseController");
}
Spinner
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.SpinnerView");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.RangeModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.SpinnerView");
}
StringItemRenderer
{
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
-- height: 16;
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
++ height: 24;
++ flex-shrink: 0;
++ flex-grow: 1;
++}
++
++AccordionItemRenderer
++{
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AccordionItemRendererMouseController");
++ IBeadView: ClassReference("org.apache.flex.html.beads.AccordionItemRendererView");
++ flex-shrink: 0;
++ flex-grow: 1;
}
TreeItemRenderer
{
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
-- height: 16;
++ height: 24;
++ flex-shrink: 0;
++ flex-grow: 1;
}
TextInput
{
-- border: 1px solid #808080;
-- border-radius: 2px;
-- padding: 4px;
-- margin: 0px;
++ border: 1px solid #808080;
++ border-radius: 2px;
++ padding: 4px;
++ margin: 0px;
}
TextArea
{
-- border: 1px solid #808080;
-- border-radius: 2px;
-- padding: 4px;
-- resize: none;
++ border: 1px solid #808080;
++ border-radius: 2px;
++ padding: 4px;
++ resize: none;
}
TitleBar
{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TitleBarModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.TitleBarView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.FlexibleFirstChildHorizontalLayout");
-- iMeasurementBead: ClassReference("org.apache.flex.html.beads.TitleBarMeasurementBead");
-- background-color: #E2E2E2;
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TitleBarModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.TitleBarView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.FlexibleFirstChildHorizontalLayout");
++ iMeasurementBead: ClassReference("org.apache.flex.html.beads.TitleBarMeasurementBead");
++ background-color: #E2E2E2;
++ padding: 2px;
++ height: 30px;
++ flex-grow: 0;
++ min-height: 30px;
++}
++
++TitleBar .TitleBarCloseButton {
++ width: 16px;
++ height: 16px;
++ margin: 0px;
++}
++
++TitleBar .TitleBarTitle {
++ font-weight: bold;
++ padding: 0;
++ margin: 0;
}
.toggleTextButton
{
-- background-color: #f8f8f8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #f8f8f8;
++ border: 1px solid #808080;
++ padding: 4px;
}
.toggleTextButton:hover
{
-- background-color: #e8e8e8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #e8e8e8;
++ border: 1px solid #808080;
++ padding: 4px;
}
.toggleTextButton_Selected
{
-- background-color: #d8d8d8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #d8d8d8;
++ border: 1px solid #808080;
++ padding: 4px;
}
.toggleTextButton_Selected:hover
{
-- background-color: #e8e8e8;
-- border: 1px solid #808080;
-- padding: 4px;
++ background-color: #e8e8e8;
++ border: 1px solid #808080;
++ padding: 4px;
}
ToolTip
{
-- background-color: #FFFFCC;
++ background-color: #FFFFCC;
}
View
{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
-- IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
-- IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
-- IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.GroupView");
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
}
WebBrowser
@@@ -526,280 -405,277 +549,324 @@@
/* Global Style Declaration */
global
{
-- IStatesImpl: ClassReference("org.apache.flex.core.SimpleStatesImpl");
-- IEffectTimer: ClassReference("org.apache.flex.utils.EffectTimer");
-- effectTimerInterval: 10;
++ IStatesImpl: ClassReference("org.apache.flex.core.SimpleStatesImpl");
++ IEffectTimer: ClassReference("org.apache.flex.utils.EffectTimer");
++ effectTimerInterval: 10;
}
@media -flex-flash
{
--
--Alert
--{
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.AlertModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.AlertView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AlertController");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
--
- background-color: #FFFFFF;
- border-style: solid;
- border-color: #000000;
- border-width: 1px;
--}
--
--Border
--{
-- border-color: inherit;
-- border-style: inherit;
-- border-radius: inherit;
-- border-width: inherit;
-- border: inherit;
--}
--
--Button
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.CSSButtonView");
--}
--
--CheckBox
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ToggleButtonModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.CheckBoxView");
--}
--
--CloseButton
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.CloseButtonView");
--}
--
- ComboBoxList {
- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-ComboBox
-{
- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ComboBoxModel");
- IBeadView: ClassReference("org.apache.flex.html.beads.ComboBoxView");
- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ComboBoxController");
- IPopUp: ClassReference("org.apache.flex.html.supportClasses.DropDownListList");
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
--}
--
--Container
--{
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
--}
--
--ControlBar
--{
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.FlexibleFirstChildHorizontalLayout");
-- iMeasurementBead: ClassReference("org.apache.flex.html.beads.ControlBarMeasurementBead");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
- }
-
- DateChooserList {
- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
- }
-
- DateChooserHeader {
- padding-top: 0px;
- padding-bottom: 5px;
- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
- }
-
- DateItemRenderer {
- margin: 0px;
- padding: 5px;
--}
--
--DropDownList
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.DropDownListView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DropDownListController");
-- IPopUp: ClassReference("org.apache.flex.html.supportClasses.DropDownListList");
--}
--
--DropDownListList
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
-- IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
-- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-- border-style: solid;
-- border-radius: 4px;
-- border-color: #000000;
-- border-width: 1px;
-- background-color: #FFFFFF;
--}
--
--HRule
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.HRuleView");
--}
--
--ImageButton
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.ImageButtonView");
--}
--
--ImageAndTextButton
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.CSSImageAndTextButtonView");
--}
--
--Label
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.TextFieldView");
-- iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextFieldLabelMeasurementBead");
--}
--
--List
--{
-- iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-- iBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
--}
--
--MultilineLabel
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.MultilineTextFieldView");
--}
--
--NumericStepper
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.NumericStepperView");
--
-- padding: 0px;
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
-- background-color: #FFFFFF;
-- iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
--}
--
--Panel
--{
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
--}
--
--PanelWithControlBar
--{
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
--}
--
--RadioButton
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ValueToggleButtonModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.RadioButtonView");
--}
--
--VScrollBar
--{
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VScrollBarLayout");
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ScrollBarModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.VScrollBarView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.VScrollBarMouseController");
--}
--
--HScrollBar
--{
-- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HScrollBarLayout");
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ScrollBarModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.HScrollBarView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.HScrollBarMouseController");
--}
--
--SimpleAlert
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.AlertModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.SimpleAlertView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AlertController");
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
--
-- background-color: #FFFFFF;
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
--}
--
--Slider
--{
- iBeadView: ClassReference("org.apache.flex.html.beads.SliderView");
- iBeadController: ClassReference("org.apache.flex.html.beads.controllers.SliderMouseController");
-- iThumbView: ClassReference("org.apache.flex.html.beads.SliderThumbView");
-- iTrackView: ClassReference("org.apache.flex.html.beads.SliderTrackView");
--}
--
--Spinner
--{
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.SpinnerMouseController");
--}
--
--TextArea
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.TextAreaView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.EditableTextKeyboardController");
-- iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-- iBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
-- background-color: #FFFFFF;
--}
--
--TextButton
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextButtonView");
-- iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextButtonMeasurementBead");
--}
--
--TextFieldItemRenderer
--{
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
-- height: 16;
--}
--
--TextInput
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.TextInputWithBorderView");
-- IBeadController: ClassReference("org.apache.flex.html.beads.controllers.EditableTextKeyboardController");
-- iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-- iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-- border-style: solid;
-- border-color: #000000;
-- border-width: 1px;
-- background-color: #FFFFFF;
--}
--
--TitleBar
--{
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
--}
--
--ToggleTextButton
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.ToggleButtonModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextToggleButtonView");
--}
--
--View
--{
-- iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
-- iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
--}
--
--VRule
--{
-- IBeadView: ClassReference("org.apache.flex.html.beads.VRuleView");
--}
--
--/* SVG */
--
--svg|TextButton
--{
-- IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
-- IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextButtonView");
-- iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextButtonMeasurementBead");
--}
++ Accordion {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ Alert
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.AlertView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AlertController");
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ }
++
++ Border
++ {
++ border-color: inherit;
++ border-style: inherit;
++ border-radius: inherit;
++ border-width: inherit;
++ border: inherit;
++ }
++
++ Button
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.CSSButtonView");
++ }
++
++ ButtonBar
++ {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ CheckBox
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ToggleButtonModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.CheckBoxView");
++ }
++
++ CSSCheckBox
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ToggleButtonModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.CheckBoxView");
++ }
++
++ CloseButton
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.CloseButtonView");
++ }
++
++ Container
++ {
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
++ }
++
++ ControlBar
++ {
++ IMeasurementBead: ClassReference("org.apache.flex.html.beads.ControlBarMeasurementBead");
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ border: solid 1px #333333;
++ }
++
++ ComboBoxList {
++ IBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
++ }
++
++ DataContainer {
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ DataGridButtonBar {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ DateChooserList {
++ iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
++ iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ }
++
++ DateChooserHeader {
++ padding-top: 0px;
++ padding-bottom: 5px;
++ iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
++ iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ }
++
++ DateItemRenderer {
++ margin: 0px;
++ padding: 5px;
++ }
++
++ DropDownList
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.DropDownListView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DropDownListController");
++ IPopUp: ClassReference("org.apache.flex.html.supportClasses.DropDownListList");
++ }
++
++ DropDownListList
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
++ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
++ IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
++ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
++ iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
++ iBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
++ border-style: solid;
++ border-radius: 4px;
++ border-color: #333333;
++ border-width: 1px;
++ background-color: #FFFFFF;
++ }
++
++ Group
++ {
++ iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ iBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
++ }
++
++ HRule
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.HRuleView");
++ }
++
++ ImageButton
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.ImageButtonView");
++ }
++
++ ImageAndTextButton
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.CSSImageAndTextButtonView");
++ }
++
++ Label
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.TextFieldView");
++ iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextFieldLabelMeasurementBead");
++ }
++
++ List
++ {
++ iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
++ iBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ MultilineLabel
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.MultilineTextFieldView");
++ }
++
++ NumericStepper
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.NumericStepperView");
++
++ padding: 0px;
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ background-color: #FFFFFF;
++ iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
++ iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
++ }
++
++ Panel
++ {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ }
++
++ PanelWithControlBar
++ {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ }
++
++ RadioButton
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ValueToggleButtonModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.RadioButtonView");
++ }
++
++ VScrollBar
++ {
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VScrollBarLayout");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ScrollBarModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.VScrollBarView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.VScrollBarMouseController");
++ }
++
++ HScrollBar
++ {
++ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HScrollBarLayout");
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ScrollBarModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.HScrollBarView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.HScrollBarMouseController");
++ }
++
++ SimpleAlert
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.AlertModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.SimpleAlertView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.AlertController");
++ iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++
++ background-color: #FFFFFF;
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ }
++
++ Slider
++ {
++ iThumbView: ClassReference("org.apache.flex.html.beads.SliderThumbView");
++ iTrackView: ClassReference("org.apache.flex.html.beads.SliderTrackView");
++ }
++
++ Spinner
++ {
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.SpinnerMouseController");
++ }
++
++ TextArea
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.TextAreaView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.EditableTextKeyboardController");
++ IBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
++ IBorderModel: ClassReference('org.apache.flex.html.beads.models.SingleLineBorderModel');
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ background-color: #FFFFFF;
++ }
++
++ TextButton
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextButtonView");
++ iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextButtonMeasurementBead");
++ }
++
++ Tree {
++ IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
++ }
++
++ /*
++ TextFieldItemRenderer
++ {
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
++ height: 16;
++ }
++ */
++
++ TextInput
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.TextInputWithBorderView");
++ IBeadController: ClassReference("org.apache.flex.html.beads.controllers.EditableTextKeyboardController");
++ IBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
++ IBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
++ border-style: solid;
++ border-color: #000000;
++ border-width: 1px;
++ background-color: #FFFFFF;
++ }
++
++ TitleBar
++ {
++ IBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ IBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ border: solid 1px #333333;
++ }
++
++ ToggleTextButton
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.ToggleButtonModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextToggleButtonView");
++ }
++
++ View
++ {
++ iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
++ iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
++ }
++
++ VRule
++ {
++ IBeadView: ClassReference("org.apache.flex.html.beads.VRuleView");
++ }
++
++ /* SVG */
++
++ svg|TextButton
++ {
++ IBeadModel: ClassReference("org.apache.flex.html.beads.models.TextModel");
++ IBeadView: ClassReference("org.apache.flex.html.beads.CSSTextButtonView");
++ iMeasurementBead: ClassReference("org.apache.flex.html.beads.TextButtonMeasurementBead");
++ }
}
[30/43] git commit: [flex-asjs] [refs/heads/dual] - replace existing
format bead if it exists
Posted by ah...@apache.org.
replace existing format bead if it exists
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4842fa7a
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4842fa7a
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4842fa7a
Branch: refs/heads/dual
Commit: 4842fa7a15a756026dcfa1ca4262039fded2db59
Parents: 23f3c5a
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 14:22:32 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 14:22:32 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/html/DateField.as | 22 ++++++++++++++++++++
.../main/flex/org/apache/flex/html/DateField.as | 22 ++++++++++++++++++++
2 files changed, 44 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4842fa7a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
index f46e453..ca142ba 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
@@ -20,6 +20,7 @@ package org.apache.flex.html
{
import org.apache.flex.core.IBead;
import org.apache.flex.core.IDateChooserModel;
+ import org.apache.flex.core.IFormatBead;
import org.apache.flex.core.UIBase;
import org.apache.flex.core.ValuesManager;
@@ -74,6 +75,27 @@ package org.apache.flex.html
super.addedToParent();
}
+
+ /**
+ * Replace existing format bead if it exists.
+ *
+ * @copy org.apache.flex.core.IStrand#addBead()
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ override public function addBead(bead:IBead):void
+ {
+ if (bead is IFormatBead) {
+ var formatBead:IBead = getBeadByType(IFormatBead);
+ if (formatBead != null) {
+ removeBead(formatBead);
+ }
+ }
+ super.addBead(bead);
+ }
/**
* The currently selected date (or null if no date has been selected).
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4842fa7a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as
index f33db9d..5b73db0 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as
@@ -20,6 +20,7 @@ package org.apache.flex.html
{
import org.apache.flex.core.IBead;
import org.apache.flex.core.IDateChooserModel;
+ import org.apache.flex.core.IFormatBead;
import org.apache.flex.core.UIBase;
import org.apache.flex.core.ValuesManager;
@@ -75,6 +76,27 @@ package org.apache.flex.html
super.addedToParent();
}
+
+ /**
+ * Replace existing format bead if it exists.
+ *
+ * @copy org.apache.flex.core.IStrand#addBead()
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ override public function addBead(bead:IBead):void
+ {
+ if (bead is IFormatBead) {
+ var formatBead:IBead = getBeadByType(IFormatBead);
+ if (formatBead != null) {
+ removeBead(formatBead);
+ }
+ }
+ super.addBead(bead);
+ }
/**
* The currently selected date (or null if no date has been selected).
[21/43] flex-asjs git commit: doesn’t seem to work as JS only as get errors in compiling AS project
Posted by ah...@apache.org.
doesn\u2019t seem to work as JS only as get errors in compiling AS project
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/65320f94
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/65320f94
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/65320f94
Branch: refs/heads/dual
Commit: 65320f9470652c5ffe1ae71cc6c5524408642c52
Parents: 25d67e1
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 15:35:19 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 15:35:19 2017 +1000
----------------------------------------------------------------------
frameworks/projects/Network/src/main/flex/NetworkClasses.as | 6 +-----
.../projects/Network/src/main/resources/basic-manifest.xml | 1 +
2 files changed, 2 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/65320f94/frameworks/projects/Network/src/main/flex/NetworkClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/NetworkClasses.as b/frameworks/projects/Network/src/main/flex/NetworkClasses.as
index e4cd570..ed88471 100644
--- a/frameworks/projects/Network/src/main/flex/NetworkClasses.as
+++ b/frameworks/projects/Network/src/main/flex/NetworkClasses.as
@@ -28,11 +28,7 @@ package
internal class NetworkClasses
{
import org.apache.flex.net.URLBinaryLoader; URLBinaryLoader;
- import org.apache.flex.net.HTTPConstants; HTTPConstants;
-
- COMPILE::JS {
- import org.apache.flex.net.beads.CORSCredentialsBead; CORSCredentialsBead;
- }
+ import org.apache.flex.net.HTTPConstants; HTTPConstants;
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/65320f94/frameworks/projects/Network/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/resources/basic-manifest.xml b/frameworks/projects/Network/src/main/resources/basic-manifest.xml
index 235b09d..46f2ad9 100644
--- a/frameworks/projects/Network/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Network/src/main/resources/basic-manifest.xml
@@ -23,5 +23,6 @@
<component id="HTTPService" class="org.apache.flex.net.HTTPService"/>
<component id="BinaryUploader" class="org.apache.flex.net.BinaryUploader"/>
+ <component id="CORSCredentialsBead" class="org.apache.flex.net.beads.CORSCredentialsBead"/>
</componentPackage>
[32/43] git commit: [flex-asjs] [refs/heads/dual] - two common date
formats
Posted by ah...@apache.org.
two common date formats
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/e8be4fc7
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/e8be4fc7
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/e8be4fc7
Branch: refs/heads/dual
Commit: e8be4fc760cc5ed2a58f0f0cafd2de2f950e0aac
Parents: edd2783
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 14:24:35 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 14:24:35 2017 +1000
----------------------------------------------------------------------
.../html/accessories/DateFormatDDMMYYYYBead.as | 46 ++++++++++++++++++++
.../html/accessories/DateFormatYYYYMMDDBead.as | 46 ++++++++++++++++++++
2 files changed, 92 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e8be4fc7/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
new file mode 100644
index 0000000..3af9332
--- /dev/null
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
@@ -0,0 +1,46 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.accessories
+{
+ import org.apache.flex.html.accessories.SimpleDateFormatBead;
+
+ /**
+ * The DateFormatBead class formats the display of a DateField using MM/DD/YYYY format.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public class DateFormatDDMMYYYYBead extends SimpleDateFormatBead
+ {
+ /**
+ * constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function DateFormatDDMMYYYYBead()
+ {
+ format = "DD/MM/YYYY";
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e8be4fc7/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
new file mode 100644
index 0000000..ac0fe28
--- /dev/null
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
@@ -0,0 +1,46 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.accessories
+{
+ import org.apache.flex.html.accessories.SimpleDateFormatBead;
+
+ /**
+ * The DateFormatBead class formats the display of a DateField using MM/DD/YYYY format.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public class DateFormatYYYYMMDDBead extends SimpleDateFormatBead
+ {
+ /**
+ * constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function DateFormatYYYYMMDDBead()
+ {
+ format = "YYYY-MM-DD";
+ }
+ }
+}
[05/43] git commit: [flex-asjs] [refs/heads/dual] - Merge branch
'feature/mobile' into feature/layouts
Posted by ah...@apache.org.
Merge branch 'feature/mobile' into feature/layouts
* feature/mobile:
Initial changes for Mobile project.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/6256851b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/6256851b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/6256851b
Branch: refs/heads/dual
Commit: 6256851b9522427ec35f78ffb110dab53faf168b
Parents: d89a010 e0b3528
Author: Peter Ent <pe...@apache.org>
Authored: Thu Apr 13 14:31:01 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Apr 13 14:31:01 2017 -0400
----------------------------------------------------------------------
.../ButtonBarButtonItemRenderer.as | 34 +++-
.../Mobile/src/main/flex/MobileClasses.as | 1 +
.../apache/flex/mobile/ManagedContentArea.as | 55 ++++++
.../apache/flex/mobile/StackedViewManager.as | 51 ++++--
.../org/apache/flex/mobile/TabbedViewManager.as | 42 +++++
.../flex/org/apache/flex/mobile/TitleView.as | 4 -
.../org/apache/flex/mobile/ViewManagerBase.as | 52 ++----
.../flex/mobile/beads/StackedViewManagerView.as | 175 +++++++++++++------
.../flex/mobile/beads/TabbedViewManagerView.as | 175 +++++++++++++------
.../flex/mobile/beads/ViewManagerViewBase.as | 123 ++++++-------
.../src/main/resources/basic-manifest.xml | 1 +
.../Mobile/src/main/resources/defaults.css | 21 +++
12 files changed, 511 insertions(+), 223 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/6256851b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
----------------------------------------------------------------------
[42/43] git commit: [flex-asjs] [refs/heads/dual] - fix after merge
Posted by ah...@apache.org.
fix after merge
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4941e12c
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4941e12c
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4941e12c
Branch: refs/heads/dual
Commit: 4941e12cdb7c7ce5c8c92b8d983734393ffa4354
Parents: 1691921
Author: Alex Harui <ah...@apache.org>
Authored: Fri Apr 21 09:31:12 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Apr 21 09:31:12 2017 -0700
----------------------------------------------------------------------
.../Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4941e12c/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as
index 9643b58..0935c2c 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIButtonBase.as
@@ -746,7 +746,7 @@ package org.apache.flex.core
_model = bead as IBeadModel;
else if (bead is IBeadView)
_view = bead as IBeadView;
- //bead.strand = this; // super.addBead already did this!
+ bead.strand = this; // super.addBead already did this!
}
/**
[36/43] git commit: [flex-asjs] [refs/heads/dual] -
ButtonBar/DataGrid clean up. Removed DataGridButtonBarButtonItemRenderer and
ButtonBarButtonItemRenderer classes and replaced them with
TextButtonItemRenderer which is a TextButton that implements IItem
Posted by ah...@apache.org.
ButtonBar/DataGrid clean up. Removed DataGridButtonBarButtonItemRenderer and ButtonBarButtonItemRenderer classes and replaced them with TextButtonItemRenderer which is a TextButton that implements IItemRenderer. HTML ButtonBars now are much cleaner.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8a23e1e9
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8a23e1e9
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8a23e1e9
Branch: refs/heads/dual
Commit: 8a23e1e9f80a46a64256437d54e2032abbb3c699
Parents: 975b478
Author: Peter Ent <pe...@apache.org>
Authored: Mon Apr 17 17:11:10 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Mon Apr 17 17:11:10 2017 -0400
----------------------------------------------------------------------
.../projects/HTML/src/main/flex/HTMLClasses.as | 2 +-
.../flex/html/beads/layouts/ButtonBarLayout.as | 66 ++---
.../ButtonBarButtonItemRenderer.as | 197 ---------------
.../DataGridButtonBarButtonItemRenderer.as | 91 -------
.../supportClasses/TextButtonItemRenderer.as | 244 +++++++++++++++++++
.../HTML/src/main/resources/basic-manifest.xml | 2 +-
.../HTML/src/main/resources/defaults.css | 12 +-
7 files changed, 267 insertions(+), 347 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/flex/HTMLClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/HTMLClasses.as b/frameworks/projects/HTML/src/main/flex/HTMLClasses.as
index 0e7e052..1b7441d 100644
--- a/frameworks/projects/HTML/src/main/flex/HTMLClasses.as
+++ b/frameworks/projects/HTML/src/main/flex/HTMLClasses.as
@@ -161,7 +161,7 @@ internal class HTMLClasses
import org.apache.flex.html.supportClasses.DataGroup; DataGroup;
import org.apache.flex.html.supportClasses.Viewport; Viewport;
import org.apache.flex.html.supportClasses.ScrollingViewport; ScrollingViewport;
- import org.apache.flex.html.supportClasses.DataGridButtonBarButtonItemRenderer; DataGridButtonBarButtonItemRenderer;
+ import org.apache.flex.html.supportClasses.TextButtonItemRenderer; TextButtonItemRenderer;
import org.apache.flex.html.DataGridButtonBarTextButton; DataGridButtonBarTextButton;
import org.apache.flex.html.DataGridButtonBar; DataGridButtonBar;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
index f4b0e81..51d0c4c 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
@@ -19,31 +19,15 @@
package org.apache.flex.html.beads.layouts
{
import org.apache.flex.core.IBeadLayout;
- import org.apache.flex.core.ILayoutHost;
- import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.ILayoutChild;
import org.apache.flex.core.ILayoutView;
- import org.apache.flex.core.IParentIUIBase;
- import org.apache.flex.core.ISelectableItemRenderer;
- import org.apache.flex.core.ISelectionModel;
+ import org.apache.flex.core.IStyleableObject;
import org.apache.flex.core.IStrand;
- import org.apache.flex.core.IUIBase;
- import org.apache.flex.core.IViewportModel;
- import org.apache.flex.core.LayoutBase;
- import org.apache.flex.core.SimpleCSSStyles;
- import org.apache.flex.core.UIBase;
- import org.apache.flex.core.ValuesManager;
- import org.apache.flex.events.Event;
- import org.apache.flex.events.IEventDispatcher;
- import org.apache.flex.html.List;
- import org.apache.flex.html.beads.ButtonBarView;
import org.apache.flex.html.beads.models.ButtonBarModel;
import org.apache.flex.html.supportClasses.UIItemRendererBase;
- import org.apache.flex.geom.Rectangle;
- import org.apache.flex.utils.CSSUtils;
- import org.apache.flex.utils.CSSContainerUtils;
/**
- * The ButtonBarLayout class bead sizes and positions the org.apache.flex.html.Button
+ * The ButtonBarLayout class bead sizes and positions the button
* elements that make up a org.apache.flex.html.ButtonBar. This bead arranges the Buttons
* horizontally and makes them all the same width unless the buttonWidths property has been set in which case
* the values stored in that array are used.
@@ -103,43 +87,33 @@ package org.apache.flex.html.beads.layouts
}
var n:int = contentView.numElements;
+ if (n <= 0) return false;
for (var i:int=0; i < n; i++)
- {
- var ir:ISelectableItemRenderer = contentView.getElementAt(i) as ISelectableItemRenderer;
- if (ir == null || !UIBase(ir).visible) continue;
+ {
+ var ilc:ILayoutChild = contentView.getElementAt(i) as ILayoutChild;
+ if (ilc == null || !ilc.visible) continue;
+ if (!(ilc is IStyleableObject)) continue;
COMPILE::SWF {
if (buttonWidths) {
var widthValue:* = buttonWidths[i];
if (_widthType == ButtonBarModel.PIXEL_WIDTHS) {
- if (widthValue != null) UIBase(ir).width = Number(widthValue);
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 0;
+ if (widthValue != null) ilc.width = Number(widthValue);
+ IStyleableObject(ilc).style.flexGrow = 0;
}
else if (_widthType == ButtonBarModel.PROPORTIONAL_WIDTHS) {
if (widthValue != null) {
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = Number(widthValue);
+ IStyleableObject(ilc).style.flexGrow = Number(widthValue);
}
}
else if (_widthType == ButtonBarModel.PERCENT_WIDTHS) {
- if (widthValue != null) UIBase(ir).percentWidth = Number(widthValue);
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 0;
+ if (widthValue != null) ilc.percentWidth = Number(widthValue);
+ IStyleableObject(ilc).style.flexGrow = 0;
}
} else {
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 1;
+ IStyleableObject(ilc).style.flexGrow = 1;
}
}
@@ -149,22 +123,20 @@ package org.apache.flex.html.beads.layouts
var widthValue:* = buttonWidths[i];
if (_widthType == ButtonBarModel.PIXEL_WIDTHS) {
- if (widthValue != null) UIBase(ir).width = Number(widthValue);
+ if (widthValue != null) ilc.width = Number(widthValue);
}
else if (_widthType == ButtonBarModel.PROPORTIONAL_WIDTHS) {
- if (widthValue != null) UIBase(ir).element.style["flex-grow"] = String(widthValue);
+ if (widthValue != null) ilc.element.style["flex-grow"] = String(widthValue);
}
else if (_widthType == ButtonBarModel.PERCENT_WIDTHS) {
- if (widthValue != null) UIBase(ir).percentWidth = Number(widthValue);
+ if (widthValue != null) ilc.percentWidth = Number(widthValue);
}
} else {
- UIBase(ir).element.style["flex-grow"] = "1";
+ ilc.element.style["flex-grow"] = "1";
}
- UIBase(ir).height = contentView.height;
+ ilc.height = contentView.height;
}
-
- UIItemRendererBase(ir).adjustSize();
}
// now let the horizontal layout take care of things.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
deleted file mode 100644
index d9301f6..0000000
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
+++ /dev/null
@@ -1,197 +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.supportClasses
-{
- import org.apache.flex.core.IItemRenderer;
- import org.apache.flex.core.IItemRendererParent;
- import org.apache.flex.core.UIBase;
- import org.apache.flex.events.Event;
- import org.apache.flex.events.MouseEvent;
- import org.apache.flex.html.TextButton;
- import org.apache.flex.html.beads.ITextItemRenderer;
- import org.apache.flex.events.ItemClickedEvent;
-
- COMPILE::JS
- {
- import org.apache.flex.core.WrappedHTMLElement;
- }
-
- /**
- * The ButtonBarButtonItemRenderer class handles the display of each item for the
- * org.apache.flex.html.ButtonBar component. This class uses a
- * org.apache.flex.html.Button to represent the data.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public class ButtonBarButtonItemRenderer extends UIItemRendererBase implements ITextItemRenderer
- {
- /**
- * constructor.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function ButtonBarButtonItemRenderer()
- {
- super();
- }
-
- /**
- * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
- * @flexjsignorecoercion HTMLElement
- */
- COMPILE::JS
- override protected function createElement():WrappedHTMLElement
- {
- var result:WrappedHTMLElement = super.createElement();
- trace("Element "+element+"; positioner "+positioner);
- return result;
- }
-
- protected var textButton:TextButton;
-
- /**
- * @private
- */
- override public function addedToParent():void
- {
- super.addedToParent();
- }
-
- /**
- * @private
- */
- protected function handleClickEvent(event:MouseEvent):void
- {
- var newEvent:ItemClickedEvent = new ItemClickedEvent("itemClicked");
- newEvent.multipleSelection = event.shiftKey;
- newEvent.index = index;
- newEvent.data = data;
- dispatchEvent(newEvent);
- }
-
- /**
- * The string version of the data associated with the instance of the itemRenderer.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function get text():String
- {
- return data as String;
- }
- public function set text(value:String):void
- {
- data = value;
- }
-
- /**
- * @private
- */
- override public function setWidth(value:Number, noEvent:Boolean = false):void
- {
- super.setWidth(value, true);
- textButton.width = value;
- COMPILE::SWF {
- textButton.height = height;
- }
- COMPILE::JS {
- textButton.percentHeight = 100;
- }
- }
-
- /**
- * @private
- */
- override public function setHeight(value:Number, noEvent:Boolean = false):void
- {
- super.setHeight(value, true);
- textButton.height = value;
- COMPILE::SWF {
- textButton.width = width;
- }
- COMPILE::JS {
- textButton.percentWidth = 100;
- }
- }
-
- /**
- * The data to be displayed by the itemRenderer instance. For ButtonBarItemRenderer, the
- * data's string version is used as the label for the Button.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- override public function set data(value:Object):void
- {
- super.data = value;
-
- var added:Boolean = false;
- if (textButton == null) {
- textButton = new TextButton();
-
- // listen for clicks on the button and translate them into
- // an itemClicked event.
- textButton.addEventListener('click',handleClickEvent);
- added = true;
- }
-
- var valueAsString:String;
-
- if (value is String) {
- valueAsString = value as String;
- }
- else if (value.hasOwnProperty("label")) {
- valueAsString = String(value["label"]);
- }
- else if (value.hasOwnProperty("title")) {
- valueAsString = String(value["title"]);
- }
-
- if (valueAsString) textButton.text = valueAsString;
-
- if (added) addElement(textButton);
- }
-
- /**
- * @private
- */
- override public function adjustSize():void
- {
- COMPILE::SWF {
- textButton.width = this.width;
- textButton.height = this.height;
- }
- COMPILE::JS {
- textButton.percentWidth = 100;
- }
-
- updateRenderer();
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/DataGridButtonBarButtonItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/DataGridButtonBarButtonItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/DataGridButtonBarButtonItemRenderer.as
deleted file mode 100644
index d05036f..0000000
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/DataGridButtonBarButtonItemRenderer.as
+++ /dev/null
@@ -1,91 +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.supportClasses
-{
- import org.apache.flex.core.IItemRenderer;
- import org.apache.flex.core.IItemRendererParent;
- import org.apache.flex.core.UIBase;
- import org.apache.flex.events.Event;
- import org.apache.flex.events.MouseEvent;
- import org.apache.flex.html.DataGridButtonBarTextButton;
- import org.apache.flex.html.beads.ITextItemRenderer;
- import org.apache.flex.events.ItemClickedEvent;
-
- /**
- * The ButtonBarButtonItemRenderer class handles the display of each item for the
- * org.apache.flex.html.ButtonBar component. This class uses a
- * org.apache.flex.html.Button to represent the data.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public class DataGridButtonBarButtonItemRenderer extends ButtonBarButtonItemRenderer
- {
- /**
- * constructor.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function DataGridButtonBarButtonItemRenderer()
- {
- super();
- }
-
- /**
- * The data to be displayed by the itemRenderer instance. For ButtonBarItemRenderer, the
- * data's string version is used as the label for the Button.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- override public function set data(value:Object):void
- {
- var added:Boolean = false;
- if (textButton == null) {
- textButton = new DataGridButtonBarTextButton();
- textButton.percentWidth = 100;
-
- // listen for clicks on the button and translate them into
- // an itemClicked event.
- textButton.addEventListener('click',handleClickEvent);
- added = true;
- }
-
- super.data = value;
-
- if (added) addElement(textButton);
- }
-
- /**
- * @private
- */
- COMPILE::JS
- override public function adjustSize():void
- {
- // not neeed for JS platform
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
new file mode 100644
index 0000000..049fe9b
--- /dev/null
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextButtonItemRenderer.as
@@ -0,0 +1,244 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.supportClasses
+{
+ import org.apache.flex.core.IItemRenderer;
+ import org.apache.flex.core.IItemRendererParent;
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.SimpleCSSStyles;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.MouseEvent;
+ import org.apache.flex.html.TextButton;
+ import org.apache.flex.html.beads.ITextItemRenderer;
+ import org.apache.flex.events.ItemClickedEvent;
+
+ COMPILE::JS
+ {
+ import org.apache.flex.core.WrappedHTMLElement;
+ }
+
+ /**
+ * The TextButtonItemRenderer class extends TextButton and turns it into an itemRenderer
+ * suitable for use in most DataContainer/List/DataGrid applications.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class TextButtonItemRenderer extends TextButton implements ITextItemRenderer
+ {
+ public function TextButtonItemRenderer()
+ {
+ super();
+
+ style = new SimpleCSSStyles();
+
+ addEventListener('click',handleClickEvent);
+ }
+
+ private var _data:Object;
+
+ /**
+ * The data to be displayed as the text value. Use this in conjunction with
+ * the labelField property to select an item from the dataProvider record to use
+ * as the text value of the button.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get data():Object
+ {
+ return _data;
+ }
+ public function set data(value:Object):void
+ {
+ _data = value;
+
+ var valueAsString:String;
+
+ if (value is String) {
+ valueAsString = value as String;
+ }
+ else if (value.hasOwnProperty("label")) {
+ valueAsString = String(value["label"]);
+ }
+ else if (value.hasOwnProperty("title")) {
+ valueAsString = String(value["title"]);
+ }
+
+ if (valueAsString) text = valueAsString;
+ }
+
+ /**
+ * @private
+ */
+ protected function handleClickEvent(event:MouseEvent):void
+ {
+ var newEvent:ItemClickedEvent = new ItemClickedEvent("itemClicked");
+ newEvent.multipleSelection = event.shiftKey;
+ newEvent.index = index;
+ newEvent.data = data;
+ dispatchEvent(newEvent);
+ }
+
+ /*
+ * IItemRenderer, ISelectableItemRenderer
+ */
+
+ private var _itemRendererParent:Object;
+
+ /**
+ * The parent container for the itemRenderer instance.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get itemRendererParent():Object
+ {
+ return _itemRendererParent;
+ }
+ public function set itemRendererParent(value:Object):void
+ {
+ _itemRendererParent = value;
+ }
+
+ private var _labelField:String = "label";
+
+ /**
+ * The name of the field within the data to use as a label. Some itemRenderers use this field to
+ * identify the value they should show while other itemRenderers ignore this if they are showing
+ * complex information.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get labelField():String
+ {
+ return _labelField;
+ }
+ public function set labelField(value:String):void
+ {
+ _labelField = value;
+ }
+
+ private var _listData:Object;
+
+ [Bindable("__NoChangeEvent__")]
+ /**
+ * Additional data about the list structure the itemRenderer may
+ * find useful.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get listData():Object
+ {
+ return _listData;
+ }
+ public function set listData(value:Object):void
+ {
+ _listData = value;
+ }
+
+ private var _index:int;
+
+ /**
+ * The position with the dataProvider being shown by the itemRenderer instance.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get index():int
+ {
+ return _index;
+ }
+ public function set index(value:int):void
+ {
+ _index = value;
+ }
+
+ private var _hovered:Boolean;
+
+ /**
+ * Whether or not the itemRenderer is in a hovered state.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get hovered():Boolean
+ {
+ return _hovered;
+ }
+ public function set hovered(value:Boolean):void
+ {
+ _hovered = value;
+ }
+
+ private var _selected:Boolean;
+
+ /**
+ * Whether or not the itemRenderer is in a selected state.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get selected():Boolean
+ {
+ return _selected;
+ }
+ public function set selected(value:Boolean):void
+ {
+ _selected = value;
+ }
+
+ private var _down:Boolean;
+
+ /**
+ * Whether or not the itemRenderer is in a down (or pre-selected) state.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get down():Boolean
+ {
+ return _down;
+ }
+ public function set down(value:Boolean):void
+ {
+ _down = value;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/resources/basic-manifest.xml b/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
index 65f21d7..4778ae8 100644
--- a/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
@@ -89,9 +89,9 @@
<component id="TreeItemRenderer" class="org.apache.flex.html.supportClasses.TreeItemRenderer"/>
<component id="DataItemRenderer" class="org.apache.flex.html.supportClasses.DataItemRenderer"/>
<component id="MXMLItemRenderer" class="org.apache.flex.html.supportClasses.MXMLItemRenderer"/>
- <component id="ButtonBarButtonItemRenderer" class="org.apache.flex.html.supportClasses.ButtonBarButtonItemRenderer"/>
<component id="DateItemRenderer" class="org.apache.flex.html.supportClasses.DateItemRenderer"/>
<component id="DayNameItemRenderer" class="org.apache.flex.html.supportClasses.DayNameItemRenderer"/>
+ <component id="TextButtonItemRenderer" class="org.apache.flex.html.supportClasses.TextButtonItemRenderer"/>
<!--
<component id="TextFieldItemRenderer" class="org.apache.flex.html.supportClasses.TextFieldItemRenderer"/>
<component id="HScrollBar" class="org.apache.flex.html.supportClasses.HScrollBar"/>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8a23e1e9/frameworks/projects/HTML/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/resources/defaults.css b/frameworks/projects/HTML/src/main/resources/defaults.css
index bd1211b..ffd48e2 100644
--- a/frameworks/projects/HTML/src/main/resources/defaults.css
+++ b/frameworks/projects/HTML/src/main/resources/defaults.css
@@ -91,19 +91,11 @@ ButtonBar
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.ButtonBarLayout");
IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.ButtonBarButtonItemRenderer");
+ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.TextButtonItemRenderer");
border-style: none;
}
-ButtonBarButtonItemRenderer
-{
- width: 80;
- height: 30;
- flex-shrink: 0;
- flex-grow: 1;
-}
-
ComboBox
{
IBeadModel: ClassReference("org.apache.flex.html.beads.models.ComboBoxModel");
@@ -190,7 +182,7 @@ DataGridButtonBar
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.ButtonBarLayout");
IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.TextItemRendererFactoryForArrayData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
- IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.DataGridButtonBarButtonItemRenderer");
+ IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.TextButtonItemRenderer");
border-style: none;
}
[18/43] git commit: [flex-asjs] [refs/heads/dual] - use header
constants, improve variable names, add missing comments
Posted by ah...@apache.org.
use header constants, improve variable names, add missing comments
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/350e1f07
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/350e1f07
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/350e1f07
Branch: refs/heads/dual
Commit: 350e1f07aafd372aecd0be5b903a750125935ce6
Parents: 198ae7c
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:42:22 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:42:22 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/URLStream.as | 135 +++++++++++++++----
1 file changed, 109 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/350e1f07/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
index 2ec3c85..be3a9d6 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
@@ -79,15 +79,15 @@ package org.apache.flex.net
public function get response():BinaryData
{
COMPILE::JS
- {
+ {
return new BinaryData(xhr.response as ArrayBuffer);
- }
- COMPILE::SWF
- {
- var ba:ByteArray = new ByteArray();
- flashUrlStream.readBytes(ba);
- return new BinaryData(ba);
- }
+ }
+ COMPILE::SWF
+ {
+ var ba:ByteArray = new ByteArray();
+ flashUrlStream.readBytes(ba);
+ return new BinaryData(ba);
+ }
}
public function load(urlRequest:org.apache.flex.net.URLRequest):void
@@ -124,7 +124,7 @@ package org.apache.flex.net
var contentSet:Boolean = false;
for each (var requestHeader:org.apache.flex.net.URLRequestHeader in urlRequest.requestHeaders)
{
- if(requestHeader.name.toLowerCase() == "content-type")
+ if(requestHeader.name.toLowerCase() == HTTPHeader.CONTENT_TYPE.toLocaleLowerCase())
{
contentSet = true;
req.contentType = requestHeader.value;
@@ -133,7 +133,7 @@ package org.apache.flex.net
}
if(!contentSet)
{
- req.requestHeaders.push(new flash.net.URLRequestHeader("Content-type", urlRequest.contentType));
+ req.requestHeaders.push(new flash.net.URLRequestHeader(HTTPHeader.CONTENT_TYPE, urlRequest.contentType));
}
if (urlRequest.data)
@@ -152,12 +152,29 @@ package org.apache.flex.net
flashUrlStream.load(req);
}
}
+
+ /**
+ * HTTP status changed (Flash only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::SWF
- private function flash_status(ev:HTTPStatusEvent):void
+ private function flash_status(event:HTTPStatusEvent):void
{
- setStatus(ev.status);
+ setStatus(event.status);
}
-
+
+ /**
+ * IO error occurred (Flash only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::SWF
protected function flash_onIoError(event:IOErrorEvent):void
{
@@ -168,16 +185,32 @@ package org.apache.flex.net
onError(this);
cleanupCallbacks();
}
-
+
+ /**
+ * Security error occurred (Flash only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::SWF
- private function flash_onSecurityError(ev:flash.events.Event):void
+ private function flash_onSecurityError(event:flash.events.Event):void
{
dispatchEvent(new DetailEvent(HTTPConstants.COMMUNICATION_ERROR,false,false,HTTPConstants.SECURITY_ERROR));
if(onError)
onError(this);
cleanupCallbacks();
}
-
+
+ /**
+ * Upload complete (Flash only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::SWF
protected function flash_complete(event:flash.events.Event):void
{
@@ -186,32 +219,57 @@ package org.apache.flex.net
onComplete(this);
cleanupCallbacks();
}
+
+ /**
+ * Upload is progressing (Flash only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::SWF
- protected function flash_progress(ev:flash.events.ProgressEvent):void
+ protected function flash_progress(event:flash.events.ProgressEvent):void
{
var progEv:org.apache.flex.events.ProgressEvent = new org.apache.flex.events.ProgressEvent(org.apache.flex.events.ProgressEvent.PROGRESS);
- progEv.current = bytesLoaded = ev.bytesLoaded;
- progEv.total = bytesTotal = ev.bytesTotal;
+ progEv.current = bytesLoaded = event.bytesLoaded;
+ progEv.total = bytesTotal = event.bytesTotal;
dispatchEvent(progEv);
if(onProgress)
onProgress(this);
}
-
+
+ /**
+ * Upload is progressing (JS only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::JS
- private function xhr_progress(e:Object):void
+ private function xhr_progress(error:Object):void
{
var progEv:ProgressEvent = new ProgressEvent(ProgressEvent.PROGRESS);
- progEv.current = bytesLoaded = e.loaded;
- progEv.total = bytesTotal = e.total;
+ progEv.current = bytesLoaded = error.loaded;
+ progEv.total = bytesTotal = error.total;
dispatchEvent(progEv);
if(onProgress)
onProgress(this);
}
-
+
+ /**
+ * HTTP status change (JS only).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
COMPILE::JS
- private function xhr_onreadystatechange(e:*):void
+ private function xhr_onreadystatechange(error:*):void
{
setStatus(xhr.status);
//we only need to deal with the status when it's done.
@@ -245,7 +303,15 @@ package org.apache.flex.net
}
cleanupCallbacks();
}
-
+
+ /**
+ * Set the HTTP request status.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
private function setStatus(value:int):void
{
if(value != requestStatus)
@@ -257,6 +323,14 @@ package org.apache.flex.net
}
}
+ /**
+ * Abort an connection.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
public function close():void
{
COMPILE::SWF
@@ -294,6 +368,14 @@ package org.apache.flex.net
*/
public var endian:String = Endian.BIG_ENDIAN;
+ /**
+ * Cleanup all callbacks.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
private function cleanupCallbacks():void
{
onComplete = null;
@@ -301,6 +383,7 @@ package org.apache.flex.net
onProgress = null;
onStatus = null;
}
+
/**
* Callback for complete event.
*
[31/43] flex-asjs git commit: Bead to dead with simple date formats. Doesn’t support time zones, some foreign date formats, month names and a lot of other things.
Posted by ah...@apache.org.
Bead to dead with simple date formats. Doesn\u2019t support time zones, some foreign date formats, month names and a lot of other things.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/edd27839
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/edd27839
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/edd27839
Branch: refs/heads/dual
Commit: edd27839eefc8d2352dad8ee997142e3979418f8
Parents: 4842fa7
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 14:24:16 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 14:24:16 2017 +1000
----------------------------------------------------------------------
.../html/accessories/SimpleDateFormatBead.as | 222 +++++++++++++++++++
1 file changed, 222 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/edd27839/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/SimpleDateFormatBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/SimpleDateFormatBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/SimpleDateFormatBead.as
new file mode 100644
index 0000000..f2548a7
--- /dev/null
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/SimpleDateFormatBead.as
@@ -0,0 +1,222 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.accessories
+{
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IDateChooserModel;
+ import org.apache.flex.core.IFormatBead;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IStrandWithModel;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.EventDispatcher;
+
+ /**
+ * The DateFormatBead class formats the display of a DateField using a format.
+ *
+ * @flexjsignoreimport org.apache.flex.core.IStrandWithModel
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class SimpleDateFormatBead extends EventDispatcher implements IBead, IFormatBead
+ {
+ /**
+ * constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function SimpleDateFormatBead()
+ {
+ }
+
+ private var _format:String;
+ private var _seperator:String;
+ private var _propertyName:String;
+ private var _eventName:String;
+ private var _formattedResult:String;
+
+ /**
+ * The name of the property on the model holding the value to be formatted.
+ * The default is selectedDate.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get propertyName():String
+ {
+ if (_propertyName == null) {
+ return "selectedDate";
+ }
+ return _propertyName;
+ }
+ public function set propertyName(value:String):void
+ {
+ _propertyName = value;
+ }
+
+ /**
+ * The name of the event dispatched when the property changes. The
+ * default is selectedDateChanged.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get eventName():String
+ {
+ if (_eventName == null) {
+ return propertyName+"Changed";
+ }
+ return _eventName;
+ }
+
+ public function set eventName(value:String):void
+ {
+ _eventName = value;
+ }
+
+ /**
+ * The format of the date string.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get format():String
+ {
+ if (_format == null) {
+ _format = "YYYY/MM/DD";
+ _seperator = "/";
+ }
+ return _format;
+ }
+
+ public function set format(value:String):void
+ {
+ if (_format != value) {
+ _format = value;
+
+ var length:int = _format.length;
+
+ for (var i:int = 0; i < length; i++) {
+ var letter:String = _format.charAt(i);
+ // assumes a single separator
+ if (letter != 'M' && letter != 'Y' && letter != 'D') {
+ _seperator = letter;
+ break;
+ }
+ }
+ _format = value;
+ }
+ }
+
+ /**
+ * The formatted result.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get formattedString():String
+ {
+ return _formattedResult;
+ }
+
+ private var _strand:IStrand;
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @flexjsignorecoercion org.apache.flex.core.IStrandWithModel
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function set strand(value:IStrand):void
+ {
+ _strand = value;
+
+ var model:IDateChooserModel = IStrandWithModel(_strand).model as IDateChooserModel;
+ model.addEventListener(propertyName+"Changed",handleTextChange);
+ }
+
+ /**
+ * @private
+ *
+ * @flexjsignorecoercion org.apache.flex.core.IStrandWithModel
+ */
+ private function handleTextChange(event:Event):void
+ {
+ var model:IDateChooserModel = IStrandWithModel(_strand).model as IDateChooserModel;
+
+ var selectedDate:Date = model.selectedDate;
+ if (selectedDate != null) {
+ var month:String = String(selectedDate.getMonth()+1);
+ var day:String = String(selectedDate.getDate());
+ var year:String = String(selectedDate.getFullYear());
+ var tokens:Array = _format.split(_seperator);
+ var length:int = tokens.length;
+
+ _formattedResult = "";
+
+ for (var i:int = 0; i < length; i++) {
+ switch (tokens[i]) {
+ case "YYYY":
+ _formattedResult += year;
+ break;
+ case "YY":
+ _formattedResult += year.slice(2,3);
+ break;
+ case "MM":
+ if (Number(month) < 10)
+ month = "0" + month;
+ case "M":
+ _formattedResult += month;
+ break;
+ case "DD":
+ if (Number(day) < 10)
+ day = "0" + day;
+ case "D":
+ _formattedResult += day;
+ break;
+ }
+
+ if (i <= length - 2) {
+ _formattedResult += _seperator;
+ }
+ }
+
+ dispatchEvent(new Event("formatChanged") );
+ }
+ }
+
+ }
+}
[06/43] git commit: [flex-asjs] [refs/heads/dual] - Mobile framework
changes.
Posted by ah...@apache.org.
Mobile framework changes.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/fd5eaae5
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/fd5eaae5
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/fd5eaae5
Branch: refs/heads/dual
Commit: fd5eaae541f5740d80bcf77aaa657c4eeb59a07a
Parents: 6256851
Author: Peter Ent <pe...@apache.org>
Authored: Fri Apr 14 08:53:04 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Fri Apr 14 08:53:04 2017 -0400
----------------------------------------------------------------------
.../apache/flex/mobile/StackedViewManager.as | 30 +-----
.../org/apache/flex/mobile/TabbedViewManager.as | 32 ------
.../org/apache/flex/mobile/ViewManagerBase.as | 4 -
.../flex/mobile/beads/StackedViewManagerView.as | 105 +++++++++----------
.../flex/mobile/beads/TabbedViewManagerView.as | 69 ++++--------
.../flex/mobile/beads/ViewManagerViewBase.as | 18 +++-
.../Mobile/src/main/resources/defaults.css | 16 +++
7 files changed, 100 insertions(+), 174 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
index 79368fd..8f1eeea 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/StackedViewManager.as
@@ -135,14 +135,6 @@ package org.apache.flex.mobile
override public function addedToParent():void
{
super.addedToParent();
-
-// var tabbedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
-//
-// var n:int = ViewManagerModel(model).views.length;
-// if (n > 0) {
-// var view:IViewManagerView = ViewManagerModel(model).views[0] as IViewManagerView;
-// push(view);
-// }
}
@@ -158,16 +150,6 @@ package org.apache.flex.mobile
{
nextView.viewManager = this;
ViewManagerModel(model).pushView(nextView);
-
-// var stackedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
-//
-// if (_topView != null) {
-// stackedView.contentArea.removeElement(_topView);
-// }
-// _topView = nextView;
-// stackedView.contentArea.addElement(_topView);
-//
-// dispatchEvent( new Event("viewChanged") );
}
/**
@@ -178,18 +160,10 @@ package org.apache.flex.mobile
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public function pop():void
+ public function pop():IChild
{
var stackedView:StackedViewManagerView = getBeadByType(StackedViewManagerView) as StackedViewManagerView;
-
-// if (ViewManagerModel(model).views.length > 1) {
-// var lastView:IChild = ViewManagerModel(model).popView() as IChild;
-// stackedView.contentArea.removeElement(_topView);
-// stackedView.contentArea.addElement(lastView);
-// _topView = lastView as IViewManagerView;
-//
-// dispatchEvent( new Event("viewChanged") );
-// }
+ return ViewManagerModel(model).popView();
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
index 3b0d89d..5a895d5 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TabbedViewManager.as
@@ -91,38 +91,6 @@ package org.apache.flex.mobile
override public function addedToParent():void
{
super.addedToParent();
-
-// var tabbedView:TabbedViewManagerView = getBeadByType(TabbedViewManagerView) as TabbedViewManagerView;
-//
-// var n:int = ViewManagerModel(model).views.length;
-// if (n > 0) {
-// for (var i:int = 0; i < n; i++)
-// {
-// var view:IViewManagerView = ViewManagerModel(model).views[i] as IViewManagerView;
-// view.viewManager = this;
-// if (i == 0) {
-// tabbedView.contentArea.addElement(view, true);
-// }
-// }
-// ViewManagerModel(model).selectedIndex = 0;
-// }
- }
-
- /**
- * @private
- */
- override protected function changeView( event:Event ):void
- {
-// var tabbedView:TabbedViewManagerView = getBeadByType(TabbedViewManagerView) as TabbedViewManagerView;
-//
-// var index:Number = ViewManagerModel(model).selectedIndex;
-// if (currentView) {
-// tabbedView.contentArea.removeElement(currentView);
-// }
-// currentView = views[index];
-// tabbedView.contentArea.addElement(currentView);
-//
-// dispatchEvent( new Event("viewChanged") );
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
index cc16ae3..549891d 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
@@ -53,10 +53,6 @@ package org.apache.flex.mobile
{
super();
- // views always fill their space
- percentWidth = 100;
- percentHeight = 100;
-
model.addEventListener("selectedIndexChanged", changeView);
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
index bd99b00..2e4e009 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
@@ -26,6 +26,7 @@ package org.apache.flex.mobile.beads
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
+ import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.IViewManagerView;
import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
@@ -57,6 +58,11 @@ package org.apache.flex.mobile.beads
}
private var _strand:IStrand;
+
+ /*
+ * Children
+ */
+
private var _contentArea:ManagedContentArea;
public function get contentArea():ManagedContentArea
@@ -75,6 +81,10 @@ package org.apache.flex.mobile.beads
model.toolBar = value;
}
+ /*
+ * ViewBead
+ */
+
override public function get strand():IStrand
{
return _strand;
@@ -102,9 +112,12 @@ package org.apache.flex.mobile.beads
{
super.handleInitComplete(event);
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ IEventDispatcher(model).addEventListener("viewPushed", handlePushEvent);
+ IEventDispatcher(model).addEventListener("viewPopped", handlePopEvent);
+
COMPILE::SWF {
_contentArea.percentWidth = 100;
- _contentArea.percentHeight = 100;
}
UIBase(_strand).addElement(_contentArea);
@@ -112,13 +125,40 @@ package org.apache.flex.mobile.beads
UIBase(_strand).addElement(toolBar);
}
- performLayout(event);
-
showViewByIndex(0);
}
private var _topView:IViewManagerView;
+ private function handlePushEvent(event:Event):void
+ {
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ var n:int = model.views.length;
+ if (n > 0) {
+ showViewByIndex(n-1);
+ }
+ }
+
+ private function handlePopEvent(event:Event):void
+ {
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ var n:int = model.views.length;
+ if (n > 0) {
+ showViewByIndex(n-1);
+ }
+ }
+
+ public function showView(view:IViewManagerView):void
+ {
+ var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
+ for(var i:int=0; i < model.views.length; i++) {
+ if (view == model.views[i]) {
+ showViewByIndex(i);
+ break;
+ }
+ }
+ }
+
protected function showViewByIndex(index:int):void
{
var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
@@ -127,6 +167,7 @@ package org.apache.flex.mobile.beads
contentArea.removeElement(_topView);
}
_topView = model.views[index] as IViewManagerView;
+ _topView.viewManager = _strand as IViewManager;
contentArea.addElement(_topView);
COMPILE::JS {
@@ -134,11 +175,16 @@ package org.apache.flex.mobile.beads
UIBase(_topView).element.style["flex-grow"] = "1";
}
}
+ COMPILE::SWF {
+ UIBase(_topView).percentWidth = 100;
+ UIBase(_topView).percentHeight = 100;
+ contentArea.layoutNeeded();
+ }
}
- override protected function layoutViewAfterContentLayout():void
+ override public function afterLayout():void
{
- super.layoutViewAfterContentLayout();
+ super.afterLayout();
COMPILE::SWF {
if (_topView) {
@@ -147,54 +193,5 @@ package org.apache.flex.mobile.beads
}
}
}
-
- /**
- * @private
- */
-// override protected function layoutChromeElements():void
-// {
-// var host:UIBase = strand as UIBase;
-// var contentAreaY:Number = 0;
-// var contentAreaHeight:Number = host.height;
-// var toolbarHeight:Number = _toolBar == null ? 0 : _toolBar.height;
-//
-// var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
-//
-// if (navigationBar)
-// {
-// navigationBar.x = 0;
-// navigationBar.y = 0;
-// navigationBar.width = host.width;
-//
-// contentAreaHeight -= navigationBar.height;
-// contentAreaY = navigationBar.height;
-//
-// model.navigationBar = navigationBar;
-// }
-//
-// if (_toolBar)
-// {
-// _toolBar.x = 0;
-// _toolBar.y = host.height - toolbarHeight;
-// _toolBar.width = host.width;
-//
-// contentAreaHeight -= toolbarHeight;
-//
-// model.toolBar = _toolBar;
-// }
-//
-// if (contentAreaY < 0) contentAreaY = 0;
-// if (contentAreaHeight < 0) contentAreaHeight = 0;
-//
-// model.contentX = 0;
-// model.contentY = contentAreaY;
-// model.contentWidth = host.width;
-// model.contentHeight = contentAreaHeight;
-//
-// sizeViewsToFitContentArea();
-//
-// // notify the views that the content size has changed
-// IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
-// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
index 227ae74..7959da0 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
@@ -26,6 +26,7 @@ package org.apache.flex.mobile.beads
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
+ import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.IViewManagerView;
import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
@@ -58,6 +59,11 @@ package org.apache.flex.mobile.beads
}
private var _strand:IStrand;
+
+ /*
+ * Children
+ */
+
private var _contentArea:ManagedContentArea;
public function get tabBar():TabBar
@@ -76,6 +82,10 @@ package org.apache.flex.mobile.beads
return _contentArea;
}
+ /*
+ * ViewBead
+ */
+
override public function get strand():IStrand
{
return _strand;
@@ -104,7 +114,6 @@ package org.apache.flex.mobile.beads
COMPILE::SWF {
_contentArea.percentWidth = 100;
- _contentArea.percentHeight = 100;
}
UIBase(_strand).addElement(_contentArea);
@@ -112,8 +121,6 @@ package org.apache.flex.mobile.beads
UIBase(_strand).addElement(tabBar);
}
- performLayout(event);
-
showViewByIndex(0);
}
@@ -127,6 +134,7 @@ package org.apache.flex.mobile.beads
contentArea.removeElement(_currentView);
}
_currentView = model.views[index] as IViewManagerView;
+ _currentView.viewManager = _strand as IViewManager;
contentArea.addElement(_currentView);
COMPILE::JS {
@@ -134,11 +142,16 @@ package org.apache.flex.mobile.beads
UIBase(_currentView).element.style["flex-grow"] = "1";
}
}
+ COMPILE::SWF {
+ UIBase(_currentView).percentWidth = 100;
+ UIBase(_currentView).percentHeight = 100;
+ contentArea.layoutNeeded();
+ }
}
- override protected function layoutViewAfterContentLayout():void
+ override public function afterLayout():void
{
- super.layoutViewAfterContentLayout();
+ super.afterLayout();
COMPILE::SWF {
if (_currentView) {
@@ -162,51 +175,5 @@ package org.apache.flex.mobile.beads
showViewByIndex(newIndex);
}
-
- /**
- * @private
- */
-// override protected function layoutChromeElements():void
-// {
-// var host:UIBase = _strand as UIBase;
-// var contentAreaY:Number = 0;
-// var contentAreaHeight:Number = host.height;
-//
-// var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
-//
-// if (navigationBar)
-// {
-// navigationBar.x = 0;
-// navigationBar.y = 0;
-// navigationBar.width = host.width;
-//
-// contentAreaHeight -= navigationBar.height;
-// contentAreaY = navigationBar.height;
-//
-// model.navigationBar = navigationBar;
-// }
-//
-// if (_tabBar)
-// {
-// _tabBar.x = 0;
-// _tabBar.y = host.height - _tabBar.height;
-// _tabBar.width = host.width;
-// _tabBar.dispatchEvent(new Event("layoutNeeded"));
-//
-// contentAreaHeight -= _tabBar.height;
-//
-// model.tabBar = _tabBar;
-// }
-//
-// model.contentX = 0;
-// model.contentY = contentAreaY;
-// model.contentWidth = host.width;
-// model.contentHeight = contentAreaHeight;
-//
-// sizeViewsToFitContentArea();
-//
-// // notify the views that the content size has changed
-// IEventDispatcher(strand).dispatchEvent( new Event("contentSizeChanged") );
-// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
index 5599ad9..82337c4 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/ViewManagerViewBase.as
@@ -57,6 +57,10 @@ package org.apache.flex.mobile.beads
super();
}
+ /*
+ * Children
+ */
+
public function get navigationBar():NavigationBar
{
var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
@@ -68,6 +72,10 @@ package org.apache.flex.mobile.beads
model.navigationBar = value;
}
+ /*
+ * ViewBead
+ */
+
private var _strand:IStrand;
public function get strand():IStrand
{
@@ -79,7 +87,7 @@ package org.apache.flex.mobile.beads
_strand = value;
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
- model.addEventListener("selectedIndexChanged", viewsChangedHandler);
+// model.addEventListener("selectedIndexChanged", viewsChangedHandler);
if (model.navigationBarItems)
{
@@ -102,10 +110,10 @@ package org.apache.flex.mobile.beads
/**
* @private
*/
- protected function viewsChangedHandler(event:Event):void
- {
- layoutChromeElements();
- }
+// protected function viewsChangedHandler(event:Event):void
+// {
+// layoutChromeElements();
+// }
/**
* @private
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd5eaae5/frameworks/projects/Mobile/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/resources/defaults.css b/frameworks/projects/Mobile/src/main/resources/defaults.css
index 405a3a5..f360d5c 100644
--- a/frameworks/projects/Mobile/src/main/resources/defaults.css
+++ b/frameworks/projects/Mobile/src/main/resources/defaults.css
@@ -22,7 +22,10 @@
NavigationBar
{
+ height: 55px;
+ min-height: 55px;
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalFlexLayout");
+ flex-grow: 0;
}
StackedViewManager
@@ -43,6 +46,19 @@ ManagedContentArea
{
display: flex;
flex-grow: 1;
+ IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
+}
+
+TabBar {
+ flex-grow: 0;
+ height: 40px;
+ min-height: 40px;
+}
+
+ToolBar {
+ flex-grow: 0;
+ height: 40px;
+ min-height: 40px;
}
ToggleSwitch
[16/43] git commit: [flex-asjs] [refs/heads/dual] - fill in missing
comments
Posted by ah...@apache.org.
fill in missing comments
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/c57d7754
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/c57d7754
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/c57d7754
Branch: refs/heads/dual
Commit: c57d7754009607ed8eae3eebc1edc5a69a1fe12c
Parents: 18d62de
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:41:19 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:41:19 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/URLRequest.as | 30 ++++++++++++++++++--
1 file changed, 27 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c57d7754/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
index 389531f..3c39f50 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
@@ -71,7 +71,15 @@ package org.apache.flex.net
*/
public var method:String = HTTPConstants.GET;
private var _requestHeaders:Array;
-
+
+ /**
+ * Set the URL request string.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
public function URLRequest(url:String = null)
{
super();
@@ -81,12 +89,28 @@ package org.apache.flex.net
}
this.requestHeaders = [];
}
-
+
+ /**
+ * Set the URL request headers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
public function get requestHeaders():Array
{
return _requestHeaders;
}
-
+
+ /**
+ * Get the URL request headers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
public function set requestHeaders(value:Array) : void
{
_requestHeaders = value;
[29/43] git commit: [flex-asjs] [refs/heads/dual] - add new classes
to framework
Posted by ah...@apache.org.
add new classes to framework
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/23f3c5ad
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/23f3c5ad
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/23f3c5ad
Branch: refs/heads/dual
Commit: 23f3c5ad13b453f321a6a8a0acd284b50fb02fc4
Parents: ee79111
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 13:23:59 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 13:23:59 2017 +1000
----------------------------------------------------------------------
frameworks/projects/Formatters/src/main/flex/FormattersClasses.as | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/23f3c5ad/frameworks/projects/Formatters/src/main/flex/FormattersClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/FormattersClasses.as b/frameworks/projects/Formatters/src/main/flex/FormattersClasses.as
index d9013dc..53b406a 100644
--- a/frameworks/projects/Formatters/src/main/flex/FormattersClasses.as
+++ b/frameworks/projects/Formatters/src/main/flex/FormattersClasses.as
@@ -30,6 +30,9 @@ internal class FormattersClasses
import org.apache.flex.core.FormatBase; FormatBase;
import org.apache.flex.html.accessories.DateFormatMMDDYYYYBead; DateFormatMMDDYYYYBead;
+ import org.apache.flex.html.accessories.DateFormatDDMMYYYYBead; DateFormatDDMMYYYYBead;
+ import org.apache.flex.html.accessories.DateFormatYYYYMMDDBead; DateFormatYYYYMMDDBead;
+ import org.apache.flex.html.accessories.SimpleDateFormatBead; SimpleDateFormatBead;
COMPILE::SWF
{
import org.apache.flex.html.beads.FormatableLabelView; FormatableLabelView;
[28/43] git commit: [flex-asjs] [refs/heads/dual] - move all code to
SimpleDateFormatBead and changed to allow different date formats
Posted by ah...@apache.org.
move all code to SimpleDateFormatBead and changed to allow different date formats
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ee791117
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ee791117
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ee791117
Branch: refs/heads/dual
Commit: ee791117cf6fc79e7b329c755342b2623fe828d0
Parents: df2e0fb
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 13:23:31 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 13:23:31 2017 +1000
----------------------------------------------------------------------
.../html/accessories/DateFormatMMDDYYYYBead.as | 125 ++-----------------
1 file changed, 8 insertions(+), 117 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ee791117/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
index 682eaaa..5519eba 100644
--- a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
@@ -18,31 +18,21 @@
////////////////////////////////////////////////////////////////////////////////
package org.apache.flex.html.accessories
{
- import org.apache.flex.core.IBead;
- import org.apache.flex.core.IDateChooserModel;
- import org.apache.flex.core.IFormatBead;
- import org.apache.flex.core.IStrand;
- import org.apache.flex.core.IStrandWithModel;
- import org.apache.flex.events.Event;
- import org.apache.flex.events.EventDispatcher;
- import org.apache.flex.html.TextInput;
- import org.apache.flex.html.beads.DateFieldView;
-
+ import org.apache.flex.html.accessories.SimpleDateFormatBead;
+
/**
* The DateFormatBead class formats the display of a DateField using MM/DD/YYYY format.
- *
- * @flexjsignoreimport org.apache.flex.core.IStrandWithModel
- *
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public class DateFormatMMDDYYYYBead extends EventDispatcher implements IBead, IFormatBead
+ public class DateFormatMMDDYYYYBead extends SimpleDateFormatBead
{
/**
* constructor.
- *
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@ -50,108 +40,9 @@ package org.apache.flex.html.accessories
*/
public function DateFormatMMDDYYYYBead()
{
+ format = "MM/DD/YYYY";
}
-
- private var _propertyName:String;
- private var _eventName:String;
- private var _formattedResult:String;
-
- /**
- * The name of the property on the model holding the value to be formatted.
- * The default is selectedDate.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function get propertyName():String
- {
- if (_propertyName == null) {
- return "selectedDate";
- }
- return _propertyName;
- }
- public function set propertyName(value:String):void
- {
- _propertyName = value;
- }
-
- /**
- * The name of the event dispatched when the property changes. The
- * default is selectedDateChanged.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function get eventName():String
- {
- if (_eventName == null) {
- return _propertyName+"Changed";
- }
- return _eventName;
- }
- public function set eventName(value:String):void
- {
- _eventName = value;
- }
-
- /**
- * The formatted result.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function get formattedString():String
- {
- return _formattedResult;
- }
-
- private var _strand:IStrand;
-
- /**
- * @copy org.apache.flex.core.IBead#strand
- *
- * @flexjsignorecoercion org.apache.flex.core.IStrandWithModel
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function set strand(value:IStrand):void
- {
- _strand = value;
-
- var model:IDateChooserModel = IStrandWithModel(_strand).model as IDateChooserModel;
- model.addEventListener("selectedDateChanged",handleTextChange);
- }
-
- /**
- * @private
- *
- * @flexjsignorecoercion org.apache.flex.core.IStrandWithModel
- */
- private function handleTextChange(event:Event):void
- {
- var model:IDateChooserModel = IStrandWithModel(_strand).model as IDateChooserModel;
-
- var d:Date = model.selectedDate;
- if (d != null) {
- var month:String = String(d.getMonth()+1);
- if (Number(month)<10) month = "0"+month;
- var date:String = String(d.getDate());
- if (Number(date)<10) date = "0"+date;
- var fmt:String = month+"/"+date+"/"+String(d.getFullYear());
- _formattedResult = month+"/"+date+"/"+String(d.getFullYear());
-
- dispatchEvent( new Event("formatChanged") );
- }
- }
-
+
}
}
+
[08/43] git commit: [flex-asjs] [refs/heads/dual] - MobileTrader now
displays; still is not completely operational.
Posted by ah...@apache.org.
MobileTrader now displays; still is not completely operational.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/5cb269d9
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/5cb269d9
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/5cb269d9
Branch: refs/heads/dual
Commit: 5cb269d973cfc5df1128dd35c6cad360b17bebc5
Parents: e3cbf4f
Author: Peter Ent <pe...@apache.org>
Authored: Fri Apr 14 16:47:08 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Fri Apr 14 16:47:08 2017 -0400
----------------------------------------------------------------------
.../src/main/flex/MyInitialView.mxml | 131 ++++++++++++-------
.../src/main/flex/views/AlertsView.mxml | 23 ++--
.../src/main/flex/views/AssetsView.mxml | 21 ++-
.../src/main/flex/views/WatchListView.mxml | 24 ++--
.../flex/mobile/beads/StackedViewManagerView.as | 3 +-
.../flex/mobile/beads/TabbedViewManagerView.as | 2 +-
6 files changed, 124 insertions(+), 80 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
index 103b358..70aea67 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
@@ -30,38 +30,28 @@ limitations under the License.
@namespace js "library://ns.apache.org/flexjs/basic";
@namespace views "views.*";
- js|Container {
- background-color: #FFFFFF;
- }
-
js|StackedViewManager {
- padding-top: 0px;
- padding-bottom: 0px;
- padding-left: 0px;
- padding-right: 0px;
+ background-color: #FFFFFF;
}
js|TabbedViewManager {
- position : absolute ;
- height : 100% ;
- width : 100% ;
- left : 0px ;
- top : 0px ;
- border: solid 1px #444444;
background-color: #FFFFFF;
}
.NavigationBar {
background-image: url("assets/background.png");
height: 55px;
+ min-height: 55px;
+ flex-grow: 0;
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
}
.TabBar {
- background-color: #DEDEDE;
- height: 55px;
+ height: 40px;
vertical-align: middle;
- line-height: 55px;
+ line-height: 40px;
+ min-height: 40px;
+ flex-grow: 0;
}
.BackButton:hover {
@@ -76,53 +66,96 @@ limitations under the License.
background-image: url('assets/arrow_left_24.png');
}
+ /* Assets
+ */
+
+ views|AssetsView {
+ padding: 10px;
+ background-color: aliceblue;
+ }
+
.AssetsInner {
padding-top: 5px;
background-color: #FFFFFF;
}
- views|AssetsView {
- width: 100%;
- height: 100%;
+ .AssetsViewTitle {
+ flex-grow: 0;
+ height: 30px;
+ min-height: 30px;
+ }
+
+ .AssetsViewGrid {
+ flex-grow: 0;
+ min-height: 150px;
+ border: solid 1px #333333;
+ }
+
+ .AssetsViewGrid .midde .DataGridColumnList {
+ border-right: solid 1px #333333;
+ border-left: solid 1px #333333;
+ }
+
+ .AssetsViewChart {
+ flex-grow: 1;
}
+ /* WatchList
+ */
+
views|WatchListView {
- width: 100%;
- height: 100%;
+ padding: 10px;
+ background-color: aliceblue;
IBeadController:ClassReference('controller.WatchListController');
- background-color: #FFFFFF;
}
- .WatchListInner {
- height: 480px;
- width: 100%;
- background-color: #FFFFFF;
+ .WatchListInputArea {
+ flex-grow: 0;
+ height: 40px;
+ min-height: 40px;
}
.WatchListDataGrid {
- height: 480px;
- width: 100%;
+ flex-grow: 1;
+ backgroundColor: #FFFFFF;
+ border: solid 1px #333333;
}
- .WatchListInputArea {
- background-color: #FFFFFF;
- width: 480px;
- height: 25px;
- padding-top: 5px;
- padding-bottom: 2px;
+ .WatchListDataGrid .midde .DataGridColumnList {
+ border-right: solid 1px #333333;
+ border-left: solid 1px #333333;
}
- views|StockView {
- width: 100%;
- height: 100%;
- }
+ /* Alerts
+ */
views|AlertsView {
- width: 100%;
- height: 100%;
+ padding: 10px;
+ background-color: aliceblue;
IBeadController:ClassReference('controller.AlertsViewController');
}
+ .AlertsInput {
+ flex-grow: 0;
+ height: 40px;
+ min-height: 40px;
+ backgroundColor: aliceblue;
+ }
+
+ .AlertsDataGrid {
+ flex-grow: 1;
+ backgroundColor: #FFFFFF;
+ border: solid 1px #333333;
+ }
+
+ .AlertsDataGrid .midde .DataGridColumnList {
+ border-right: solid 1px #333333;
+ border-left: solid 1px #333333;
+ }
+
+ /* Supplements
+ */
+
.redCell {
color: #FF0000;
}
@@ -208,17 +241,17 @@ limitations under the License.
private function watchListStackChanged(event:org.apache.flex.events.Event):void
{
trace("watchlist stack changed");
- var manager:StackedViewManager = event.currentTarget as StackedViewManager;
-
- var currentView:IViewManagerView = manager.selectedView;
- backButton.visible = manager.views.length > 1;
+// var manager:StackedViewManager = event.currentTarget as StackedViewManager;
+//
+// var currentView:IViewManagerView = manager.selectedView;
+// backButton.visible = manager.views.length > 1;
}
private function goBack(event:org.apache.flex.events.MouseEvent):void
{
- if (navController.selectedIndex == 1) {
- watchListStack.pop();
- }
+// if (navController.selectedIndex == 1) {
+// watchListStack.pop();
+// }
}
]]>
</fx:Script>
@@ -227,7 +260,7 @@ limitations under the License.
<js:ViewDataBinding />
</js:beads>
- <js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
+ <js:TabbedViewManager id="navController" width="700" height="500" x="0" y="0" viewChanged="tabbedViewChanged(event)">
<js:navigationBarItems>
<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
<js:beads>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
index f06dd65..71ddff6 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
@@ -21,7 +21,9 @@ limitations under the License.
title="Alerts"
xmlns:js="library://ns.apache.org/flexjs/basic"
xmlns:local="*"
- className="AlertsView" xmlns:renderers="renderers.*">
+ xmlns:controller="controller.*"
+ className="AlertsView"
+ xmlns:renderers="renderers.*">
<fx:Metadata>
[Event("next")]
@@ -51,8 +53,12 @@ limitations under the License.
}
]]>
</fx:Script>
+
+ <js:beads>
+ <js:VerticalFlexLayout />
+ </js:beads>
- <js:Container x="4" y="10" >
+ <js:Group x="4" y="10" width="100%" className="AlertsInput" >
<js:beads>
<js:HorizontalLayout />
</js:beads>
@@ -62,11 +68,12 @@ limitations under the License.
<js:TextInput id="valueField" width="50" />
<js:CheckBox text="Higher?" id="higherCheck" />
<js:TextButton text="Set" click="onAlertSet()" />
- </js:Container>
+ </js:Group>
- <js:DataGrid id="dataGrid" x="0" y="40" width="100%" height="200">
+ <js:DataGrid id="dataGrid" x="0" y="40" width="100%" className="AlertsDataGrid">
<js:beads>
- <js:DataProviderChangeNotifier sourceID="dataModel" propertyName="alerts" />
+ <js:DataGridPercentageView />
+ <!--<controller:DataModelChangeNotifier />-->
<js:SimpleBinding
eventName="alertsUpdate"
sourceID="dataModel"
@@ -74,21 +81,21 @@ limitations under the License.
destinationPropertyName="dataProvider" />
</js:beads>
<js:columns>
- <js:DataGridColumn label="Symbol" dataField="symbol">
+ <js:DataGridColumn label="Symbol" dataField="symbol" columnWidth="50">
<js:itemRenderer>
<fx:Component>
<js:StringItemRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="Alert" dataField="greaterThan">
+ <js:DataGridColumn label="Alert" dataField="greaterThan" columnWidth="25">
<js:itemRenderer>
<fx:Component>
<renderers:AlertRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="Message" dataField="message">
+ <js:DataGridColumn label="Message" dataField="message" columnWidth="25">
<js:itemRenderer>
<fx:Component>
<js:StringItemRenderer />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
index 2929a3e..1d5bd2e 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
@@ -34,35 +34,34 @@ limitations under the License.
</fx:Metadata>
<js:beads>
- <js:VerticalLayout />
+ <js:VerticalFlexLayout />
</js:beads>
<js:model>
<models:AssetsModel />
</js:model>
- <js:Label text="Summary" height="10%" />
+ <js:Label text="Summary" className="AssetsViewTitle" />
- <js:DataGrid height="150" width="100%">
- <js:style>
- <js:SimpleCSSStyles top="0" left="0" right="0" />
- </js:style>
+ <js:DataGrid height="150" width="100%" className="AssetsViewGrid">
<js:beads>
+ <js:DataGridPercentageView />
<js:ConstantBinding
sourceID="model"
sourcePropertyName="assetsData"
destinationPropertyName="dataProvider" />
</js:beads>
<js:columns>
- <js:DataGridColumn label="Type" dataField="label" />
- <js:DataGridColumn label="Value" dataField="value" />
- <js:DataGridColumn label="Change" dataField="netChange" />
+ <js:DataGridColumn label="Type" dataField="label" columnWidth="50" />
+ <js:DataGridColumn label="Value" dataField="value" columnWidth="25" />
+ <js:DataGridColumn label="Change" dataField="netChange" columnWidth="25" />
</js:columns>
</js:DataGrid>
- <js:Label text="Performance History" height="10%" />
+ <js:Spacer height="10" />
+ <js:Label text="Performance History" className="AssetsViewTitle" />
- <js:BarChart id="barChart" width="100%" height="40%">
+ <js:BarChart id="barChart" className="AssetsViewChart" >
<js:beads>
<js:ConstantBinding
sourceID="model"
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
index aa9da04..3b84f34 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
@@ -89,20 +89,24 @@ limitations under the License.
</fx:Script>
<js:beads>
- <js:VerticalLayout />
+ <js:VerticalFlexLayout />
</js:beads>
- <js:HContainer className="WatchListInputArea" width="100%" height="10%">
+ <js:Group width="100%" className="WatchListInputArea" >
+ <js:beads>
+ <js:HorizontalLayout />
+ </js:beads>
<js:Label text="Symbol:" />
<js:TextInput id="symbolName" />
<js:TextButton text="Add" click="addSymbol()" />
- </js:HContainer>
+ </js:Group>
<js:Spacer height="10" />
- <js:DataGrid id="dataGrid" width="100%" height="85%" change="selectRow()" className="WatchListDataGrid">
+ <js:DataGrid id="dataGrid" width="100%" change="selectRow()" className="WatchListDataGrid">
<js:beads>
- <js:DataProviderChangeNotifier sourceID="dataModel" propertyName="watchList" />
+ <!--<controller:DataModelChangeNotifier />-->
+ <js:DataGridPercentageView />
<js:SimpleBinding
eventName="update"
sourceID="dataModel"
@@ -110,35 +114,35 @@ limitations under the License.
destinationPropertyName="dataProvider" />
</js:beads>
<js:columns>
- <js:DataGridColumn label="Symbol" dataField="symbol">
+ <js:DataGridColumn label="Symbol" dataField="symbol" columnWidth="20">
<js:itemRenderer>
<fx:Component>
<js:StringItemRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="Open" dataField="open">
+ <js:DataGridColumn label="Open" dataField="open" columnWidth="20">
<js:itemRenderer>
<fx:Component>
<renderers:StockRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="Last" dataField="last" >
+ <js:DataGridColumn label="Last" dataField="last" columnWidth="20" >
<js:itemRenderer>
<fx:Component>
<renderers:StockRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="High" dataField="high" >
+ <js:DataGridColumn label="High" dataField="high" columnWidth="20" >
<js:itemRenderer>
<fx:Component>
<renderers:StockRenderer />
</fx:Component>
</js:itemRenderer>
</js:DataGridColumn>
- <js:DataGridColumn label="Low" dataField="low" >
+ <js:DataGridColumn label="Low" dataField="low" columnWidth="20" >
<js:itemRenderer>
<fx:Component>
<renderers:StockRenderer />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
index a500c12..c2c8837 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
@@ -153,7 +153,8 @@ package org.apache.flex.mobile.beads
}
_topView = model.views[index] as IViewManagerView;
_topView.viewManager = _strand as IViewManager;
- UIBase(_strand).addElementAt(_topView,1);
+
+ UIBase(_strand).addElementAt(_topView,(navigationBar == null ? 0 : 1));
COMPILE::JS {
if (_topView) {
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5cb269d9/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
index 4ee3a5a..cd60094 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
@@ -120,7 +120,7 @@ package org.apache.flex.mobile.beads
}
_currentView = model.views[index] as IViewManagerView;
_currentView.viewManager = _strand as IViewManager;
- UIBase(_strand).addElementAt(_currentView,1);
+ UIBase(_strand).addElementAt(_currentView,(navigationBar == null ? 0 : 1));
COMPILE::JS {
if (_currentView) {
[14/43] git commit: [flex-asjs] [refs/heads/dual] - add some comment
and missing semicolon
Posted by ah...@apache.org.
add some comment and missing semicolon
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/fe1ff661
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/fe1ff661
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/fe1ff661
Branch: refs/heads/dual
Commit: fe1ff661a4831ce0c00454fce9df478716b24f39
Parents: 242fb73
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:40:28 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:40:28 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/HTTPUtils.as | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fe1ff661/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPUtils.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPUtils.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPUtils.as
index fab6fdc..e38c566 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPUtils.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPUtils.as
@@ -20,9 +20,26 @@ package org.apache.flex.net
{
public class HTTPUtils
{
+ /**
+ * HTTP utility methods.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public function HTTPUtils()
{
}
+
+ /**
+ * Encode URL variables.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public static function encodeUrlVariables(data:Object):String
{
if(!data)
@@ -37,7 +54,7 @@ package org.apache.flex.net
b.push("&");
}
if(b.length)
- b.pop()
+ b.pop();
return b.join("");
}
[17/43] git commit: [flex-asjs] [refs/heads/dual] - fill in missing
comments
Posted by ah...@apache.org.
fill in missing comments
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/198ae7c8
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/198ae7c8
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/198ae7c8
Branch: refs/heads/dual
Commit: 198ae7c8952224f4944648965812075eab6adffa
Parents: c57d775
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:41:38 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:41:38 2017 +1000
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/net/URLRequestHeader.as | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/198ae7c8/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequestHeader.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequestHeader.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequestHeader.as
index 9680764..be129f2 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequestHeader.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequestHeader.as
@@ -50,7 +50,14 @@ package org.apache.flex.net
public var value:String;
-
+ /**
+ * Set the name and value of a URL request header.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.7.0
+ */
public function URLRequestHeader(name:String, value:String)
{
this.name = name;
[23/43] git commit: [flex-asjs] [refs/heads/dual] - add license
Posted by ah...@apache.org.
add license
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f4dde33e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f4dde33e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f4dde33e
Branch: refs/heads/dual
Commit: f4dde33e402e16940e5ac4c1a2a1a5b65150c48a
Parents: 9e4b62d
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 16:07:59 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 16:07:59 2017 +1000
----------------------------------------------------------------------
.../apache/flex/net/beads/CORSCredentialsBead.as | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4dde33e/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
index 6a44c90..be02408 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
@@ -1,3 +1,22 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.net.beads {
import org.apache.flex.core.IBead;
import org.apache.flex.core.IStrand;
[11/43] git commit: [flex-asjs] [refs/heads/dual] - use header
constants
Posted by ah...@apache.org.
use header constants
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/318bdf2a
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/318bdf2a
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/318bdf2a
Branch: refs/heads/dual
Commit: 318bdf2a8cb4e0527fe9a2150b56e44a0be8cf1a
Parents: 159abcc
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:39:18 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:39:18 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/BinaryUploader.as | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/318bdf2a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/BinaryUploader.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/BinaryUploader.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/BinaryUploader.as
index 035f753..31854c4 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/BinaryUploader.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/BinaryUploader.as
@@ -589,8 +589,8 @@ package org.apache.flex.net
}
if (binaryData) {
- element.setRequestHeader('Content-length', binaryData.length.toString());
- element.setRequestHeader('Connection', 'close');
+ element.setRequestHeader(HTTPHeader.CONTENT_LENGTH, binaryData.length.toString());
+ element.setRequestHeader(HTTPHeader.CONNECTION, 'close');
element.send(binaryData);
} else {
element.send();
@@ -641,9 +641,9 @@ package org.apache.flex.net
* @productversion FlexJS 0.0
*/
COMPILE::SWF
- protected function completeHandler(event:flash.events.Event):void
- {
- dispatchEvent(new Event(event.type));
+ protected function completeHandler(event:flash.events.Event):void
+ {
+ dispatchEvent(new Event(event.type));
}
/**
@@ -655,10 +655,10 @@ package org.apache.flex.net
var element:XMLHttpRequest = this.element as XMLHttpRequest;
if (element.readyState === 2) {
_status = element.status;
- dispatchEvent('httpResponseStatus');
- dispatchEvent('httpStatus');
+ dispatchEvent(HTTPConstants.RESPONSE_STATUS);
+ dispatchEvent(HTTPConstants.STATUS);
} else if (element.readyState === 4) {
- dispatchEvent('complete');
+ dispatchEvent(HTTPConstants.COMPLETE);
}
}
[37/43] git commit: [flex-asjs] [refs/heads/dual] - Enables side
borders on SWF platform.
Posted by ah...@apache.org.
Enables side borders on SWF platform.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/b1ba88e8
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/b1ba88e8
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/b1ba88e8
Branch: refs/heads/dual
Commit: b1ba88e8f618894463e34d4f84060acc9daef268
Parents: 8a23e1e
Author: Peter Ent <pe...@apache.org>
Authored: Tue Apr 18 09:35:21 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Tue Apr 18 09:35:21 2017 -0400
----------------------------------------------------------------------
.../org/apache/flex/html/beads/DataGridView.as | 2 +-
.../org/apache/flex/html/beads/GroupView.as | 23 ++++++++++++++++----
2 files changed, 20 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b1ba88e8/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as
index 68e5d95..3b387d9 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as
@@ -134,7 +134,7 @@ package org.apache.flex.html.beads
_listArea.element.style["flex-grow"] = "1";
}
- IEventDispatcher(_strand).addEventListener("initComplete", finishSetup);
+ IEventDispatcher(_strand).addEventListener("beadsAdded", finishSetup);
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b1ba88e8/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
index acd805d..2a982c2 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
@@ -304,26 +304,41 @@ package org.apache.flex.html.beads
host.addBead( new c() as IBead );
}
}
-
+
+ if (setupForBorder(host, "border")) return;
+ if (setupForBorder(host, "border-top")) return;
+ if (setupForBorder(host, "border-bottom")) return;
+ if (setupForBorder(host, "border-left")) return;
+ if (setupForBorder(host, "border-right")) return;
+ }
+
+ COMPILE::SWF
+ protected function setupForBorder(host:UIBase, borderType:String):Boolean
+ {
+ var result:Boolean = false;
+
var borderStyle:String;
- var borderStyles:Object = ValuesManager.valuesImpl.getValue(host, "border");
+ var borderStyles:Object = ValuesManager.valuesImpl.getValue(host, borderType);
if (borderStyles is Array)
{
borderStyle = borderStyles[1];
}
if (borderStyle == null)
{
- borderStyle = ValuesManager.valuesImpl.getValue(host, "border-style") as String;
+ borderStyle = ValuesManager.valuesImpl.getValue(host, borderType+"-style") as String;
}
if (borderStyle != null && borderStyle != "none")
{
if (host.getBeadByType(IBorderBead) == null) {
- c = ValuesManager.valuesImpl.getValue(host, "iBorderBead");
+ var c:Class = ValuesManager.valuesImpl.getValue(host, "iBorderBead");
if (c) {
host.addBead( new c() as IBead );
+ result = true;
}
}
}
+
+ return result;
}
}
}
[10/43] git commit: [flex-asjs] [refs/heads/dual] - MobileTrader
nearly back to full function.
Posted by ah...@apache.org.
MobileTrader nearly back to full function.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/159abcc9
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/159abcc9
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/159abcc9
Branch: refs/heads/dual
Commit: 159abcc9cc728108863be1bc07d3175711a4fd00
Parents: a005b67
Author: Peter Ent <pe...@apache.org>
Authored: Sat Apr 15 08:32:58 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Sat Apr 15 08:32:58 2017 -0400
----------------------------------------------------------------------
examples/flexjs/MobileTrader/build.xml | 17 ++++-
.../src/main/flex/MobileTrader.mxml | 3 +
.../src/main/flex/MyInitialView.mxml | 8 ++-
.../flex/controller/DataModelChangeNotifier.as | 71 ++++++++++++++++++++
.../src/main/flex/views/AlertsView.mxml | 2 +-
.../src/main/flex/views/WatchListView.mxml | 2 +-
6 files changed, 99 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/build.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/build.xml b/examples/flexjs/MobileTrader/build.xml
index cb69a25..81fd570 100644
--- a/examples/flexjs/MobileTrader/build.xml
+++ b/examples/flexjs/MobileTrader/build.xml
@@ -48,7 +48,22 @@
</condition>
<property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/js/out/bin/js.swc"/>
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile,build_example.compilejs,copyassets" description="Clean build of ${example}">
+ </target>
+
+ <target name="copyassets">
+ <mkdir dir="${basedir}/bin/js-debug/assets" />
+ <copy todir="${basedir}/bin/js-debug/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
+ <mkdir dir="${basedir}/bin/js-release/assets" />
+ <copy todir="${basedir}/bin/js-release/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
</target>
<target name="clean">
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml b/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
index c76531c..47acaeb 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
@@ -24,6 +24,9 @@
xmlns:js="library://ns.apache.org/flexjs/basic"
xmlns:controller="controller.*"
>
+ <js:beads>
+ <js:DeviceSizeBead />
+ </js:beads>
<js:valuesImpl>
<js:SimpleCSSValuesImpl />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
index 70aea67..2357600 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
@@ -38,6 +38,11 @@ limitations under the License.
background-color: #FFFFFF;
}
+ .StringItemRenderer {
+ padding-left: 4px;
+ padding-top: 2px;
+ }
+
.NavigationBar {
background-image: url("assets/background.png");
height: 55px;
@@ -225,6 +230,7 @@ limitations under the License.
private function onInitComplete():void
{
+
}
private function onAssetsNext():void
@@ -260,7 +266,7 @@ limitations under the License.
<js:ViewDataBinding />
</js:beads>
- <js:TabbedViewManager id="navController" width="700" height="500" x="0" y="0" viewChanged="tabbedViewChanged(event)">
+ <js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
<js:navigationBarItems>
<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
<js:beads>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/src/main/flex/controller/DataModelChangeNotifier.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/controller/DataModelChangeNotifier.as b/examples/flexjs/MobileTrader/src/main/flex/controller/DataModelChangeNotifier.as
new file mode 100644
index 0000000..a6e2e19
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/controller/DataModelChangeNotifier.as
@@ -0,0 +1,71 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 controller
+{
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IBeadModel;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.events.EventDispatcher;
+ import org.apache.flex.events.CollectionEvent;
+
+ public class DataModelChangeNotifier extends EventDispatcher implements IBead
+ {
+ public function DataModelChangeNotifier()
+ {
+ super();
+ }
+
+ private var _strand:IStrand;
+ private var _propertyName:String = "dataProvider";
+
+ public function get propertyName():String
+ {
+ return _propertyName;
+ }
+ public function set propertyName(value:String):void
+ {
+ _propertyName = value;
+ }
+
+ public function set strand(value:IStrand):void
+ {
+ _strand = value;
+
+ IEventDispatcher(_strand).addEventListener("initBindings", handleInitBindings);
+ }
+
+ private function handleInitBindings(event:Event):void
+ {
+ var model:Object = _strand.getBeadByType(IBeadModel) as Object;
+ var property:IEventDispatcher = model[propertyName] as IEventDispatcher;
+
+ property.addEventListener(CollectionEvent.ITEM_ADDED, handleModelChanges);
+ property.addEventListener(CollectionEvent.ITEM_REMOVED, handleModelChanges);
+ property.addEventListener(CollectionEvent.ITEM_UPDATED, handleModelChanges);
+ }
+
+ private function handleModelChanges(event:CollectionEvent):void
+ {
+ var model:IEventDispatcher = _strand.getBeadByType(IBeadModel) as IEventDispatcher;
+ model.dispatchEvent(new Event("dataProviderChanged"));
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
index 71ddff6..fbb96e0 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
@@ -73,7 +73,7 @@ limitations under the License.
<js:DataGrid id="dataGrid" x="0" y="40" width="100%" className="AlertsDataGrid">
<js:beads>
<js:DataGridPercentageView />
- <!--<controller:DataModelChangeNotifier />-->
+ <controller:DataModelChangeNotifier />
<js:SimpleBinding
eventName="alertsUpdate"
sourceID="dataModel"
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/159abcc9/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
index 3b84f34..f08da21 100755
--- a/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
@@ -105,7 +105,7 @@ limitations under the License.
<js:DataGrid id="dataGrid" width="100%" change="selectRow()" className="WatchListDataGrid">
<js:beads>
- <!--<controller:DataModelChangeNotifier />-->
+ <controller:DataModelChangeNotifier />
<js:DataGridPercentageView />
<js:SimpleBinding
eventName="update"
[22/43] git commit: [flex-asjs] [refs/heads/dual] - Added bead to
pass authorisation credentials on in JS HTTP requests
Posted by ah...@apache.org.
Added bead to pass authorisation credentials on in JS HTTP requests
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9e4b62d4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9e4b62d4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9e4b62d4
Branch: refs/heads/dual
Commit: 9e4b62d435e3f3166ce710e551c6e78100f88df6
Parents: 65320f9
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 15:41:15 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 15:41:15 2017 +1000
----------------------------------------------------------------------
.../flex/net/beads/CORSCredentialsBead.as | 79 ++++++++++++++++++++
1 file changed, 79 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9e4b62d4/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
new file mode 100644
index 0000000..6a44c90
--- /dev/null
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
@@ -0,0 +1,79 @@
+package org.apache.flex.net.beads {
+import org.apache.flex.core.IBead;
+import org.apache.flex.core.IStrand;
+import org.apache.flex.events.Event;
+import org.apache.flex.events.IEventDispatcher;
+
+COMPILE::SWF
+public class CORSCredentialsBead {
+ public function CORSCredentialsBead(withCredentials:Boolean = false) {
+ trace("Only needed for JavaScript HTTP Server calls");
+ }
+}
+
+/**
+ * Bead to allow passing on user authentication information in a XMLHttpRequest request.
+ *
+ * If you don't use this bead any cross domain calls that require user authentication
+ * (via say basic authentication or cookies) will fail.
+ *
+ * @productversion FlexJS 0.8
+ */
+COMPILE::JS
+public class CORSCredentialsBead implements IBead {
+
+ public function CORSCredentialsBead(withCredentials:Boolean = false) {
+ this.withCredentials = withCredentials;
+ }
+
+ private var _strand:IStrand;
+
+ /**
+ * Listen for a pre and post send event to modify if user credentials are passed.
+ *
+ * @productversion FlexJS 0.8
+ */
+ public function set strand(value:IStrand):void {
+ _strand = value;
+
+ IEventDispatcher(_strand).addEventListener("preSend", preSendHandler);
+ IEventDispatcher(_strand).addEventListener("postSend", postSendHandler);
+ }
+
+ /**
+ * Modify the HTTP request to pass credentials.
+ *
+ * @productversion FlexJS 0.8
+ */
+ protected function preSendHandler(event:Event):void {
+ (event.target.element as XMLHttpRequest).withCredentials = withCredentials;
+ }
+
+ /**
+ * Clean up event listeners.
+ *
+ * @productversion FlexJS 0.8
+ */
+ protected function postSendHandler(event:Event):void {
+ IEventDispatcher(_strand).removeEventListener("preSend", preSendHandler);
+ IEventDispatcher(_strand).removeEventListener("postSend", preSendHandler);
+ }
+
+ private var _withCredentials:Boolean = false;
+
+ /**
+ * Pass the user credentials or not.
+ *
+ * @productversion FlexJS 0.8
+ */
+ public function get withCredentials():Boolean
+ {
+ return _withCredentials;
+ }
+
+ public function set withCredentials(value:Boolean):void
+ {
+ _withCredentials = value;
+ }
+}
+}
[12/43] git commit: [flex-asjs] [refs/heads/dual] - add constants
currently used by code
Posted by ah...@apache.org.
add constants currently used by code
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4d09ccf5
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4d09ccf5
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4d09ccf5
Branch: refs/heads/dual
Commit: 4d09ccf5abd481f7ef6a01f95ed8072a75da073d
Parents: 318bdf2
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:39:47 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:39:47 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/HTTPHeader.as | 23 +++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4d09ccf5/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPHeader.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPHeader.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPHeader.as
index 05c8760..17fc7ae 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPHeader.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPHeader.as
@@ -30,7 +30,7 @@ package org.apache.flex.net
{
/**
* The Content-type header.
- *
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@ -38,6 +38,27 @@ package org.apache.flex.net
*/
public static const CONTENT_TYPE:String = "Content-type";
+ /**
+ * The Content-length header.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public static const CONTENT_LENGTH:String = "Content-length";
+
+
+ /**
+ * The Connection header.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public static const CONNECTION:String = "Connection";
+
/**
* Constructor.
*
[33/43] git commit: [flex-asjs] [refs/heads/dual] - update FlexJS
version number
Posted by ah...@apache.org.
update FlexJS version number
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/313e900e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/313e900e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/313e900e
Branch: refs/heads/dual
Commit: 313e900e5aa56b94d967c6fc3c71b4a1d9dc2630
Parents: e8be4fc
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 14:47:44 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 14:47:44 2017 +1000
----------------------------------------------------------------------
.../org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as | 4 ++--
.../org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as | 4 ++--
.../org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/313e900e/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
index 3af9332..adc62cc 100644
--- a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatDDMMYYYYBead.as
@@ -26,7 +26,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public class DateFormatDDMMYYYYBead extends SimpleDateFormatBead
{
@@ -36,7 +36,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public function DateFormatDDMMYYYYBead()
{
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/313e900e/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
index 5519eba..7bed798 100644
--- a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatMMDDYYYYBead.as
@@ -26,7 +26,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public class DateFormatMMDDYYYYBead extends SimpleDateFormatBead
{
@@ -36,7 +36,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public function DateFormatMMDDYYYYBead()
{
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/313e900e/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
index ac0fe28..649b2a6 100644
--- a/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
+++ b/frameworks/projects/Formatters/src/main/flex/org/apache/flex/html/accessories/DateFormatYYYYMMDDBead.as
@@ -26,7 +26,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public class DateFormatYYYYMMDDBead extends SimpleDateFormatBead
{
@@ -36,7 +36,7 @@ package org.apache.flex.html.accessories
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion FlexJS 0.0
+ * @productversion FlexJS 0.8
*/
public function DateFormatYYYYMMDDBead()
{
[09/43] git commit: [flex-asjs] [refs/heads/dual] - Removed
unnecessary functions.
Posted by ah...@apache.org.
Removed unnecessary functions.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a005b675
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a005b675
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a005b675
Branch: refs/heads/dual
Commit: a005b6753d53097f544affe7b1b964d9573958de
Parents: 5cb269d
Author: Peter Ent <pe...@apache.org>
Authored: Sat Apr 15 08:31:51 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Sat Apr 15 08:31:51 2017 -0400
----------------------------------------------------------------------
.../flex/org/apache/flex/charts/beads/ChartView.as | 16 ----------------
.../org/apache/flex/html/beads/DataContainerView.as | 4 +---
2 files changed, 1 insertion(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a005b675/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
index 2dd7d81..8eaeb65 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
@@ -81,22 +81,6 @@ package org.apache.flex.charts.beads
/**
* @private
- * @flexjsignorecoercion org.apache.flex.core.IChild
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- override protected function completeSetup():void
- {
- super.completeSetup();
-
- performLayout(null);
- }
-
- /**
- * @private
*/
override protected function beadsAddedHandler(event:Event):void
{
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a005b675/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
index 6d1eae5..fc5f3a2 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
@@ -205,7 +205,6 @@ package org.apache.flex.html.beads
*/
protected function itemsCreatedHandler(event:Event):void
{
- trace("DataContainerView: itemsCreatedHandler");
host.dispatchEvent(new Event("layoutNeeded"));
}
@@ -214,8 +213,7 @@ package org.apache.flex.html.beads
*/
protected function dataProviderChangeHandler(event:Event):void
{
- trace("DataContainerView: dataProviderChangeHandler");
- performLayout(event);
+ host.dispatchEvent(new Event("layoutNeeded"));
}
/**
[19/43] git commit: [flex-asjs] [refs/heads/dual] - add JS only
CORSCredentialsBead
Posted by ah...@apache.org.
add JS only CORSCredentialsBead
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3fa62e72
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3fa62e72
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3fa62e72
Branch: refs/heads/dual
Commit: 3fa62e72959b6fb09e02e707d628bf29c07221ba
Parents: 350e1f0
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 13:21:47 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 13:21:47 2017 +1000
----------------------------------------------------------------------
frameworks/projects/Network/src/main/flex/NetworkClasses.as | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3fa62e72/frameworks/projects/Network/src/main/flex/NetworkClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/NetworkClasses.as b/frameworks/projects/Network/src/main/flex/NetworkClasses.as
index a649df0..e4cd570 100644
--- a/frameworks/projects/Network/src/main/flex/NetworkClasses.as
+++ b/frameworks/projects/Network/src/main/flex/NetworkClasses.as
@@ -22,13 +22,17 @@ package
/**
* @private
* This class is used to link additional classes into rpc.swc
- * beyond those that are found by dependecy analysis starting
+ * beyond those that are found by dependency analysis starting
* from the classes specified in manifest.xml.
*/
internal class NetworkClasses
{
import org.apache.flex.net.URLBinaryLoader; URLBinaryLoader;
import org.apache.flex.net.HTTPConstants; HTTPConstants;
+
+ COMPILE::JS {
+ import org.apache.flex.net.beads.CORSCredentialsBead; CORSCredentialsBead;
+ }
}
}
[39/43] git commit: [flex-asjs] [refs/heads/dual] - Merge branch
'develop' into dual
Posted by ah...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --cc frameworks/projects/HTML/src/main/resources/basic-manifest.xml
index 3d60024,4778ae8..4a47ba4
--- a/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
@@@ -21,8 -21,140 +21,6 @@@
<componentPackage>
- <component id="Application" class="org.apache.flex.core.Application"/>
- <component id="View" class="org.apache.flex.core.View"/>
- <component id="Button" class="org.apache.flex.html.Button"/>
- <component id="CloseButton" class="org.apache.flex.html.CloseButton"/>
- <component id="ButtonBar" class="org.apache.flex.html.ButtonBar"/>
- <component id="DropDownList" class="org.apache.flex.html.DropDownList"/>
- <component id="DropDownListList" class="org.apache.flex.html.supportClasses.DropDownListList"/>
- <component id="Image" class="org.apache.flex.html.Image"/>
- <component id="BinaryImage" class="org.apache.flex.html.BinaryImage"/>
- <component id="Label" class="org.apache.flex.html.Label"/>
-- <component id="HTMLText" class="org.apache.flex.html.HTMLText"/>
- <component id="MultilineLabel" class="org.apache.flex.html.MultilineLabel"/>
- <component id="ImageAndTextButton" class="org.apache.flex.html.ImageAndTextButton"/>
- <component id="TextButton" class="org.apache.flex.html.TextButton"/>
- <component id="ToggleTextButton" class="org.apache.flex.html.ToggleTextButton"/>
- <component id="TextInput" class="org.apache.flex.html.TextInput"/>
- <component id="TextArea" class="org.apache.flex.html.TextArea"/>
- <component id="DataContainer" class="org.apache.flex.html.DataContainer"/>
- <component id="List" class="org.apache.flex.html.List"/>
- <component id="SimpleList" class="org.apache.flex.html.SimpleList"/>
- <component id="CheckBox" class="org.apache.flex.html.CheckBox"/>
- <component id="CSSCheckBox" class="org.apache.flex.html.CSSCheckBox"/>
- <component id="RadioButton" class="org.apache.flex.html.RadioButton"/>
- <component id="ComboBox" class="org.apache.flex.html.ComboBox"/>
- <component id="ComboBoxList" class="org.apache.flex.html.supportClasses.ComboBoxList"/>
- <component id="Container" class="org.apache.flex.html.Container"/>
- <component id="Group" class="org.apache.flex.html.Group"/>
- <component id="Accordion" class="org.apache.flex.html.Accordion"/>
- <component id="Form" class="org.apache.flex.html.Form"/>
- <component id="HContainer" class="org.apache.flex.html.HContainer"/>
- <component id="VContainer" class="org.apache.flex.html.VContainer"/>
- <component id="Panel" class="org.apache.flex.html.Panel"/>
- <component id="PanelView" class="org.apache.flex.html.beads.PanelView"/>
- <component id="ImageView" class="org.apache.flex.html.beads.ImageView"/>
- <component id="PanelWithControlBar" class="org.apache.flex.html.PanelWithControlBar"/>
- <component id="PanelWithControlBarView" class="org.apache.flex.html.beads.PanelWithControlBarView"/>
- <component id="ControlBar" class="org.apache.flex.html.ControlBar"/>
- <component id="RangeStepper" class="org.apache.flex.html.RangeStepper" />
- <component id="TitleBar" class="org.apache.flex.html.TitleBar"/>
- <component id="ImageModel" class="org.apache.flex.html.beads.models.ImageModel"/>
- <component id="TitleBarModel" class="org.apache.flex.html.beads.models.TitleBarModel"/>
- <component id="ToolTip" class="org.apache.flex.html.ToolTip"/>
- <component id="Tree" class="org.apache.flex.html.Tree"/>
- <component id="BasicLayout" class="org.apache.flex.html.beads.layouts.BasicLayout"/>
- <component id="VerticalLayout" class="org.apache.flex.html.beads.layouts.VerticalLayout"/>
- <component id="VerticalFlexLayout" class="org.apache.flex.html.beads.layouts.VerticalFlexLayout"/>
- <component id="HorizontalLayout" class="org.apache.flex.html.beads.layouts.HorizontalLayout"/>
- <component id="HorizontalFlexLayout" class="org.apache.flex.html.beads.layouts.HorizontalFlexLayout"/>
- <component id="HorizontalFlowLayout" class="org.apache.flex.html.beads.layouts.HorizontalFlowLayout" />
- <component id="TileLayout" class="org.apache.flex.html.beads.layouts.TileLayout"/>
- <component id="ListView" class="org.apache.flex.html.beads.ListView"/>
- <component id="AccordionView" class="org.apache.flex.html.beads.AccordionView"/>
- <component id="CenterElement" class="org.apache.flex.html.beads.CenterElement"/>
- <!--<component id="MultilineTextFieldView" class="org.apache.flex.html.beads.MultilineTextFieldView"/>-->
-
- <component id="SimpleAlert" class="org.apache.flex.html.SimpleAlert"/>
- <component id="Alert" class="org.apache.flex.html.Alert"/>
- <component id="Spinner" class="org.apache.flex.html.Spinner"/>
- <component id="Slider" class="org.apache.flex.html.Slider"/>
- <component id="NumericStepper" class="org.apache.flex.html.NumericStepper" />
- <component id="StringItemRenderer" class="org.apache.flex.html.supportClasses.StringItemRenderer"/>
- <component id="AccordionItemRenderer" class="org.apache.flex.html.supportClasses.AccordionItemRenderer"/>
- <component id="AccordionCollapseBead" class="org.apache.flex.html.beads.AccordionCollapseBead"/>
- <component id="DispatchInputFinishedBead" class="org.apache.flex.html.beads.DispatchInputFinishedBead"/>
- <component id="DispatchKeyboardEventBead" class="org.apache.flex.html.beads.DispatchKeyboardEventBead"/>
- <component id="TreeItemRenderer" class="org.apache.flex.html.supportClasses.TreeItemRenderer"/>
- <component id="DataItemRenderer" class="org.apache.flex.html.supportClasses.DataItemRenderer"/>
- <component id="MXMLItemRenderer" class="org.apache.flex.html.supportClasses.MXMLItemRenderer"/>
- <component id="DateItemRenderer" class="org.apache.flex.html.supportClasses.DateItemRenderer"/>
- <component id="DayNameItemRenderer" class="org.apache.flex.html.supportClasses.DayNameItemRenderer"/>
- <component id="TextButtonItemRenderer" class="org.apache.flex.html.supportClasses.TextButtonItemRenderer"/>
- <!--
- <component id="TextFieldItemRenderer" class="org.apache.flex.html.supportClasses.TextFieldItemRenderer"/>
- <component id="HScrollBar" class="org.apache.flex.html.supportClasses.HScrollBar"/>
- <component id="VScrollBar" class="org.apache.flex.html.supportClasses.VScrollBar"/>
- <component id="HRuleView" class="org.apache.flex.html.beads.HRuleView" />
- <component id="VRuleView" class="org.apache.flex.html.beads.VRuleView" />
- -->
- <component id="UnselectableElementBead" class="org.apache.flex.html.beads.UnselectableElementBead"/>
- <component id="DisableBead" class="org.apache.flex.html.beads.DisableBead" />
- <component id="NumericOnlyTextInputBead" class="org.apache.flex.html.accessories.NumericOnlyTextInputBead" />
- <component id="PasswordInputBead" class="org.apache.flex.html.accessories.PasswordInputBead" />
- <component id="TextPromptBead" class="org.apache.flex.html.accessories.TextPromptBead" />
- <component id="HRule" class="org.apache.flex.html.HRule" />
- <component id="VRule" class="org.apache.flex.html.VRule" />
- <component id="Spacer" class="org.apache.flex.html.Spacer" />
- <!--
- <component id="ImageAndTextButtonView" class="org.apache.flex.html.beads.ImageAndTextButtonView" />
- -->
- <component id="ScrollingViewport" class="org.apache.flex.html.supportClasses.ScrollingViewport" />
- <component id="ClippingViewport" class="org.apache.flex.html.supportClasses.ClippingViewport" />
-
- <component id="ArraySelectionModel" class="org.apache.flex.html.beads.models.ArraySelectionModel" />
- <component id="ArrayListSelectionModel" class="org.apache.flex.html.beads.models.ArrayListSelectionModel" />
-
- <component id="DataGrid" class="org.apache.flex.html.DataGrid"/>
- <component id="DataProviderChangeNotifier" class="org.apache.flex.html.beads.DataProviderChangeNotifier"/>
- <component id="DataProviderCollectionChangeNotifier" class="org.apache.flex.html.beads.DataProviderCollectionChangeNotifier"/>
- <component id="DataProviderItemsChangeNotifier" class="org.apache.flex.html.beads.DataProviderItemsChangeNotifier"/>
- <component id="DataGridButtonBar" class="org.apache.flex.html.DataGridButtonBar"/>
- <component id="DataGridButtonBarTextButton" class="org.apache.flex.html.DataGridButtonBarTextButton"/>
- <component id="DataGridColumn" class="org.apache.flex.html.supportClasses.DataGridColumn"/>
- <component id="DataGridLinesBead" class="org.apache.flex.html.beads.DataGridLinesBead"/>
- <component id="DataGridColumnList" class="org.apache.flex.html.supportClasses.DataGridColumnList"/>
- <component id="DataGridPercentageView" class="org.apache.flex.html.beads.DataGridPercentageView" />
-
- <component id="DataItemRendererFactoryForArrayData" class="org.apache.flex.html.beads.DataItemRendererFactoryForArrayData" />
- <component id="DataItemRendererFactoryForArrayList" class="org.apache.flex.html.beads.DataItemRendererFactoryForArrayList" />
- <component id="DataItemRendererFactoryForHierarchicalData" class="org.apache.flex.html.beads.DataItemRendererFactoryForHierarchicalData" />
- <component id="TextItemRendererFactoryForArrayData" class="org.apache.flex.html.beads.TextItemRendererFactoryForArrayData" />
- <component id="TextItemRendererFactoryForStringVectorData" class="org.apache.flex.html.beads.TextItemRendererFactoryForStringVectorData" />
-
- <component id="DateChooser" class="org.apache.flex.html.DateChooser"/>
- <component id="DateChooserList" class="org.apache.flex.html.supportClasses.DateChooserList" />
- <component id="DateChooserHeader" class="org.apache.flex.html.supportClasses.DateChooserHeader" />
- <component id="DateField" class="org.apache.flex.html.DateField"/>
- <component id="VerticalColumnLayout" class="org.apache.flex.html.beads.layouts.VerticalColumnLayout" />
-
- <component id="ToolTipBead" class="org.apache.flex.html.accessories.ToolTipBead" />
-
- <component id="LayoutChangeNotifier" class="org.apache.flex.html.beads.layouts.LayoutChangeNotifier"/>
- <component id="LayoutOnShow" class="org.apache.flex.html.beads.layouts.LayoutOnShow"/>
- <component id="ImageButton" class="org.apache.flex.html.ImageButton"/>
- <component id="FlexibleFirstChildHorizontalLayout" class="org.apache.flex.html.beads.layouts.FlexibleFirstChildHorizontalLayout"/>
- <component id="OneFlexibleChildVerticalLayout" class="org.apache.flex.html.beads.layouts.OneFlexibleChildVerticalLayout"/>
- <component id="OneFlexibleChildHorizontalLayout" class="org.apache.flex.html.beads.layouts.OneFlexibleChildHorizontalLayout"/>
- <component id="MXMLBeadView" class="org.apache.flex.html.MXMLBeadView"/>
-
- <component id="SubAppLoader" class="org.apache.flex.html.SubAppLoader" />
-
- <component id="Border" class="org.apache.flex.html.supportClasses.Border"/>
-
- <component id="WebBrowser" class="org.apache.flex.html.WebBrowser" />
--
<component id="A" class="org.apache.flex.html.A" />
<component id="H1" class="org.apache.flex.html.H1" />
<component id="H2" class="org.apache.flex.html.H2" />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/TitleView.as
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ViewManagerBase.as
----------------------------------------------------------------------
[04/43] git commit: [flex-asjs] [refs/heads/dual] - Sync Effects with
layout changes.
Posted by ah...@apache.org.
Sync Effects with layout changes.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/d89a0109
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/d89a0109
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/d89a0109
Branch: refs/heads/dual
Commit: d89a0109de12e7ae04acd05f9c94e23686a06565
Parents: 0fc2115
Author: Peter Ent <pe...@apache.org>
Authored: Thu Apr 13 11:44:25 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Apr 13 11:44:25 2017 -0400
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/utils/MockLayoutHost.as | 10 ++++++++++
.../main/flex/org/apache/flex/utils/MockLayoutParent.as | 10 ++++++++++
2 files changed, 20 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d89a0109/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutHost.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutHost.as b/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutHost.as
index b7aaf8f..4b32bc9 100644
--- a/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutHost.as
+++ b/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutHost.as
@@ -33,5 +33,15 @@ package org.apache.flex.utils
{
return _contentView;
}
+
+ public function beforeLayout():void
+ {
+
+ }
+
+ public function afterLayout():void
+ {
+
+ }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d89a0109/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutParent.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutParent.as b/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutParent.as
index fe39f96..1da2b5a 100644
--- a/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutParent.as
+++ b/frameworks/projects/Effects/src/main/flex/org/apache/flex/utils/MockLayoutParent.as
@@ -48,6 +48,16 @@ package org.apache.flex.utils
_layoutHost = new MockLayoutHost(source.getLayoutHost());
_source = source;
}
+
+ public function beforeLayout():void
+ {
+ // TODO ??
+ }
+
+ public function afterLayout():void
+ {
+ // TODO ??
+ }
public function get parent():IParent
{
[15/43] git commit: [flex-asjs] [refs/heads/dual] - fix spelling
errors and add missing semicolon
Posted by ah...@apache.org.
fix spelling errors and add missing semicolon
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/18d62de1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/18d62de1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/18d62de1
Branch: refs/heads/dual
Commit: 18d62de1202587bc53b4f850ed9f23725e596d6a
Parents: fe1ff66
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:41:01 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:41:01 2017 +1000
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/net/URLBinaryLoader.as | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/18d62de1/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLBinaryLoader.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLBinaryLoader.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLBinaryLoader.as
index 5785c62..326ccbe 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLBinaryLoader.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLBinaryLoader.as
@@ -72,7 +72,7 @@ package org.apache.flex.net
public var bytesLoaded:uint = 0;
/**
- * The total number of bytes (if avaailable).
+ * The total number of bytes (if available).
*
* @langversion 3.0
* @playerversion Flash 10.2
@@ -143,7 +143,7 @@ package org.apache.flex.net
}
/**
- * Cancels the URL request
+ * Cancels the URL request.
*
* @langversion 3.0
* @playerversion Flash 10.2
@@ -153,7 +153,7 @@ package org.apache.flex.net
public function close():void
{
stream.close();
- //TODO do we need a callback for camceling?
+ //TODO do we need a callback for canceling?
}
private function completeHandler(event:Event):void
@@ -178,7 +178,7 @@ package org.apache.flex.net
private function progressHandler(event:ProgressEvent):void
{
- this.bytesLoaded = event.current
+ this.bytesLoaded = event.current;
this.bytesTotal = event.total;
dispatchEvent(event);
if(onProgress)
[13/43] git commit: [flex-asjs] [refs/heads/dual] - remove blank line
Posted by ah...@apache.org.
remove blank line
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/242fb730
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/242fb730
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/242fb730
Branch: refs/heads/dual
Commit: 242fb730d054212c20735dea35b2785be5d944f2
Parents: 4d09ccf
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 10:40:04 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 10:40:04 2017 +1000
----------------------------------------------------------------------
.../Network/src/main/flex/org/apache/flex/net/HTTPService.as | 1 -
1 file changed, 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/242fb730/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
index 3a9968c..fdb387f 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
@@ -618,7 +618,6 @@ package org.apache.flex.net
}
}
-
if (_method !== HTTPConstants.GET &&
!sawContentType && contentData) {
element.setRequestHeader(
[25/43] git commit: [flex-asjs] [refs/heads/dual] - be consistent in
style
Posted by ah...@apache.org.
be consistent in style
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/060f9820
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/060f9820
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/060f9820
Branch: refs/heads/dual
Commit: 060f9820f5c06a25dd1eeba139466f6d17841fee
Parents: d8a5c63
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 09:40:24 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 09:40:24 2017 +1000
----------------------------------------------------------------------
.../main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/060f9820/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
index be02408..08d5a3a 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/beads/CORSCredentialsBead.as
@@ -85,13 +85,11 @@ public class CORSCredentialsBead implements IBead {
*
* @productversion FlexJS 0.8
*/
- public function get withCredentials():Boolean
- {
+ public function get withCredentials():Boolean {
return _withCredentials;
}
- public function set withCredentials(value:Boolean):void
- {
+ public function set withCredentials(value:Boolean):void {
_withCredentials = value;
}
}
[20/43] git commit: [flex-asjs] [refs/heads/dual] - add pre and post
send events
Posted by ah...@apache.org.
add pre and post send events
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/25d67e11
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/25d67e11
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/25d67e11
Branch: refs/heads/dual
Commit: 25d67e117275f40e5844d2d039a775e2f3995cfc
Parents: 3fa62e7
Author: Justin Mclean <jm...@apache.org>
Authored: Sun Apr 16 13:22:08 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Sun Apr 16 13:22:08 2017 +1000
----------------------------------------------------------------------
.../Network/src/main/flex/org/apache/flex/net/HTTPService.as | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/25d67e11/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
index fdb387f..ea3b7b3 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
@@ -536,7 +536,9 @@ package org.apache.flex.net
for each (var bead:IBead in beads)
addBead(bead);
}
-
+
+ dispatchEvent(new Event("preSend"));
+
COMPILE::SWF
{
if (!urlLoader)
@@ -631,6 +633,8 @@ package org.apache.flex.net
}
}
+
+ dispatchEvent(new Event("postSend"));
}
/**
[02/43] git commit: [flex-asjs] [refs/heads/dual] - Move layout event
control into LayoutBase from GroupView and updated affected classes. Updated
chart layouts to conform to new layout protocol.
Posted by ah...@apache.org.
Move layout event control into LayoutBase from GroupView and updated affected classes. Updated chart layouts to conform to new layout protocol.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/87efeed5
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/87efeed5
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/87efeed5
Branch: refs/heads/dual
Commit: 87efeed5750b3ecb94754e3dcd1156333102834d
Parents: ae5cb4e
Author: Peter Ent <pe...@apache.org>
Authored: Thu Apr 13 10:17:13 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Apr 13 10:17:13 2017 -0400
----------------------------------------------------------------------
.../org/apache/flex/charts/beads/ChartView.as | 12 +-
.../flex/charts/beads/layouts/BarChartLayout.as | 6 +-
.../beads/layouts/BarChartLayoutForArrayList.as | 8 +-
.../charts/beads/layouts/ChartBaseLayout.as | 25 ++--
.../charts/beads/layouts/ColumnChartLayout.as | 6 +-
.../layouts/ColumnChartLayoutForArrayList.as | 6 +-
.../layouts/LineChartCategoryVsLinearLayout.as | 6 +-
.../layouts/LineChartLinearVsLinearLayout.as | 6 +-
.../flex/charts/beads/layouts/PieChartLayout.as | 6 +-
.../beads/layouts/PieChartLayoutForArrayList.as | 6 +-
.../beads/layouts/StackedBarChartLayout.as | 6 +-
.../StackedBarChartLayoutForArrayList.as | 6 +-
.../beads/layouts/StackedColumnChartLayout.as | 6 +-
.../StackedColumnChartLayoutForArrayList.as | 6 +-
.../flex/org/apache/flex/core/ILayoutHost.as | 20 ++++
.../main/flex/org/apache/flex/core/GroupBase.as | 13 ++
.../flex/org/apache/flex/core/LayoutBase.as | 118 +++++++++++++++++++
.../html/beads/AccordionItemRendererView.as | 2 +-
.../org/apache/flex/html/beads/ContainerView.as | 46 ++++----
.../apache/flex/html/beads/DataContainerView.as | 25 ++--
.../org/apache/flex/html/beads/GroupView.as | 112 +-----------------
.../flex/html/beads/layouts/ButtonBarLayout.as | 3 +
.../ButtonBarButtonItemRenderer.as | 9 +-
.../html/supportClasses/MXMLItemRenderer.as | 10 ++
.../HTML/src/main/resources/defaults.css | 1 +
25 files changed, 282 insertions(+), 188 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
index 0d089c6..2dd7d81 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
@@ -165,14 +165,6 @@ package org.apache.flex.charts.beads
dataGroup.removeAllItemRenderers();
}
-
- /**
- * @private
- */
- override protected function handleChildrenAdded(event:Event):void
- {
- // ignore for charts.
- }
/**
* ChartView overrides performLayout so that the exact area of the ChartDataGroup can
@@ -184,7 +176,7 @@ package org.apache.flex.charts.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function layoutViewBeforeContentLayout():void
+ override public function beforeLayout():void
{
var metrics:Rectangle = CSSContainerUtils.getBorderAndPaddingMetrics(_strand);
@@ -233,7 +225,7 @@ package org.apache.flex.charts.beads
/**
* @private
*/
- override protected function layoutViewAfterContentLayout():void
+ override public function afterLayout():void
{
// ignore for charts
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayout.as
index 4172b1c..3419dbf 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayout.as
@@ -76,12 +76,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var n:int = dp.length;
var useWidth:Number = UIBase(chartDataGroup).width;
@@ -148,6 +148,8 @@ package org.apache.flex.charts.beads.layouts
ypos -= gap;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayoutForArrayList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayoutForArrayList.as
index 39710e8..049055f 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/BarChartLayoutForArrayList.as
@@ -56,14 +56,14 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:ArrayList = selectionModel.dataProvider as ArrayList;
if (!dp)
- return;
+ return false;
if (dp.length == 0)
- return;
+ return false;
var n:int = dp.length;
var useWidth:Number = UIBase(chartDataGroup).width;
@@ -130,6 +130,8 @@ package org.apache.flex.charts.beads.layouts
ypos -= gap;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ChartBaseLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ChartBaseLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ChartBaseLayout.as
index 24760b4..5b8d1ff 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ChartBaseLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ChartBaseLayout.as
@@ -22,16 +22,18 @@ package org.apache.flex.charts.beads.layouts
import org.apache.flex.charts.core.IChartDataGroup;
import org.apache.flex.charts.core.IHorizontalAxisBead;
import org.apache.flex.charts.core.IVerticalAxisBead;
+ import org.apache.flex.core.LayoutBase;
import org.apache.flex.core.IBeadLayout;
import org.apache.flex.core.ILayoutHost;
import org.apache.flex.core.IStrand;
import org.apache.flex.events.Event;
import org.apache.flex.events.IEventDispatcher;
- public class ChartBaseLayout implements IBeadLayout
+ public class ChartBaseLayout extends LayoutBase implements IBeadLayout
{
public function ChartBaseLayout()
{
+ super();
}
private var _strand:IStrand;
@@ -44,8 +46,9 @@ package org.apache.flex.charts.beads.layouts
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public function set strand(value:IStrand):void
+ override public function set strand(value:IStrand):void
{
+ super.strand = value;
_strand = value;
}
public function get strand():IStrand
@@ -125,11 +128,11 @@ package org.apache.flex.charts.beads.layouts
/**
* @copy org.apache.flex.core.IBeadLayout#layout
*/
- public function layout():Boolean
- {
- performLayout();
- return true;
- }
+// public function layout():Boolean
+// {
+// performLayout();
+// return true;
+// }
/**
* Subclasses should implement this to draw the chart, adding elements to the chartDataGroup.
@@ -139,9 +142,9 @@ package org.apache.flex.charts.beads.layouts
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- protected function performLayout():void
- {
- // implement in subclass
- }
+// protected function performLayout():void
+// {
+// // implement in subclass
+// }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayout.as
index 56f5f10..cad0ede 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayout.as
@@ -67,12 +67,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var n:int = dp.length;
var xpos:Number = 0;
@@ -137,6 +137,8 @@ package org.apache.flex.charts.beads.layouts
xpos += gap;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayoutForArrayList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayoutForArrayList.as
index 64b065d..93387da 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/ColumnChartLayoutForArrayList.as
@@ -56,12 +56,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:ArrayList = selectionModel.dataProvider as ArrayList;
if (!dp)
- return;
+ return false;
var n:int = dp.length;
var xpos:Number = 0;
@@ -126,6 +126,8 @@ package org.apache.flex.charts.beads.layouts
xpos += gap;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartCategoryVsLinearLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
index 10b1324..505abb1 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
@@ -49,12 +49,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -149,6 +149,8 @@ package org.apache.flex.charts.beads.layouts
renderer.points = seriesPoints[s].points;
}
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartLinearVsLinearLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartLinearVsLinearLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartLinearVsLinearLayout.as
index 4dd0ab3..8b410d3 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartLinearVsLinearLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/LineChartLinearVsLinearLayout.as
@@ -49,12 +49,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -163,6 +163,8 @@ package org.apache.flex.charts.beads.layouts
renderer.points = seriesPoints[s].points;
}
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayout.as
index 0ec982a..c49e47d 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayout.as
@@ -57,12 +57,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -133,6 +133,8 @@ package org.apache.flex.charts.beads.layouts
start += arc;
}
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayoutForArrayList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayoutForArrayList.as
index f206cc4..1acedb3 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/PieChartLayoutForArrayList.as
@@ -59,12 +59,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:ArrayList = selectionModel.dataProvider as ArrayList;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -135,6 +135,8 @@ package org.apache.flex.charts.beads.layouts
start += arc;
}
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayout.as
index 61a910e..6795755 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayout.as
@@ -77,12 +77,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -161,6 +161,8 @@ package org.apache.flex.charts.beads.layouts
ypos -= (itemHeight + gap);
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
index 9edab56..f91add4 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
@@ -58,12 +58,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:ArrayList = selectionModel.dataProvider as ArrayList;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -142,6 +142,8 @@ package org.apache.flex.charts.beads.layouts
ypos -= (itemHeight + gap);
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayout.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayout.as
index fbe5989..0879769 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayout.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayout.as
@@ -76,12 +76,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:Array = selectionModel.dataProvider as Array;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -158,6 +158,8 @@ package org.apache.flex.charts.beads.layouts
xpos += gap + itemWidth;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
index 355205a..bc1a136 100644
--- a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
@@ -57,12 +57,12 @@ package org.apache.flex.charts.beads.layouts
/**
* @private
*/
- override protected function performLayout():void
+ override public function layout():Boolean
{
var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
var dp:ArrayList = selectionModel.dataProvider as ArrayList;
if (!dp)
- return;
+ return false;
var layoutParent:ILayoutHost = strand.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
@@ -139,6 +139,8 @@ package org.apache.flex.charts.beads.layouts
xpos += gap + itemWidth;
}
+
+ return true;
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ILayoutHost.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ILayoutHost.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ILayoutHost.as
index dfd85d6..06d3084 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ILayoutHost.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ILayoutHost.as
@@ -40,5 +40,25 @@ package org.apache.flex.core
* @productversion FlexJS 0.8
*/
function get contentView():ILayoutView;
+
+ /**
+ * Invoked prior to performing the layout.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ function beforeLayout():void;
+
+ /**
+ * Invoked after performing the layout.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ function afterLayout():void;
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
index e4dfb1f..815101a 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
@@ -101,6 +101,19 @@ package org.apache.flex.core
return element;
}
+ override public function addedToParent():void
+ {
+ super.addedToParent();
+
+ // Load the layout bead if it hasn't already been loaded.
+ var layout:IBeadLayout = getBeadByType(IBeadLayout) as IBeadLayout;
+ if (!layout)
+ {
+ layout = new (ValuesManager.valuesImpl.getValue(this, "iBeadLayout")) as IBeadLayout;
+ addBead(layout);
+ }
+ }
+
/*
* IContainer
*/
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/LayoutBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/LayoutBase.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/LayoutBase.as
index dde6448..f23f035 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/LayoutBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/LayoutBase.as
@@ -27,6 +27,8 @@ package org.apache.flex.core
import org.apache.flex.core.IParent;
import org.apache.flex.core.IStrand;
import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.events.Event;
import org.apache.flex.utils.CSSUtils;
/**
@@ -76,6 +78,92 @@ package org.apache.flex.core
public function set strand(value:IStrand):void
{
host = value as ILayoutChild;
+
+ IEventDispatcher(host).addEventListener("widthChanged", handleSizeChange);
+ IEventDispatcher(host).addEventListener("heightChanged", handleSizeChange);
+ IEventDispatcher(host).addEventListener("sizeChanged", handleSizeChange);
+
+ IEventDispatcher(host).addEventListener("childrenAdded", handleChildrenAdded);
+ IEventDispatcher(host).addEventListener("initComplete", handleInitComplete);
+
+ IEventDispatcher(host).addEventListener("layoutNeeded", handleLayoutNeeded);
+ }
+
+ /**
+ * Changes in size to the host strand are handled (by default) by running the
+ * layout sequence. Subclasses can override this function and use event.type
+ * to handle specific changes in dimension.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function handleSizeChange(event:Event):void
+ {
+ performLayout();
+ }
+
+ /**
+ * Handles the addition of children to the host's layoutView by listening for
+ * size changes in the children.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function handleChildrenAdded(event:Event):void
+ {
+ COMPILE::SWF {
+ var n:Number = layoutView.numElements;
+ for(var i:int=0; i < n; i++) {
+ var child:IEventDispatcher = layoutView.getElementAt(i) as IEventDispatcher;
+ child.addEventListener("widthChanged", childResizeHandler);
+ child.addEventListener("heightChanged", childResizeHandler);
+ child.addEventListener("sizeChanged", childResizeHandler);
+ }
+ }
+ }
+
+ /**
+ * If changes happen to a layoutView's child, this function will perform the
+ * layout again.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function childResizeHandler(event:Event):void
+ {
+ performLayout();
+ }
+
+ /**
+ * Called whenever "layoutNeeded" event is dispatched against the host strand.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function handleLayoutNeeded(event:Event):void
+ {
+ performLayout();
+ }
+
+ /**
+ * Handles the final start-up condition by running the layout an initial time.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function handleInitComplete(event:Event):void
+ {
+ performLayout();
}
/**
@@ -148,6 +236,36 @@ package org.apache.flex.core
var viewBead:ILayoutHost = (host as ILayoutParent).getLayoutHost();
return viewBead.contentView;
}
+
+ private var isLayoutRunning:Boolean = false;
+
+ /**
+ * Performs the layout in three parts: before, layout, after.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function performLayout():void
+ {
+ // avoid running this layout instance recursively.
+ if (isLayoutRunning) return;
+
+ isLayoutRunning = true;
+
+ var viewBead:ILayoutHost = (host as ILayoutParent).getLayoutHost();
+
+ viewBead.beforeLayout();
+
+ if (layout()) {
+ viewBead.afterLayout();
+ }
+
+ isLayoutRunning = false;
+
+ IEventDispatcher(host).dispatchEvent(new Event("layoutComplete"));
+ }
/**
* @copy org.apache.flex.core.IBeadLayout#layout
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
index bc9f89d..85e2b79 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
@@ -58,7 +58,7 @@ package org.apache.flex.html.beads
{
COMPILE::SWF {
// no longer needed layoutViewBeforeContentLayout();
- layoutViewAfterContentLayout();
+ afterLayout();
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
index 4de5634..ac723a9 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
@@ -166,7 +166,7 @@ package org.apache.flex.html.beads
// when the first layout is complete, set up listeners for changes
// to the childrens' sizes.
- host.addEventListener("layoutComplete", childrenChangedHandler);
+// host.addEventListener("layoutComplete", childrenChangedHandler);
}
/**
@@ -229,7 +229,7 @@ package org.apache.flex.html.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function layoutViewBeforeContentLayout():void
+ override public function beforeLayout():void
{
var host:ILayoutChild = this.host as ILayoutChild;
var vm:IViewportModel = viewportModel;
@@ -259,13 +259,13 @@ package org.apache.flex.html.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function layoutViewAfterContentLayout():void
+ override public function afterLayout():void
{
if (adjusting) return;
adjusting = true;
- super.layoutViewAfterContentLayout();
+ super.afterLayout();
var contentSize:Size = calculateContentSize();
viewport.layoutViewportAfterContentLayout(contentSize);
@@ -282,12 +282,12 @@ package org.apache.flex.html.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function resizeHandler(event:Event):void
- {
- if (!adjusting) {
- performLayout(event);
- }
- }
+// override protected function resizeHandler(event:Event):void
+// {
+// if (!adjusting) {
+// performLayout(event);
+// }
+// }
/**
* Whenever children are added, listeners are added to detect changes
@@ -298,19 +298,19 @@ package org.apache.flex.html.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- protected function childrenChangedHandler(event:Event):void
- {
- var host:UIBase = _strand as UIBase;
- host.removeEventListener(event.type, childrenChangedHandler);
-
- var n:Number = contentView.numElements;
- for (var i:int=0; i < n; i++) {
- var child:IUIBase = contentView.getElementAt(i) as IUIBase;
- child.addEventListener("widthChanged", childResizeHandler);
- child.addEventListener("heightChanged", childResizeHandler);
- child.addEventListener("sizeChanged", childResizeHandler);
- }
- }
+// protected function childrenChangedHandler(event:Event):void
+// {
+// var host:UIBase = _strand as UIBase;
+// host.removeEventListener(event.type, childrenChangedHandler);
+//
+// var n:Number = contentView.numElements;
+// for (var i:int=0; i < n; i++) {
+// var child:IUIBase = contentView.getElementAt(i) as IUIBase;
+// child.addEventListener("widthChanged", childResizeHandler);
+// child.addEventListener("heightChanged", childResizeHandler);
+// child.addEventListener("sizeChanged", childResizeHandler);
+// }
+// }
}
COMPILE::JS
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
index 36ed489..6d1eae5 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
@@ -24,16 +24,17 @@ package org.apache.flex.html.beads
import org.apache.flex.core.IBeadLayout;
import org.apache.flex.core.IBeadModel;
import org.apache.flex.core.IBeadView;
- import org.apache.flex.core.IList;
- import org.apache.flex.core.ISelectableItemRenderer;
+ import org.apache.flex.core.IDataProviderModel;
import org.apache.flex.core.IItemRenderer;
import org.apache.flex.core.IItemRendererParent;
+ import org.apache.flex.core.IList;
import org.apache.flex.core.IParent;
- import org.apache.flex.core.IParentIUIBase;
- import org.apache.flex.core.IDataProviderModel;
+ import org.apache.flex.core.IParentIUIBase;
+ import org.apache.flex.core.ISelectableItemRenderer;
import org.apache.flex.core.ISelectionModel;
import org.apache.flex.core.IStrand;
- import org.apache.flex.core.IUIBase;
+ import org.apache.flex.core.IUIBase;
+ import org.apache.flex.core.LayoutBase;
import org.apache.flex.core.Strand;
import org.apache.flex.core.UIBase;
import org.apache.flex.core.ValuesManager;
@@ -108,7 +109,8 @@ package org.apache.flex.html.beads
*/
protected function itemsCreatedHandler(event:Event):void
{
- performLayout(event);
+ trace("DataContainerView: itemsCreatedHandler");
+ host.dispatchEvent(new Event("layoutNeeded"));
}
/**
@@ -116,6 +118,7 @@ package org.apache.flex.html.beads
*/
protected function dataProviderChangeHandler(event:Event):void
{
+ trace("DataContainerView: dataProviderChangeHandler");
performLayout(event);
}
}
@@ -152,6 +155,7 @@ package org.apache.flex.html.beads
super.strand = value;
host.addEventListener("beadsAdded", beadsAddedHandler);
+ host.addEventListener("itemsCreated", itemsCreatedHandler);
}
override protected function completeSetup():void
@@ -160,9 +164,8 @@ package org.apache.flex.html.beads
// list is not interested in UI children, it wants to know when new items
// have been added or the dataProvider has changed.
- host.removeEventListener("childrenAdded", childrenChangedHandler);
- host.removeEventListener("childrenAdded", performLayout);
- host.addEventListener("itemsCreated", itemsCreatedHandler);
+// host.removeEventListener("childrenAdded", childrenChangedHandler);
+// host.removeEventListener("childrenAdded", performLayout);
}
protected function beadsAddedHandler(event:Event):void
@@ -202,7 +205,8 @@ package org.apache.flex.html.beads
*/
protected function itemsCreatedHandler(event:Event):void
{
- performLayout(event);
+ trace("DataContainerView: itemsCreatedHandler");
+ host.dispatchEvent(new Event("layoutNeeded"));
}
/**
@@ -210,6 +214,7 @@ package org.apache.flex.html.beads
*/
protected function dataProviderChangeHandler(event:Event):void
{
+ trace("DataContainerView: dataProviderChangeHandler");
performLayout(event);
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
index c3351a5..acd805d 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
@@ -118,13 +118,6 @@ package org.apache.flex.html.beads
// listen for initComplete to signal that the strand has been initialized
// with its beads and children.
host.addEventListener("initComplete", handleInitComplete);
-
- // listen for when children have been added so additional event listeners
- // can be placed upon them.
- host.addEventListener("childrenAdded", handleChildrenAdded);
-
- // listen for requests to run the layout.
- host.addEventListener("layoutNeeded", performLayout);
}
/**
@@ -169,12 +162,6 @@ package org.apache.flex.html.beads
host.removeEventListener("heightChanged", deferredSizeHandler);
completeSetup();
-
- var num:Number = contentView.numElements;
- if (num > 0)
- {
- performLayout(event);
- }
}
/**
@@ -193,42 +180,6 @@ package org.apache.flex.html.beads
host.addEventListener("widthChanged", resizeHandler);
host.addEventListener("heightChanged", resizeHandler);
}
-
- /**
- * Handles the viewCreated event by performing the first layout if
- * there are children already present (ie, from MXML).
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- protected function viewCreatedHandler(event:Event):void
- {
- var num:Number = contentView.numElements;
- if (num > 0)
- {
- performLayout(event);
- }
- }
-
- /**
- * @private
- */
- protected function handleChildrenAdded(event:Event):void
- {
- COMPILE::SWF {
- var n:Number = contentView.numElements;
- for(var i:int=0; i < n; i++) {
- var child:IEventDispatcher = contentView.getElementAt(i) as IEventDispatcher;
- child.addEventListener("widthChanged", childResizeHandler);
- child.addEventListener("heightChanged", childResizeHandler);
- child.addEventListener("sizeChanged", childResizeHandler);
- }
- }
-
- performLayout(event);
- }
/**
* Invoked in response to the strand being resized.
@@ -240,20 +191,8 @@ package org.apache.flex.html.beads
*/
protected function resizeHandler(event:Event):void
{
- performLayout(event);
- }
-
- /**
- * Invoked in response to any child being resized.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- protected function childResizeHandler(event:Event):void
- {
- performLayout(event);
+ // override in subclasses in case there is something besides running
+ // the layout (which is handled automatically by the layout itself).
}
/**
@@ -264,7 +203,7 @@ package org.apache.flex.html.beads
* @playerversion AIR 2.6
* @productversion FlexJS 0.8
*/
- protected function layoutViewBeforeContentLayout():void
+ public function beforeLayout():void
{
// This has no use for Group but is here so a subclass can override it.
}
@@ -281,34 +220,7 @@ package org.apache.flex.html.beads
*/
protected function performLayout(event:Event):void
{
- if (layoutRunning) return;
-
- layoutRunning = true;
-
- // pre-process before layout
- layoutViewBeforeContentLayout();
-
- var host:UIBase = _strand as UIBase;
-
- var layout:IBeadLayout = _strand.getBeadByType(IBeadLayout) as IBeadLayout;
- if (layout == null) {
- var c:Class = ValuesManager.valuesImpl.getValue(host, "iBeadLayout");
- if (c) {
- layout = new c() as IBeadLayout;
- _strand.addBead(layout);
- }
- }
-
- if (layout) {
- layout.layout();
- }
-
- // cleanup or adjust after layout
- layoutViewAfterContentLayout();
-
- layoutRunning = false;
-
- host.dispatchEvent(new Event("layoutComplete"));
+ trace("CALLING performLayout !!!!");
}
/**
@@ -344,11 +256,6 @@ package org.apache.flex.html.beads
}
/**
- * @private
- */
- private var adjusting:Boolean = false;
-
- /**
* Adjusts the size of the host after the layout has been run.
*
* @langversion 3.0
@@ -357,14 +264,9 @@ package org.apache.flex.html.beads
* @productversion FlexJS 0.0
*/
COMPILE::SWF
- protected function layoutViewAfterContentLayout():void
+ public function afterLayout():void
{
- if (adjusting) return;
-
var host:UIBase = _strand as UIBase;
-
- adjusting = true;
-
var contentSize:Size = calculateContentSize();
if (host.isWidthSizedToContent() && host.isHeightSizedToContent()) {
@@ -378,12 +280,10 @@ package org.apache.flex.html.beads
{
host.setWidth(contentSize.width, true);
}
-
- adjusting = false;
}
COMPILE::JS
- protected function layoutViewAfterContentLayout():void
+ public function afterLayout():void
{
// maybe useful in a subclass on the JS side.
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
index 761e1c7..f4b0e81 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
@@ -37,6 +37,7 @@ package org.apache.flex.html.beads.layouts
import org.apache.flex.html.List;
import org.apache.flex.html.beads.ButtonBarView;
import org.apache.flex.html.beads.models.ButtonBarModel;
+ import org.apache.flex.html.supportClasses.UIItemRendererBase;
import org.apache.flex.geom.Rectangle;
import org.apache.flex.utils.CSSUtils;
import org.apache.flex.utils.CSSContainerUtils;
@@ -162,6 +163,8 @@ package org.apache.flex.html.beads.layouts
UIBase(ir).height = contentView.height;
}
+
+ UIItemRendererBase(ir).adjustSize();
}
// now let the horizontal layout take care of things.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
index 214125e..04049ef 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ButtonBarButtonItemRenderer.as
@@ -155,8 +155,13 @@ package org.apache.flex.html.supportClasses
*/
override public function adjustSize():void
{
- textButton.width = this.width;
- textButton.height = this.height;
+ COMPILE::SWF {
+ textButton.width = this.width;
+ textButton.height = this.height;
+ }
+ COMPILE::JS {
+ textButton.percentWidth = 100;
+ }
updateRenderer();
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
index de1b304..d9b130e 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/MXMLItemRenderer.as
@@ -78,6 +78,16 @@ package org.apache.flex.html.supportClasses
layout.layout();
}
}
+
+ public function beforeLayout():void
+ {
+
+ }
+
+ public function afterLayout():void
+ {
+
+ }
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/87efeed5/frameworks/projects/HTML/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/resources/defaults.css b/frameworks/projects/HTML/src/main/resources/defaults.css
index 88d24c5..78cb15d 100644
--- a/frameworks/projects/HTML/src/main/resources/defaults.css
+++ b/frameworks/projects/HTML/src/main/resources/defaults.css
@@ -493,6 +493,7 @@ TitleBar
padding: 2px;
height: 30px;
flex-grow: 0;
+ min-height: 30px;
}
TitleBar .TitleBarCloseButton {
[27/43] git commit: [flex-asjs] [refs/heads/dual] - middle endian
dates are not used outside the US and should not be the default
Posted by ah...@apache.org.
middle endian dates are not used outside the US and should not be the default
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/df2e0fbf
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/df2e0fbf
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/df2e0fbf
Branch: refs/heads/dual
Commit: df2e0fbfcb420480d3af6f8f7a0758e781cbef2a
Parents: 1bb8759
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 13:22:44 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 13:22:44 2017 +1000
----------------------------------------------------------------------
frameworks/projects/Basic/src/main/resources/defaults.css | 2 +-
frameworks/projects/Flat/src/main/resources/defaults.css | 2 +-
frameworks/projects/HTML/src/main/resources/defaults.css | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/df2e0fbf/frameworks/projects/Basic/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/resources/defaults.css b/frameworks/projects/Basic/src/main/resources/defaults.css
index 431c564..5ce20fb 100644
--- a/frameworks/projects/Basic/src/main/resources/defaults.css
+++ b/frameworks/projects/Basic/src/main/resources/defaults.css
@@ -174,7 +174,7 @@ DateField {
IBeadView: ClassReference("org.apache.flex.html.beads.DateFieldView");
IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateFieldMouseController");
- IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatMMDDYYYYBead");
+ IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatYYYYMMDDBead");
}
RangeStepper {
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/df2e0fbf/frameworks/projects/Flat/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Flat/src/main/resources/defaults.css b/frameworks/projects/Flat/src/main/resources/defaults.css
index c0f0770..2e253f3 100644
--- a/frameworks/projects/Flat/src/main/resources/defaults.css
+++ b/frameworks/projects/Flat/src/main/resources/defaults.css
@@ -214,7 +214,7 @@ DateField {
IBeadView: ClassReference("org.apache.flex.html.beads.DateFieldView");
IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateFieldMouseController");
- IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatMMDDYYYYBead");
+ IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatYYYYMMDDBead");
}
.dropdown-menu {
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/df2e0fbf/frameworks/projects/HTML/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/resources/defaults.css b/frameworks/projects/HTML/src/main/resources/defaults.css
index 78cb15d..bd1211b 100644
--- a/frameworks/projects/HTML/src/main/resources/defaults.css
+++ b/frameworks/projects/HTML/src/main/resources/defaults.css
@@ -272,7 +272,7 @@ DateField {
IBeadView: ClassReference("org.apache.flex.html.beads.DateFieldView");
IBeadModel: ClassReference("org.apache.flex.html.beads.models.DateChooserModel");
IBeadController: ClassReference("org.apache.flex.html.beads.controllers.DateFieldMouseController");
- IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatMMDDYYYYBead");
+ IFormatBead: ClassReference("org.apache.flex.html.accessories.DateFormatYYYYMMDDBead");
}
/* RangeStepper */
[41/43] git commit: [flex-asjs] [refs/heads/dual] - Merge branch
'develop' into dual
Posted by ah...@apache.org.
Merge branch 'develop' into dual
Conflicts:
examples/flexjs/MobileTrader/build.xml
frameworks/projects/HTML/src/main/flex/HTMLClasses.as
frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as
frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DateField.as
frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataGridView.as
frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
frameworks/projects/HTML/src/main/resources/basic-manifest.xml
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1691921e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1691921e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1691921e
Branch: refs/heads/dual
Commit: 1691921e7caa62fbfd7985bd1206462d1df976c5
Parents: 358a06f b1ba88e
Author: Alex Harui <ah...@apache.org>
Authored: Tue Apr 18 23:20:18 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Tue Apr 18 23:20:18 2017 -0700
----------------------------------------------------------------------
examples/flexjs/MobileTrader/build.xml | 35 +-
.../src/main/flex/MobileTrader.mxml | 3 +
.../src/main/flex/MyInitialView.mxml | 135 ++-
.../flex/controller/DataModelChangeNotifier.as | 71 ++
.../src/main/flex/views/AlertsView.mxml | 23 +-
.../src/main/flex/views/AssetsView.mxml | 21 +-
.../src/main/flex/views/WatchListView.mxml | 24 +-
.../Basic/src/main/flex/BasicClasses.as | 2 +-
.../main/flex/org/apache/flex/core/GroupBase.as | 16 +
.../flex/org/apache/flex/core/LayoutBase.as | 118 ++
.../main/flex/org/apache/flex/html/DataGrid.as | 24 +-
.../main/flex/org/apache/flex/html/DateField.as | 23 +
.../html/beads/AccordionItemRendererView.as | 2 +-
.../org/apache/flex/html/beads/ContainerView.as | 46 +-
.../apache/flex/html/beads/DataContainerView.as | 25 +-
.../org/apache/flex/html/beads/DataGridView.as | 2 +-
.../org/apache/flex/html/beads/GroupView.as | 135 +--
.../flex/html/beads/layouts/ButtonBarLayout.as | 65 +-
.../html/beads/layouts/HorizontalFlexLayout.as | 1 +
.../html/beads/layouts/VerticalFlexLayout.as | 1 +
.../html/supportClasses/MXMLItemRenderer.as | 10 +
.../supportClasses/TextButtonItemRenderer.as | 244 +++++
.../Basic/src/main/resources/basic-manifest.xml | 2 +-
.../Basic/src/main/resources/defaults.css | 1035 ++++++++++--------
.../org/apache/flex/charts/beads/ChartView.as | 28 +-
.../flex/charts/beads/layouts/BarChartLayout.as | 6 +-
.../beads/layouts/BarChartLayoutForArrayList.as | 8 +-
.../charts/beads/layouts/ChartBaseLayout.as | 25 +-
.../charts/beads/layouts/ColumnChartLayout.as | 6 +-
.../layouts/ColumnChartLayoutForArrayList.as | 6 +-
.../layouts/LineChartCategoryVsLinearLayout.as | 6 +-
.../layouts/LineChartLinearVsLinearLayout.as | 6 +-
.../flex/charts/beads/layouts/PieChartLayout.as | 6 +-
.../beads/layouts/PieChartLayoutForArrayList.as | 6 +-
.../beads/layouts/StackedBarChartLayout.as | 6 +-
.../StackedBarChartLayoutForArrayList.as | 6 +-
.../beads/layouts/StackedColumnChartLayout.as | 6 +-
.../StackedColumnChartLayoutForArrayList.as | 6 +-
.../flex/org/apache/flex/core/ILayoutHost.as | 20 +
.../org/apache/flex/utils/MockLayoutHost.as | 10 +
.../org/apache/flex/utils/MockLayoutParent.as | 10 +
.../Express/src/main/resources/defaults.css | 9 +-
.../src/main/resources/express-manifest.xml | 1 +
.../Flat/src/main/resources/defaults.css | 2 +-
.../src/main/flex/FormattersClasses.as | 3 +
.../html/accessories/DateFormatDDMMYYYYBead.as | 46 +
.../html/accessories/DateFormatMMDDYYYYBead.as | 129 +--
.../html/accessories/DateFormatYYYYMMDDBead.as | 46 +
.../html/accessories/SimpleDateFormatBead.as | 222 ++++
.../HTML/src/main/resources/basic-manifest.xml | 2 -
.../HTML/src/main/resources/defaults.css | 15 +-
.../apache/flex/mobile/StackedViewManager.as | 29 +-
.../org/apache/flex/mobile/TabbedViewManager.as | 10 +
.../flex/org/apache/flex/mobile/TitleView.as | 4 -
.../org/apache/flex/mobile/ViewManagerBase.as | 56 +-
.../flex/mobile/beads/StackedViewManagerView.as | 147 ++-
.../flex/mobile/beads/TabbedViewManagerView.as | 127 ++-
.../flex/mobile/beads/ViewManagerViewBase.as | 139 +--
.../Mobile/src/main/resources/defaults.css | 30 +
.../Network/src/main/flex/NetworkClasses.as | 4 +-
.../flex/org/apache/flex/net/BinaryUploader.as | 16 +-
.../flex/org/apache/flex/net/HTTPConstants.as | 30 +-
.../main/flex/org/apache/flex/net/HTTPHeader.as | 23 +-
.../flex/org/apache/flex/net/HTTPService.as | 9 +-
.../main/flex/org/apache/flex/net/HTTPUtils.as | 19 +-
.../flex/org/apache/flex/net/URLBinaryLoader.as | 8 +-
.../main/flex/org/apache/flex/net/URLRequest.as | 32 +-
.../org/apache/flex/net/URLRequestHeader.as | 9 +-
.../main/flex/org/apache/flex/net/URLStream.as | 137 ++-
.../flex/net/beads/CORSCredentialsBead.as | 96 ++
.../src/main/resources/basic-manifest.xml | 1 +
71 files changed, 2369 insertions(+), 1262 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/examples/flexjs/MobileTrader/build.xml
----------------------------------------------------------------------
diff --cc examples/flexjs/MobileTrader/build.xml
index e331b36,81fd570..c34f553
--- a/examples/flexjs/MobileTrader/build.xml
+++ b/examples/flexjs/MobileTrader/build.xml
@@@ -29,7 -29,41 +29,40 @@@
<include file="${basedir}/../../build_example.xml" />
- <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
+ <condition property="extlib_arg" value="-external-library-path=${FLEXJS_HOME}/js/libs/js.swc" >
+ <and>
+ <not>
+ <isset property="extlib_arg" />
+ </not>
+ <available file="${FLEXJS_HOME}/js/libs/js.swc" type="file" />
+ </and>
+ </condition>
+ <condition property="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../js/libs/js.swc" >
+ <and>
+ <not>
+ <isset property="extlib_arg" />
+ </not>
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" type="file" />
+ </and>
+ </condition>
+ <property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/js/out/bin/js.swc"/>
+
- <target name="main" depends="clean,build_example.compile,build_example.compilejs,copyassets" description="Clean build of ${example}">
++ <target name="main" depends="clean,build_example.compile,copyassets" description="Clean build of ${example}">
+ </target>
+
+ <target name="copyassets">
+ <mkdir dir="${basedir}/bin/js-debug/assets" />
+ <copy todir="${basedir}/bin/js-debug/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
+ <mkdir dir="${basedir}/bin/js-release/assets" />
+ <copy todir="${basedir}/bin/js-release/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
</target>
<target name="clean">
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/BasicClasses.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/BasicClasses.as
index d709608,a81838b..07bb731
--- a/frameworks/projects/Basic/src/main/flex/BasicClasses.as
+++ b/frameworks/projects/Basic/src/main/flex/BasicClasses.as
@@@ -161,7 -152,7 +161,7 @@@ internal class BasicClasse
import org.apache.flex.html.supportClasses.DataGroup; DataGroup;
import org.apache.flex.html.supportClasses.Viewport; Viewport;
import org.apache.flex.html.supportClasses.ScrollingViewport; ScrollingViewport;
-- import org.apache.flex.html.supportClasses.DataGridButtonBarButtonItemRenderer; DataGridButtonBarButtonItemRenderer;
++ import org.apache.flex.html.supportClasses.TextButtonItemRenderer; TextButtonItemRenderer;
import org.apache.flex.html.DataGridButtonBarTextButton; DataGridButtonBarTextButton;
import org.apache.flex.html.DataGridButtonBar; DataGridButtonBar;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/GroupBase.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/core/GroupBase.as
index e4dfb1f,0000000..07859a1
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/GroupBase.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/GroupBase.as
@@@ -1,280 -1,0 +1,296 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.core
+{
+ import org.apache.flex.core.IContentViewHost;
+ import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.ValueChangeEvent;
+ import org.apache.flex.states.State;
+ import org.apache.flex.utils.MXMLDataInterpreter;
+
+ /**
+ * Indicates that the state change has completed. All properties
+ * that need to change have been changed, and all transitinos
+ * that need to run have completed. However, any deferred work
+ * may not be completed, and the screen may not be updated until
+ * code stops executing.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ [Event(name="stateChangeComplete", type="org.apache.flex.events.Event")]
+
+ /**
+ * Indicates that the initialization of the container is complete.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ [Event(name="initComplete", type="org.apache.flex.events.Event")]
+
+ /**
+ * Indicates that the children of the container is have been added.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ [Event(name="childrenAdded", type="org.apache.flex.events.Event")]
+
+ /**
+ * The GroupBase class is the base class for most simple containers
+ * in FlexJS. It is usable as the root tag of MXML
+ * documents and UI controls and containers are added to it.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class GroupBase extends UIBase implements IStatesObject, IContainer, ILayoutParent, ILayoutView, IContentViewHost
+ {
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function GroupBase()
+ {
+ super();
+ }
+
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
+ */
+ COMPILE::JS
+ override protected function createElement():WrappedHTMLElement
+ {
+ element = document.createElement('div') as WrappedHTMLElement;
+ element.flexjs_wrapper = this;
+
+ positioner = element;
+
+ return element;
+ }
+
++ override public function addedToParent():void
++ {
++ super.addedToParent();
++
++ // Load the layout bead if it hasn't already been loaded.
++ var layout:IBeadLayout = getBeadByType(IBeadLayout) as IBeadLayout;
++ if (!layout)
++ {
++ var c:Class = ValuesManager.valuesImpl.getValue(this, "iBeadLayout") as Class;
++ if (c) {
++ layout = new c() as IBeadLayout;
++ addBead(layout);
++ }
++ }
++ }
++
+ /*
+ * IContainer
+ */
+
+ /**
+ * @private
+ */
+ public function childrenAdded():void
+ {
+ dispatchEvent(new Event("childrenAdded"));
+ }
+
+ /*
+ * Utility
+ */
+
+ /**
+ * Dispatches a "layoutNeeded" event
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function layoutNeeded():void
+ {
+ dispatchEvent( new Event("layoutNeeded") );
+ }
+
+ /*
+ * ILayoutParent
+ */
+
+ /**
+ * Returns the ILayoutHost which is its view. From ILayoutParent.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function getLayoutHost():ILayoutHost
+ {
+ return view as ILayoutHost;
+ }
+
+ /**
+ * @copy org.apache.flex.core.IContentViewHost#strandChildren
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get strandChildren():IParent
+ {
+ return this;
+ }
+
+ private var _states:Array;
+
+ /**
+ * The array of view states. These should
+ * be instances of org.apache.flex.states.State.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get states():Array
+ {
+ return _states;
+ }
+
+ /**
+ * @private
+ * @flexjsignorecoercion Class
+ * @flexjsignorecoercion org.apache.flex.core.IBead
+ */
+ public function set states(value:Array):void
+ {
+ _states = value;
+ _currentState = _states[0].name;
+
+ try{
+ if (getBeadByType(IStatesImpl) == null)
+ {
+ var c:Class = ValuesManager.valuesImpl.getValue(this, "iStatesImpl") as Class;
+ var b:Object = new c();
+ addBead(b as IBead);
+ }
+ }
+ //TODO: Need to handle this case more gracefully
+ catch(e:Error)
+ {
+ COMPILE::SWF
+ {
+ trace(e.message);
+ }
+ }
+
+ }
+
+ /**
+ * <code>true</code> if the array of states
+ * contains a state with this name.
+ *
+ * @param state The state namem.
+ * @return True if state in state array
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function hasState(state:String):Boolean
+ {
+ for each (var s:State in _states)
+ {
+ if (s.name == state)
+ return true;
+ }
+ return false;
+ }
+
+ private var _currentState:String;
+
+ [Bindable("currentStateChange")]
+ /**
+ * The name of the current state.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get currentState():String
+ {
+ return _currentState;
+ }
+
+ /**
+ * @private
+ */
+ public function set currentState(value:String):void
+ {
+ var event:ValueChangeEvent = new ValueChangeEvent("currentStateChange", false, false, _currentState, value)
+ _currentState = value;
+ dispatchEvent(event);
+ }
+
+ private var _transitions:Array;
+
+ /**
+ * The array of transitions.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get transitions():Array
+ {
+ return _transitions;
+ }
+
+ /**
+ * @private
+ */
+ public function set transitions(value:Array):void
+ {
+ _transitions = value;
+ }
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/LayoutBase.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/core/LayoutBase.as
index dde6448,0000000..f23f035
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/LayoutBase.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/LayoutBase.as
@@@ -1,166 -1,0 +1,284 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.core
+{
+
+ import org.apache.flex.core.IBeadLayout;
+ import org.apache.flex.core.ILayoutChild;
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutParent;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.IParent;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.ValuesManager;
++ import org.apache.flex.events.IEventDispatcher;
++ import org.apache.flex.events.Event;
+ import org.apache.flex.utils.CSSUtils;
+
+ /**
+ * This class is the base class for most, if not all, layouts.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class LayoutBase implements IBeadLayout
+ {
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function LayoutBase()
+ {
+ }
+
+ /**
+ * The strand/host container is also an ILayoutChild because
+ * it can have its size dictated by the host's parent which is
+ * important to know for layout optimization.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected var host:ILayoutChild;
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ *
+ * @flexjsignorecoercion org.apache.flex.core.ILayoutChild
+ */
+ public function set strand(value:IStrand):void
+ {
+ host = value as ILayoutChild;
++
++ IEventDispatcher(host).addEventListener("widthChanged", handleSizeChange);
++ IEventDispatcher(host).addEventListener("heightChanged", handleSizeChange);
++ IEventDispatcher(host).addEventListener("sizeChanged", handleSizeChange);
++
++ IEventDispatcher(host).addEventListener("childrenAdded", handleChildrenAdded);
++ IEventDispatcher(host).addEventListener("initComplete", handleInitComplete);
++
++ IEventDispatcher(host).addEventListener("layoutNeeded", handleLayoutNeeded);
++ }
++
++ /**
++ * Changes in size to the host strand are handled (by default) by running the
++ * layout sequence. Subclasses can override this function and use event.type
++ * to handle specific changes in dimension.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ protected function handleSizeChange(event:Event):void
++ {
++ performLayout();
++ }
++
++ /**
++ * Handles the addition of children to the host's layoutView by listening for
++ * size changes in the children.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ protected function handleChildrenAdded(event:Event):void
++ {
++ COMPILE::SWF {
++ var n:Number = layoutView.numElements;
++ for(var i:int=0; i < n; i++) {
++ var child:IEventDispatcher = layoutView.getElementAt(i) as IEventDispatcher;
++ child.addEventListener("widthChanged", childResizeHandler);
++ child.addEventListener("heightChanged", childResizeHandler);
++ child.addEventListener("sizeChanged", childResizeHandler);
++ }
++ }
++ }
++
++ /**
++ * If changes happen to a layoutView's child, this function will perform the
++ * layout again.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ protected function childResizeHandler(event:Event):void
++ {
++ performLayout();
++ }
++
++ /**
++ * Called whenever "layoutNeeded" event is dispatched against the host strand.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ protected function handleLayoutNeeded(event:Event):void
++ {
++ performLayout();
++ }
++
++ /**
++ * Handles the final start-up condition by running the layout an initial time.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ protected function handleInitComplete(event:Event):void
++ {
++ performLayout();
+ }
+
+ /**
+ * Returns an object of margins for the given child.
+ *
+ * @param child Object The element whose margins are required.
+ * @param hostWidth Number The usable width dimension of the host.
+ * @param hostHeight Number The usable height dimension of the host.
+ *
+ * @return Object A structure of {top:Number, left:Number, bottom:Number, right:Number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function childMargins(child:Object, hostWidth:Number, hostHeight:Number):Object
+ {
+ var margin:Object = ValuesManager.valuesImpl.getValue(child, "margin");
+ var marginLeft:Object = ValuesManager.valuesImpl.getValue(child, "margin-left");
+ var marginTop:Object = ValuesManager.valuesImpl.getValue(child, "margin-top");
+ var marginRight:Object = ValuesManager.valuesImpl.getValue(child, "margin-right");
+ var marginBottom:Object = ValuesManager.valuesImpl.getValue(child, "margin-bottom");
+ var ml:Number = CSSUtils.getLeftValue(marginLeft, margin, hostWidth);
+ var mr:Number = CSSUtils.getRightValue(marginRight, margin, hostWidth);
+ var mt:Number = CSSUtils.getTopValue(marginTop, margin, hostHeight);
+ var mb:Number = CSSUtils.getBottomValue(marginBottom, margin, hostHeight);
+ if (marginLeft == "auto")
+ ml = 0;
+ if (marginRight == "auto")
+ mr = 0;
+
+ return {left:ml, top:mt, right:mr, bottom:mb};
+ }
+
+ /**
+ * Returns an object containing the child's positioning values.
+ *
+ * @param child Object The element whose positions are required.
+ *
+ * @return Object A structure of {top:Number, left:Number, bottom:Number, right:Number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function childPositions(child:Object):Object
+ {
+ var left:Number = ValuesManager.valuesImpl.getValue(child, "left");
+ var right:Number = ValuesManager.valuesImpl.getValue(child, "right");
+ var top:Number = ValuesManager.valuesImpl.getValue(child, "top");
+ var bottom:Number = ValuesManager.valuesImpl.getValue(child, "bottom");
+
+ return {top:top, left:left, bottom:bottom, right:right};
+ }
+
+ /**
+ * Returns the ILayoutView for the host.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ *
+ * @flexjsignorecoercion org.apache.flex.core.ILayoutParent
+ */
+ protected function get layoutView():ILayoutView
+ {
+ var viewBead:ILayoutHost = (host as ILayoutParent).getLayoutHost();
+ return viewBead.contentView;
+ }
++
++ private var isLayoutRunning:Boolean = false;
++
++ /**
++ * Performs the layout in three parts: before, layout, after.
++ *
++ * @langversion 3.0
++ * @playerversion Flash 10.2
++ * @playerversion AIR 2.6
++ * @productversion FlexJS 0.8
++ */
++ public function performLayout():void
++ {
++ // avoid running this layout instance recursively.
++ if (isLayoutRunning) return;
++
++ isLayoutRunning = true;
++
++ var viewBead:ILayoutHost = (host as ILayoutParent).getLayoutHost();
++
++ viewBead.beforeLayout();
++
++ if (layout()) {
++ viewBead.afterLayout();
++ }
++
++ isLayoutRunning = false;
++
++ IEventDispatcher(host).dispatchEvent(new Event("layoutComplete"));
++ }
+
+ /**
+ * @copy org.apache.flex.core.IBeadLayout#layout
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function layout():Boolean
+ {
+ // override in subclass
+ return false;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DataGrid.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DataGrid.as
index fda1b46,c271134..5a17c4a
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DataGrid.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DataGrid.as
@@@ -22,8 -22,7 +22,10 @@@ package org.apache.flex.htm
import org.apache.flex.core.IDataGridModel;
import org.apache.flex.core.IDataGridPresentationModel;
import org.apache.flex.core.UIBase;
++ import org.apache.flex.core.GroupBase;
+ import org.apache.flex.core.ValuesManager;
import org.apache.flex.html.beads.models.DataGridPresentationModel;
++ import org.apache.flex.events.Event;
[Event(name="change", type="org.apache.flex.events.Event")]
@@@ -41,7 -39,7 +43,7 @@@
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public class DataGrid extends Group
- public class DataGrid extends UIBase
++ public class DataGrid extends GroupBase
{
/**
* constructor.
@@@ -160,24 -143,24 +162,10 @@@
presentationModel.rowHeight = value;
}
-- /**
-- * @private
-- * The DataGrid needs to know whenever its size is being changed so the columns can be
-- * be aligned properly, so the noEvent value must always be false.
-- */
-- override public function setWidth(value:Number, noEvent:Boolean=false):void
-- {
-- super.setWidth(value,false);
-- }
--
-- /**
-- * @private
-- * The DataGrid needs to know whenever its size is being changed so the columns can be
-- * be aligned properly, so the noEvent value must always be false.
-- */
-- override public function setHeight(value:Number, noEvent:Boolean=false):void
++ override public function addedToParent():void
{
-- super.setHeight(value,false);
++ super.addedToParent();
++ dispatchEvent(new Event("initComplete"));
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
index f46e453,ca142ba..5b73db0
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/DateField.as
@@@ -33,6 -34,6 +34,7 @@@ package org.apache.flex.htm
* and a pop-up calendar control for picking a date as an alternative to
* the text field.
*
++ * @toplevel
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
index bc9f89d,0000000..85e2b79
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/AccordionItemRendererView.as
@@@ -1,66 -1,0 +1,66 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.beads
+{
+ import org.apache.flex.events.Event;
+ import org.apache.flex.html.supportClasses.ICollapsible;
+
+ /**
+ * This class creates and manages the contents of an AccordionItemItemRenderer
+ *
+ * @viewbead
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public class AccordionItemRendererView extends PanelView
+ {
+ /**
+ * The AccordionItemRendererView class is the default view for
+ * the org.apache.flex.html.supportClasses.AccordionItemRenderer classes.
+ * It provides some layout optimizations that can be attained by assuming
+ * the strand to be an org.apache.flex.html.supportClasses.ICollapsible.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function AccordionItemRendererView()
+ {
+ super();
+ }
+
+ override protected function performLayout(event:Event):void
+ {
+ var collapsibleStrand:ICollapsible = _strand as ICollapsible;
+ if (!collapsibleStrand.collapsed)
+ {
+ super.performLayout(event);
+ } else // skip layout for viewport children
+ {
+ COMPILE::SWF {
+ // no longer needed layoutViewBeforeContentLayout();
- layoutViewAfterContentLayout();
++ afterLayout();
+ }
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ContainerView.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ContainerView.as
index 4de5634,d62e799..ac723a9
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ContainerView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ContainerView.as
@@@ -160,15 -274,49 +160,15 @@@ package org.apache.flex.html.bead
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- protected function completeSetup():void
+ override protected function completeSetup():void
{
+ super.completeSetup();
+
// when the first layout is complete, set up listeners for changes
// to the childrens' sizes.
-- host.addEventListener("layoutComplete", childrenChangedHandler);
-
- host.addEventListener("childrenAdded", performLayout);
- host.addEventListener("layoutNeeded", performLayout);
- host.addEventListener("widthChanged", resizeHandler);
- host.addEventListener("heightChanged", resizeHandler);
- host.addEventListener("sizeChanged", resizeHandler);
- host.addEventListener("viewCreated", viewCreatedHandler);
- }
-
- /**
- * Handles the viewCreated event by performing the first layout if
- * there are children already present (ie, from MXML).
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- protected function viewCreatedHandler(event:Event):void
- {
- if ((host as UIBase).numElements > 0) {
- performLayout(null);
- }
++// host.addEventListener("layoutComplete", childrenChangedHandler);
}
-
- /**
- * Calculate the space taken up by non-content children like a TItleBar in a Panel.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- protected function getChromeMetrics():Rectangle
- {
- return new Rectangle(0, 0, 0, 0);
- }
-
+
/**
* Creates the Viewport (or ScrollableViewport) through which the content
* area is presented.
@@@ -229,22 -391,32 +229,22 @@@
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function layoutViewBeforeContentLayout():void
- protected function performLayout(event:Event):void
++ override public function beforeLayout():void
{
- layoutRunning = true;
-
- layoutViewBeforeContentLayout();
-
- var host:UIBase = _strand as UIBase;
-
- var layout:IBeadLayout = _strand.getBeadByType(IBeadLayout) as IBeadLayout;
- if (layout == null) {
- var c:Class = ValuesManager.valuesImpl.getValue(host, "iBeadLayout");
- if (c) {
- layout = new c() as IBeadLayout;
- _strand.addBead(layout);
- }
- }
-
- if (layout) {
- layout.layout();
- }
-
- layoutViewAfterContentLayout();
-
- layoutRunning = false;
+ var host:ILayoutChild = this.host as ILayoutChild;
+ var vm:IViewportModel = viewportModel;
+ var hostWidth:Number = host.width;
+ var hostHeight:Number = host.height;
+
+ vm.borderMetrics = CSSContainerUtils.getBorderMetrics(host);
+
+ viewport.setPosition(vm.borderMetrics.left, vm.borderMetrics.top);
+
+ viewport.layoutViewportBeforeContentLayout(
+ host.isWidthSizedToContent() ? NaN : hostWidth - vm.borderMetrics.left - vm.borderMetrics.right,
+ host.isHeightSizedToContent() ? NaN : hostHeight - vm.borderMetrics.top - vm.borderMetrics.bottom);
}
-
+
/**
* @private
*/
@@@ -259,20 -431,35 +259,20 @@@
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function layoutViewAfterContentLayout():void
- protected function layoutViewAfterContentLayout():void
++ override public function afterLayout():void
{
- var host:UIBase = _strand as UIBase;
- var vm:IViewportModel = viewportModel;
-
+ if (adjusting) return;
+
adjusting = true;
-
- var viewportSize:Size = viewport.layoutViewportAfterContentLayout();
-
- if (host.isWidthSizedToContent() && host.isHeightSizedToContent()) {
- host.setWidthAndHeight(viewportSize.width + vm.borderMetrics.left + vm.borderMetrics.right +
- vm.chromeMetrics.left + vm.chromeMetrics.right,
- viewportSize.height + vm.borderMetrics.top + vm.borderMetrics.bottom +
- vm.chromeMetrics.top + vm.chromeMetrics.bottom,
- false);
- }
- else if (!host.isWidthSizedToContent() && host.isHeightSizedToContent())
- {
- host.setHeight(viewportSize.height + vm.borderMetrics.top + vm.borderMetrics.bottom +
- vm.chromeMetrics.top + vm.chromeMetrics.bottom, false);
- }
- else if (host.isWidthSizedToContent() && !host.isHeightSizedToContent())
- {
- host.setWidth(viewportSize.width + vm.borderMetrics.left + vm.borderMetrics.right +
- vm.chromeMetrics.left + vm.chromeMetrics.right, false);
- }
+
- super.layoutViewAfterContentLayout();
++ super.afterLayout();
+
+ var contentSize:Size = calculateContentSize();
+ viewport.layoutViewportAfterContentLayout(contentSize);
+
adjusting = false;
}
-
+
/**
* Handles dynamic changes to the host's size by running the layout once
* the viewport has been adjusted.
@@@ -282,54 -469,11 +282,54 @@@
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- override protected function resizeHandler(event:Event):void
- {
- if (!adjusting) {
- performLayout(event);
- }
- }
- protected function resizeHandler(event:Event):void
++// override protected function resizeHandler(event:Event):void
++// {
++// if (!adjusting) {
++// performLayout(event);
++// }
++// }
+
+ /**
+ * Whenever children are added, listeners are added to detect changes
+ * in their size.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
- protected function childrenChangedHandler(event:Event):void
- {
- var host:UIBase = _strand as UIBase;
- host.removeEventListener(event.type, childrenChangedHandler);
-
- var n:Number = contentView.numElements;
- for (var i:int=0; i < n; i++) {
- var child:IUIBase = contentView.getElementAt(i) as IUIBase;
- child.addEventListener("widthChanged", childResizeHandler);
- child.addEventListener("heightChanged", childResizeHandler);
- child.addEventListener("sizeChanged", childResizeHandler);
- }
- }
++// protected function childrenChangedHandler(event:Event):void
++// {
++// var host:UIBase = _strand as UIBase;
++// host.removeEventListener(event.type, childrenChangedHandler);
++//
++// var n:Number = contentView.numElements;
++// for (var i:int=0; i < n; i++) {
++// var child:IUIBase = contentView.getElementAt(i) as IUIBase;
++// child.addEventListener("widthChanged", childResizeHandler);
++// child.addEventListener("heightChanged", childResizeHandler);
++// child.addEventListener("sizeChanged", childResizeHandler);
++// }
++// }
+ }
+
+ COMPILE::JS
+ public class ContainerView extends GroupView //??implements IParent
+ {
+ private var _viewport:IViewport;
+
+ /**
+ * The viewport used to present the content and may display
+ * scroll bars (depending on the actual type of viewport).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ protected function get viewport():IViewport
{
- if (!adjusting) {
- performLayout(event);
- }
+ return _viewport;
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
index 36ed489,0000000..fc5f3a2
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
@@@ -1,230 -1,0 +1,233 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.beads
+{
+ import org.apache.flex.core.BeadViewBase;
+ import org.apache.flex.core.ContainerBase;
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IBeadLayout;
+ import org.apache.flex.core.IBeadModel;
+ import org.apache.flex.core.IBeadView;
- import org.apache.flex.core.IList;
- import org.apache.flex.core.ISelectableItemRenderer;
++ import org.apache.flex.core.IDataProviderModel;
+ import org.apache.flex.core.IItemRenderer;
+ import org.apache.flex.core.IItemRendererParent;
++ import org.apache.flex.core.IList;
+ import org.apache.flex.core.IParent;
- import org.apache.flex.core.IParentIUIBase;
- import org.apache.flex.core.IDataProviderModel;
++ import org.apache.flex.core.IParentIUIBase;
++ import org.apache.flex.core.ISelectableItemRenderer;
+ import org.apache.flex.core.ISelectionModel;
+ import org.apache.flex.core.IStrand;
- import org.apache.flex.core.IUIBase;
++ import org.apache.flex.core.IUIBase;
++ import org.apache.flex.core.LayoutBase;
+ import org.apache.flex.core.Strand;
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.html.beads.models.ScrollBarModel;
+ import org.apache.flex.html.beads.models.SingleLineBorderModel;
+ import org.apache.flex.html.supportClasses.Border;
+ import org.apache.flex.html.supportClasses.DataGroup;
+ import org.apache.flex.html.supportClasses.ScrollBar;
+
+ /**
+ * The DataContainerView provides the visual elements for the DataContainer.
+ *
+ * @viewbead
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ COMPILE::JS
+ public class DataContainerView extends ContainerView implements IListView
+ {
+ public function DataContainerView()
+ {
+ super();
+ }
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override public function set strand(value:IStrand):void
+ {
+ _strand = value;
+ super.strand = value;
+
+ host.addEventListener("beadsAdded", beadsAddedHandler);
+ }
+
+ protected var dataModel:IDataProviderModel;
+
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.IItemRendererParent
+ */
+ public function get dataGroup():IItemRendererParent
+ {
+ return super.contentView as IItemRendererParent;
+ }
+
+ protected function beadsAddedHandler(event:Event):void
+ {
+ dataModel = _strand.getBeadByType(IDataProviderModel) as IDataProviderModel;
+ host.addEventListener("itemsCreated", itemsCreatedHandler);
+ dataModel.addEventListener("dataProviderChanged", dataProviderChangeHandler);
+ }
+
+ /**
+ * @private
+ */
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete(event);
+ }
+
+ /**
+ * @private
+ */
+ protected function itemsCreatedHandler(event:Event):void
+ {
- performLayout(event);
++ trace("DataContainerView: itemsCreatedHandler");
++ host.dispatchEvent(new Event("layoutNeeded"));
+ }
+
+ /**
+ * @private
+ */
+ protected function dataProviderChangeHandler(event:Event):void
+ {
++ trace("DataContainerView: dataProviderChangeHandler");
+ performLayout(event);
+ }
+ }
+
+ COMPILE::SWF
+ public class DataContainerView extends ContainerView implements IListView
+ {
+ public function DataContainerView()
+ {
+ super();
+ }
+
+ protected var dataModel:IDataProviderModel;
+
+ /**
+ * @private
+ */
+ override public function get host():IUIBase
+ {
+ return _strand as IUIBase;
+ }
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override public function set strand(value:IStrand):void
+ {
+ _strand = value;
+ super.strand = value;
+
+ host.addEventListener("beadsAdded", beadsAddedHandler);
++ host.addEventListener("itemsCreated", itemsCreatedHandler);
+ }
+
+ override protected function completeSetup():void
+ {
+ super.completeSetup();
+
+ // list is not interested in UI children, it wants to know when new items
+ // have been added or the dataProvider has changed.
- host.removeEventListener("childrenAdded", childrenChangedHandler);
- host.removeEventListener("childrenAdded", performLayout);
- host.addEventListener("itemsCreated", itemsCreatedHandler);
++// host.removeEventListener("childrenAdded", childrenChangedHandler);
++// host.removeEventListener("childrenAdded", performLayout);
+ }
+
+ protected function beadsAddedHandler(event:Event):void
+ {
+ dataModel = _strand.getBeadByType(IDataProviderModel) as IDataProviderModel;
+ dataModel.addEventListener("dataProviderChanged", dataProviderChangeHandler);
+ }
+
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete(event);
+ }
+
+ /**
+ * The area holding the itemRenderers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get dataGroup():IItemRendererParent
+ {
+ return super.contentView as IItemRendererParent;
+ }
+
+ /**
+ * @private
+ */
+ override public function get resizableView():IUIBase
+ {
+ return _strand as IUIBase;
+ }
+
+ /**
+ * @private
+ */
+ protected function itemsCreatedHandler(event:Event):void
+ {
- performLayout(event);
++ host.dispatchEvent(new Event("layoutNeeded"));
+ }
+
+ /**
+ * @private
+ */
+ protected function dataProviderChangeHandler(event:Event):void
+ {
- performLayout(event);
++ host.dispatchEvent(new Event("layoutNeeded"));
+ }
+
+ /**
+ * respond to a change in size or request to re-layout everything
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ override protected function resizeHandler(event:Event):void
+ {
+ // might need to do something here, not sure yet.
+ super.resizeHandler(event);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataGridView.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataGridView.as
index 68e5d95,8393057..3b387d9
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataGridView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DataGridView.as
@@@ -52,249 -115,152 +52,249 @@@ package org.apache.flex.html.bead
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public function set strand(value:IStrand):void
+ public class DataGridView extends GroupView implements IBeadView
{
- _strand = value;
-
- var host:UIBase = value as UIBase;
-
- _header = new DataGridButtonBar();
- _header.id = "dataGridHeader";
-
- var scrollPort:ScrollingViewport = new ScrollingViewport();
-
- _listArea = new Container();
- _listArea.id = "dataGridListArea";
- _listArea.className = "DataGridListArea";
- _listArea.addBead(scrollPort);
+ /**
+ * constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public function DataGridView()
+ {
+ super();
+ }
- if (_strand.getBeadByType(IBeadLayout) == null) {
- var c:Class = ValuesManager.valuesImpl.getValue(host, "iBeadLayout");
- if (c)
- {
- var layout:IBeadLayout = new c() as IBeadLayout;
- _strand.addBead(layout);
+ private var _strand:IStrand;
+ private var _header:DataGridButtonBar;
+ private var _listArea:Container;
+
+ private var _lists:Array;
+
+ /**
+ * An array of List objects the comprise the columns of the DataGrid.
+ */
+ public function get columnLists():Array
+ {
+ return _lists;
+ }
+
+ /**
+ * The area used to hold the columns
+ *
+ */
+ public function get listArea():Container
+ {
+ return _listArea;
+ }
+
+ /**
+ * Returns the component used as the header for the DataGrid.
+ */
+ public function get header():IUIBase
+ {
+ return _header;
+ }
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ override public function set strand(value:IStrand):void
+ {
+ super.strand = value;
+ _strand = value;
+
+ var host:DataGrid = value as DataGrid;
+
+ _header = new DataGridButtonBar();
+ _header.height = 30;
+ _header.percentWidth = 100;
+
+ _listArea = new Container();
+ _listArea.percentWidth = 100;
+ _listArea.className = "DataGridListArea";
+
+ COMPILE::SWF {
+ _header.style = new SimpleCSSStyles();
+ _header.style.flexGrow = 0;
+
+ _listArea.style = new SimpleCSSStyles();
+ _listArea.style.flexGrow = 1;
}
+ COMPILE::JS {
+ _header.element.style["flex-grow"] = "0";
+ _header.element.style["min-height"] = "30px";
+ _listArea.element.style["flex-grow"] = "1";
+ }
+
- IEventDispatcher(_strand).addEventListener("initComplete", finishSetup);
++ IEventDispatcher(_strand).addEventListener("beadsAdded", finishSetup);
}
-
- finishSetup(null);
- }
-
- /**
- * @private
- */
- private function finishSetup(event:Event):void
- {
- var host:UIBase = _strand as UIBase;
-
- // see if there is a presentation model already in place. if not, add one.
- var presentationModel:DataGridPresentationModel = _strand.getBeadByType(DataGridPresentationModel) as DataGridPresentationModel;
- if (presentationModel == null) {
- presentationModel = new DataGridPresentationModel();
- _strand.addBead(presentationModel);
+
+ /**
+ * @private
+ */
+ private function finishSetup(event:Event):void
+ {
+ var host:DataGrid = _strand as DataGrid;
+
+ if (_lists == null || _lists.length == 0) {
+ createLists();
+ }
+
+ // see if there is a presentation model already in place. if not, add one.
+ var presentationModel:IDataGridPresentationModel = host.presentationModel;
+ var sharedModel:IDataGridModel = host.model as IDataGridModel;
+ IEventDispatcher(sharedModel).addEventListener("dataProviderChanged",handleDataProviderChanged);
+ IEventDispatcher(sharedModel).addEventListener("selectedIndexChanged", handleSelectedIndexChanged);
+
+ var columnLabels:Array = new Array();
+ var buttonWidths:Array = new Array();
+
+ var marginBorderOffset:int = 0;
+ COMPILE::SWF {
+ marginBorderOffset = 1;
+ }
+
+ for(var i:int=0; i < sharedModel.columns.length; i++) {
+ var dgc:DataGridColumn = sharedModel.columns[i] as DataGridColumn;
+ columnLabels.push(dgc.label);
+ var colWidth:Number = dgc.columnWidth - marginBorderOffset;
+ buttonWidths.push(colWidth);
+
+ var list:DataGridColumnList = _lists[i] as DataGridColumnList;
+ if (!isNaN(colWidth)) {
+ list.width = Number(colWidth - marginBorderOffset);
+ } else {
+ COMPILE::SWF {
+ list.style = new SimpleCSSStyles();
+ list.style.flexGrow = 1;
+ }
+ COMPILE::JS {
+ list.element.style["flex-grow"] = "1";
+ }
+ }
+ }
+
+ var bblayout:ButtonBarLayout = new ButtonBarLayout();
+ _header.buttonWidths = buttonWidths
+ _header.widthType = ButtonBarModel.PIXEL_WIDTHS;
+ _header.dataProvider = columnLabels;
+ _header.addBead(bblayout);
+ _header.addBead(new Viewport());
+ host.addElement(_header);
+
+ host.addElement(_listArea);
+
+ handleDataProviderChanged(event);
+
+ host.addEventListener("widthChanged", handleSizeChanges);
+ host.addEventListener("heightChanged", handleSizeChanges);
}
-
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
- IEventDispatcher(sharedModel).addEventListener("dataProviderChanged",handleDataProviderChanged);
-
- var columnLabels:Array = new Array();
-
- for(var i:int=0; i < sharedModel.columns.length; i++) {
- var dgc:DataGridColumn = sharedModel.columns[i] as DataGridColumn;
- columnLabels.push(dgc.label);
+
+ /**
+ * @private
+ */
+ private function handleSizeChanges(event:Event):void
+ {
+ _header.dispatchEvent(new Event("layoutChanged"));
+ _listArea.dispatchEvent(new Event("layoutChanged"));
}
-
- var bblayout:ButtonBarLayout = new ButtonBarLayout();
- var buttonBarModel:ArraySelectionModel = new ArraySelectionModel();
- buttonBarModel.dataProvider = columnLabels;
-
- _header.addBead(buttonBarModel);
- _header.addBead(bblayout);
- _header.addBead(new Viewport());
- host.addElement(_header);
-
- host.addElement(_listArea);
-
- handleDataProviderChanged(event);
- }
-
- /**
- * @private
- */
- private function handleSizeChanges(event:Event):void
- {
- var layoutBead:IDataGridLayout = _strand.getBeadByType(IBeadLayout) as IDataGridLayout;
- layoutBead.header = _header;
- layoutBead.columns = _lists;
- layoutBead.listArea = _listArea;
- layoutBead.layout();
- }
-
- /**
- * @private
- */
- private function handleDataProviderChanged(event:Event):void
- {
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
-
- if (_lists == null || _lists.length == 0) {
- createLists();
+
+ /**
+ * @private
+ */
+ private function handleDataProviderChanged(event:Event):void
+ {
+ var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+
+ for (var i:int=0; i < _lists.length; i++)
+ {
+ var list:DataGridColumnList = _lists[i] as DataGridColumnList;
+ var listModel:ISelectionModel = list.getBeadByType(IBeadModel) as ISelectionModel;
+ listModel.dataProvider = sharedModel.dataProvider;
+ }
+
+ host.dispatchEvent(new Event("layoutNeeded"));
}
-
- for (var i:int=0; i < _lists.length; i++)
+
+ /**
+ * @private
+ */
+ private function handleSelectedIndexChanged(event:Event):void
{
- var list:DataGridColumnList = _lists[i] as DataGridColumnList;
- var listModel:ISelectionModel = list.getBeadByType(IBeadModel) as ISelectionModel;
- listModel.dataProvider = sharedModel.dataProvider;
+ var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var newIndex:int = sharedModel.selectedIndex;
+
+ for (var i:int=0; i < _lists.length; i++)
+ {
+ var list:DataGridColumnList = _lists[i] as DataGridColumnList;
+ list.selectedIndex = newIndex;
+ }
}
-
- host.dispatchEvent(new Event("layoutNeeded"));
- }
-
- /**
- * @private
- */
- private function handleColumnListChange(event:Event):void
- {
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
- var list:DataGridColumnList = event.target as DataGridColumnList;
- sharedModel.selectedIndex = list.selectedIndex;
-
- for(var i:int=0; i < _lists.length; i++) {
- if (list != _lists[i]) {
- var otherList:DataGridColumnList = _lists[i] as DataGridColumnList;
- otherList.selectedIndex = list.selectedIndex;
+
+ /**
+ * @private
+ */
+ private function handleColumnListChange(event:Event):void
+ {
+ var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var list:DataGridColumnList = event.target as DataGridColumnList;
+ sharedModel.selectedIndex = list.selectedIndex;
+
+ for(var i:int=0; i < _lists.length; i++) {
+ if (list != _lists[i]) {
+ var otherList:DataGridColumnList = _lists[i] as DataGridColumnList;
+ otherList.selectedIndex = list.selectedIndex;
+ }
}
+
+ host.dispatchEvent(new Event('change'));
}
-
- host.dispatchEvent(new Event('change'));
- }
-
- /**
- * @private
- */
- private function createLists():void
- {
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
- var presentationModel:DataGridPresentationModel = _strand.getBeadByType(DataGridPresentationModel) as DataGridPresentationModel;
- var listWidth:Number = host.width / sharedModel.columns.length;
-
- _lists = new Array();
-
- for (var i:int=0; i < sharedModel.columns.length; i++) {
- var dataGridColumn:DataGridColumn = sharedModel.columns[i] as DataGridColumn;
-
- var list:DataGridColumnList = new DataGridColumnList();
- list.id = "dataGridColumn"+String(i);
- list.addBead(sharedModel);
- list.itemRenderer = dataGridColumn.itemRenderer;
- list.labelField = dataGridColumn.dataField;
- list.addEventListener('change',handleColumnListChange);
- list.addBead(presentationModel);
-
- _listArea.addElement(list);
- _lists.push(list);
+
+ /**
+ * @private
+ */
+ private function createLists():void
+ {
+ var host:DataGrid = _strand as DataGrid;
+
+ var sharedModel:IDataGridModel = host.model as IDataGridModel;
+ var presentationModel:IDataGridPresentationModel = host.presentationModel;
+
+ _lists = new Array();
+
+ for (var i:int=0; i < sharedModel.columns.length; i++) {
+ var dataGridColumn:DataGridColumn = sharedModel.columns[i] as DataGridColumn;
+
+ var list:DataGridColumnList = new DataGridColumnList();
+ list.id = "dataGridColumn"+String(i);
+ list.addBead(sharedModel);
+ list.itemRenderer = dataGridColumn.itemRenderer;
+ list.labelField = dataGridColumn.dataField;
+ list.addEventListener('change',handleColumnListChange);
+ list.addBead(presentationModel);
+
+ if (i == 0) {
+ list.className = "first";
+ } else if (i == sharedModel.columns.length-1) {
+ list.className = "last";
+ } else {
+ list.className = "middle";
+ }
+
+ _listArea.addElement(list);
+ _lists.push(list);
+ }
+
+ host.dispatchEvent(new Event("layoutNeeded"));
}
-
- host.dispatchEvent(new Event("layoutNeeded"));
}
- }
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/GroupView.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/GroupView.as
index c3351a5,0000000..2a982c2
mode 100644,000000..100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/GroupView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/GroupView.as
@@@ -1,429 -1,0 +1,344 @@@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.beads
+{
+ import org.apache.flex.core.BeadViewBase;
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IBeadLayout;
+ import org.apache.flex.core.IBeadView;
+ import org.apache.flex.core.ILayoutChild;
+ import org.apache.flex.core.ILayoutHost;
+ import org.apache.flex.core.ILayoutView;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IUIBase;
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.IEventDispatcher;
+
+ COMPILE::SWF {
+ import org.apache.flex.geom.Size;
+ import org.apache.flex.geom.Rectangle;
+ import org.apache.flex.utils.CSSContainerUtils;
+ }
+
+ /**
+ * The GroupView is a bead that manages the layout bead (if any) attached to a Group. This class
+ * also provides support for background and border styles for a Group on the SWF platform.
+ *
+ * @viewbead
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class GroupView extends BeadViewBase implements IBeadView, ILayoutHost
+ {
+ /**
+ * The GroupView class is the default view for
+ * the org.apache.flex.html.Group class.
+ * It lets you use some CSS styles to manage the border, background
+ * and padding around the content area.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function GroupView()
+ {
+ super();
+
+ layoutRunning = false;
+ }
+
+ /**
+ * The sub-element used as the parent of the container's elements. This does not
+ * include the chrome elements.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get contentView():ILayoutView
+ {
+ return host as ILayoutView;
+ }
+
+ /**
+ * The view that can be resized.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get resizableView():IUIBase
+ {
+ return host;
+ }
+
+
+ private var layoutRunning:Boolean;
+
+ /**
+ * Strand setter.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override public function set strand(value:IStrand):void
+ {
+ _strand = value;
+ super.strand = value;
+
+ COMPILE::SWF {
+ displayBackgroundAndBorder(host as UIBase);
+ }
+
+ // listen for initComplete to signal that the strand has been initialized
+ // with its beads and children.
+ host.addEventListener("initComplete", handleInitComplete);
-
- // listen for when children have been added so additional event listeners
- // can be placed upon them.
- host.addEventListener("childrenAdded", handleChildrenAdded);
-
- // listen for requests to run the layout.
- host.addEventListener("layoutNeeded", performLayout);
+ }
+
+ /**
+ * Handles the initComplete event by completing the setup and kicking off the
+ * presentation of the contents.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function handleInitComplete(event:Event):void
+ {
+ var ilc:ILayoutChild = host as ILayoutChild;
+ // Complete the setup if the height is sized to content or has been explicitly set
+ // and the width is sized to content or has been explicitly set
+ if ((ilc.isHeightSizedToContent() || !isNaN(ilc.explicitHeight) || !isNaN(ilc.percentHeight)) &&
+ (ilc.isWidthSizedToContent() || !isNaN(ilc.explicitWidth) || !isNaN(ilc.percentWidth))) {
+ completeSetup();
+ }
+ else {
+ // otherwise, wait until the unknown sizes have been set and then finish
+ host.addEventListener("sizeChanged", deferredSizeHandler);
+ host.addEventListener("widthChanged", deferredSizeHandler);
+ host.addEventListener("heightChanged", deferredSizeHandler);
+ }
+ }
+
+ /**
+ * Handles the case where the size of the host is not immediately known, usually do
+ * to one of its dimensions being indicated as a percent size.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function deferredSizeHandler(event:Event):void
+ {
+ host.removeEventListener("sizeChanged", deferredSizeHandler);
+ host.removeEventListener("widthChanged", deferredSizeHandler);
+ host.removeEventListener("heightChanged", deferredSizeHandler);
+
+ completeSetup();
-
- var num:Number = contentView.numElements;
- if (num > 0)
- {
- performLayout(event);
- }
+ }
+
+ /**
+ * Called when the host is ready to complete its setup (usually after its size has been
+ * determined).
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function completeSetup():void
+ {
+ // listen for changes to strand's size and rerun the layout
+ host.addEventListener("sizeChanged", resizeHandler);
+ host.addEventListener("widthChanged", resizeHandler);
+ host.addEventListener("heightChanged", resizeHandler);
+ }
-
- /**
- * Handles the viewCreated event by performing the first layout if
- * there are children already present (ie, from MXML).
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- protected function viewCreatedHandler(event:Event):void
- {
- var num:Number = contentView.numElements;
- if (num > 0)
- {
- performLayout(event);
- }
- }
-
- /**
- * @private
- */
- protected function handleChildrenAdded(event:Event):void
- {
- COMPILE::SWF {
- var n:Number = contentView.numElements;
- for(var i:int=0; i < n; i++) {
- var child:IEventDispatcher = contentView.getElementAt(i) as IEventDispatcher;
- child.addEventListener("widthChanged", childResizeHandler);
- child.addEventListener("heightChanged", childResizeHandler);
- child.addEventListener("sizeChanged", childResizeHandler);
- }
- }
-
- performLayout(event);
- }
+
+ /**
+ * Invoked in response to the strand being resized.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function resizeHandler(event:Event):void
+ {
- performLayout(event);
- }
-
- /**
- * Invoked in response to any child being resized.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- protected function childResizeHandler(event:Event):void
- {
- performLayout(event);
++ // override in subclasses in case there is something besides running
++ // the layout (which is handled automatically by the layout itself).
+ }
+
+ /**
+ * Provides a place for pre-layout actions.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
- protected function layoutViewBeforeContentLayout():void
++ public function beforeLayout():void
+ {
+ // This has no use for Group but is here so a subclass can override it.
+ }
+
+ /**
+ * Executes the layout associated with this container. Once the layout has been
+ * run, it may affect the size of the host or may cause the host to present scroll
+ * bars view its viewport.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function performLayout(event:Event):void
+ {
- if (layoutRunning) return;
-
- layoutRunning = true;
-
- // pre-process before layout
- layoutViewBeforeContentLayout();
-
- var host:UIBase = _strand as UIBase;
-
- var layout:IBeadLayout = _strand.getBeadByType(IBeadLayout) as IBeadLayout;
- if (layout == null) {
- var c:Class = ValuesManager.valuesImpl.getValue(host, "iBeadLayout");
- if (c) {
- layout = new c() as IBeadLayout;
- _strand.addBead(layout);
- }
- }
-
- if (layout) {
- layout.layout();
- }
-
- // cleanup or adjust after layout
- layoutViewAfterContentLayout();
-
- layoutRunning = false;
-
- host.dispatchEvent(new Event("layoutComplete"));
++ trace("CALLING performLayout !!!!");
+ }
+
+ /**
+ * Returns the size of the content area including the padding.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ COMPILE::SWF
+ protected function calculateContentSize():Size
+ {
+ var maxWidth:Number = 0;
+ var maxHeight:Number = 0;
+ var num:Number = contentView.numElements;
+
+ for (var i:int=0; i < num; i++) {
+ var child:IUIBase = contentView.getElementAt(i) as IUIBase;
+ if (child == null || !child.visible) continue;
+ var childXMax:Number = child.x + child.width;
+ var childYMax:Number = child.y + child.height;
+ maxWidth = Math.max(maxWidth, childXMax);
+ maxHeight = Math.max(maxHeight, childYMax);
+ }
+
+ var padding:org.apache.flex.geom.Rectangle = CSSContainerUtils.getPaddingMetrics(this._strand);
+ var border:org.apache.flex.geom.Rectangle = CSSContainerUtils.getBorderMetrics(this._strand);
+
+ // return the content size as the max plus right/bottom padding. the x,y position of
+ // each child is already offset by the left/top padding by the layout algorithm.
+ return new Size(maxWidth + padding.right - (border.left+border.right), maxHeight + padding.bottom - (border.top+border.bottom));
+ }
+
+ /**
- * @private
- */
- private var adjusting:Boolean = false;
-
- /**
+ * Adjusts the size of the host after the layout has been run.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ COMPILE::SWF
- protected function layoutViewAfterContentLayout():void
++ public function afterLayout():void
+ {
- if (adjusting) return;
-
+ var host:UIBase = _strand as UIBase;
-
- adjusting = true;
-
+ var contentSize:Size = calculateContentSize();
+
+ if (host.isWidthSizedToContent() && host.isHeightSizedToContent()) {
+ host.setWidthAndHeight(contentSize.width, contentSize.height, true);
+ }
+ else if (!host.isWidthSizedToContent() && host.isHeightSizedToContent())
+ {
+ host.setHeight(contentSize.height, true);
+ }
+ else if (host.isWidthSizedToContent() && !host.isHeightSizedToContent())
+ {
+ host.setWidth(contentSize.width, true);
+ }
-
- adjusting = false;
+ }
+
+ COMPILE::JS
- protected function layoutViewAfterContentLayout():void
++ public function afterLayout():void
+ {
+ // maybe useful in a subclass on the JS side.
+ }
+
+ /**
+ * @private
+ */
+ COMPILE::SWF
+ protected function displayBackgroundAndBorder(host:UIBase) : void
+ {
+ var backgroundColor:Object = ValuesManager.valuesImpl.getValue(host, "background-color");
+ var backgroundImage:Object = ValuesManager.valuesImpl.getValue(host, "background-image");
+ if (backgroundColor != null || backgroundImage != null)
+ {
+ if (host.getBeadByType(IBackgroundBead) == null)
+ var c:Class = ValuesManager.valuesImpl.getValue(host, "iBackgroundBead");
+ if (c) {
+ host.addBead( new c() as IBead );
+ }
+ }
-
++
++ if (setupForBorder(host, "border")) return;
++ if (setupForBorder(host, "border-top")) return;
++ if (setupForBorder(host, "border-bottom")) return;
++ if (setupForBorder(host, "border-left")) return;
++ if (setupForBorder(host, "border-right")) return;
++ }
++
++ COMPILE::SWF
++ protected function setupForBorder(host:UIBase, borderType:String):Boolean
++ {
++ var result:Boolean = false;
++
+ var borderStyle:String;
- var borderStyles:Object = ValuesManager.valuesImpl.getValue(host, "border");
++ var borderStyles:Object = ValuesManager.valuesImpl.getValue(host, borderType);
+ if (borderStyles is Array)
+ {
+ borderStyle = borderStyles[1];
+ }
+ if (borderStyle == null)
+ {
- borderStyle = ValuesManager.valuesImpl.getValue(host, "border-style") as String;
++ borderStyle = ValuesManager.valuesImpl.getValue(host, borderType+"-style") as String;
+ }
+ if (borderStyle != null && borderStyle != "none")
+ {
+ if (host.getBeadByType(IBorderBead) == null) {
- c = ValuesManager.valuesImpl.getValue(host, "iBorderBead");
++ var c:Class = ValuesManager.valuesImpl.getValue(host, "iBorderBead");
+ if (c) {
+ host.addBead( new c() as IBead );
++ result = true;
+ }
+ }
+ }
++
++ return result;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1691921e/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
----------------------------------------------------------------------
diff --cc frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
index 761e1c7,5bd1159..51d0c4c
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/ButtonBarLayout.as
@@@ -17,36 -17,30 +17,21 @@@
//
////////////////////////////////////////////////////////////////////////////////
package org.apache.flex.html.beads.layouts
-{
+{
import org.apache.flex.core.IBeadLayout;
- import org.apache.flex.core.IItemRendererClassFactory;
- import org.apache.flex.core.IItemRendererParent;
-- import org.apache.flex.core.ILayoutHost;
- import org.apache.flex.core.ILayoutParent;
- import org.apache.flex.core.IParentIUIBase;
- import org.apache.flex.core.ISelectableItemRenderer;
- import org.apache.flex.core.ISelectionModel;
++ import org.apache.flex.core.ILayoutChild;
+ import org.apache.flex.core.ILayoutView;
- import org.apache.flex.core.IParentIUIBase;
- import org.apache.flex.core.ISelectableItemRenderer;
- import org.apache.flex.core.ISelectionModel;
++ import org.apache.flex.core.IStyleableObject;
import org.apache.flex.core.IStrand;
-- import org.apache.flex.core.IUIBase;
-- import org.apache.flex.core.IViewportModel;
- import org.apache.flex.core.LayoutBase;
- import org.apache.flex.core.SimpleCSSStyles;
-- import org.apache.flex.core.UIBase;
-- import org.apache.flex.core.ValuesManager;
-- import org.apache.flex.events.Event;
-- import org.apache.flex.events.IEventDispatcher;
-- import org.apache.flex.html.List;
-- import org.apache.flex.html.beads.ButtonBarView;
-
+ import org.apache.flex.html.beads.models.ButtonBarModel;
- import org.apache.flex.geom.Rectangle;
- import org.apache.flex.utils.CSSUtils;
- import org.apache.flex.utils.CSSContainerUtils;
++ import org.apache.flex.html.supportClasses.UIItemRendererBase;
+
/**
- * The ButtonBarLayout class bead sizes and positions the org.apache.flex.html.Button
- * The ButtonBarLayout class bead sizes and positions the org.apache.flex.html.Button
- * elements that make up a org.apache.flex.html.ButtonBar. This bead arranges the Buttons
++ * The ButtonBarLayout class bead sizes and positions the button
+ * elements that make up a org.apache.flex.html.ButtonBar. This bead arranges the Buttons
* horizontally and makes them all the same width unless the buttonWidths property has been set in which case
* the values stored in that array are used.
- *
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@@ -91,81 -98,46 +76,71 @@@
/**
* @copy org.apache.flex.core.IBeadLayout#layout
*/
- public function layout():Boolean
+ override public function layout():Boolean
{
- var layoutParent:ILayoutHost = _strand.getBeadByType(ILayoutHost) as ILayoutHost;
- var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
- var itemRendererParent:IItemRendererParent = contentView as IItemRendererParent;
- var viewportModel:IViewportModel = (layoutParent as ButtonBarView).viewportModel;
-
- var n:int = contentView.numElements;
- var realN:int = n;
-
- for (var j:int=0; j < n; j++)
- {
- var child:IUIBase = itemRendererParent.getElementAt(j) as IUIBase;
- if (child == null || !child.visible) realN--;
+ var contentView:ILayoutView = layoutView;
+
+ var model:ButtonBarModel = (host as IStrand).getBeadByType(ButtonBarModel) as ButtonBarModel;
+ if (model) {
+ buttonWidths = model.buttonWidths;
+ _widthType = model.widthType;
}
-
- var xpos:Number = 0;
- var useWidth:Number = contentView.width / realN;
- var useHeight:Number = contentView.height;
-
+
+ var n:int = contentView.numElements;
++ if (n <= 0) return false;
+
for (var i:int=0; i < n; i++)
-- {
- var ir:ISelectableItemRenderer = contentView.getElementAt(i) as ISelectableItemRenderer;
- var ir:ISelectableItemRenderer = itemRendererParent.getElementAt(i) as ISelectableItemRenderer;
-- if (ir == null || !UIBase(ir).visible) continue;
- UIBase(ir).y = 0;
- UIBase(ir).x = xpos;
- if (!isNaN(useHeight) && useHeight > 0) {
- UIBase(ir).height = useHeight;
- }
++ {
++ var ilc:ILayoutChild = contentView.getElementAt(i) as ILayoutChild;
++ if (ilc == null || !ilc.visible) continue;
++ if (!(ilc is IStyleableObject)) continue;
- if (buttonWidths) UIBase(ir).width = Number(buttonWidths[i]);
- else if (!isNaN(useWidth) && useWidth > 0) {
- UIBase(ir).width = useWidth;
+ COMPILE::SWF {
+ if (buttonWidths) {
+ var widthValue:* = buttonWidths[i];
+
+ if (_widthType == ButtonBarModel.PIXEL_WIDTHS) {
- if (widthValue != null) UIBase(ir).width = Number(widthValue);
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 0;
++ if (widthValue != null) ilc.width = Number(widthValue);
++ IStyleableObject(ilc).style.flexGrow = 0;
+ }
+ else if (_widthType == ButtonBarModel.PROPORTIONAL_WIDTHS) {
+ if (widthValue != null) {
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = Number(widthValue);
++ IStyleableObject(ilc).style.flexGrow = Number(widthValue);
+ }
+ }
+ else if (_widthType == ButtonBarModel.PERCENT_WIDTHS) {
- if (widthValue != null) UIBase(ir).percentWidth = Number(widthValue);
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 0;
++ if (widthValue != null) ilc.percentWidth = Number(widthValue);
++ IStyleableObject(ilc).style.flexGrow = 0;
+ }
+ } else {
- if (UIBase(ir).style == null) {
- UIBase(ir).style = new SimpleCSSStyles();
- }
- UIBase(ir).style.flexGrow = 1;
++ IStyleableObject(ilc).style.flexGrow = 1;
+ }
+ }
+
+ COMPILE::JS {
+ // otherwise let the flexbox layout handle matters on its own.
+ if (buttonWidths) {
+ var widthValue:* = buttonWidths[i];
+
+ if (_widthType == ButtonBarModel.PIXEL_WIDTHS) {
- if (widthValue != null) UIBase(ir).width = Number(widthValue);
++ if (widthValue != null) ilc.width = Number(widthValue);
+ }
+ else if (_widthType == ButtonBarModel.PROPORTIONAL_WIDTHS) {
- if (widthValue != null) UIBase(ir).element.style["flex-grow"] = String(widthValue);
++ if (widthValue != null) ilc.element.style["flex-grow"] = String(widthValue);
+ }
+ else if (_widthType == ButtonBarModel.PERCENT_WIDTHS) {
- if (widthValue != null) UIBase(ir).percentWidth = Number(widthValue);
++ if (widthValue != null) ilc.percentWidth = Number(widthValue);
+ }
+ } else {
- UIBase(ir).element.style["flex-grow"] = "1";
++ ilc.element.style["flex-grow"] = "1";
+ }
+
- UIBase(ir).height = contentView.height;
++ ilc.height = contentView.height;
}
- xpos += UIBase(ir).width;
}
-
- IEventDispatcher(_strand).dispatchEvent( new Event("layoutComplete") );
-
- return true;
+
+ // now let the horizontal layout take care of things.
+ return super.layout();
}
}
}
[26/43] git commit: [flex-asjs] [refs/heads/dual] - Add
FORM_URL_ENCODED constant. Improve comments.
Posted by ah...@apache.org.
Add FORM_URL_ENCODED constant. Improve comments.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1bb87596
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1bb87596
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1bb87596
Branch: refs/heads/dual
Commit: 1bb87596817e4cef598f6b14b725c55cf9612915
Parents: 060f982
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 09:52:03 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 09:52:03 2017 +1000
----------------------------------------------------------------------
.../flex/org/apache/flex/net/HTTPConstants.as | 30 ++++++++++++++++----
.../flex/org/apache/flex/net/HTTPService.as | 2 +-
.../main/flex/org/apache/flex/net/URLRequest.as | 2 +-
3 files changed, 26 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1bb87596/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPConstants.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPConstants.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPConstants.as
index 7060966..b36274d 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPConstants.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPConstants.as
@@ -21,7 +21,9 @@ package org.apache.flex.net
public final class HTTPConstants extends Object
{
/**
- *
+ *
+ * HTTP GET request.
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@ -30,7 +32,9 @@ package org.apache.flex.net
public static const GET:String = "GET";
/**
- *
+ *
+ * HTTP Post request.
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@ -39,7 +43,8 @@ package org.apache.flex.net
public static const POST:String = "POST";
/**
- *
+ * HTTP Put request.
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
@@ -48,14 +53,27 @@ package org.apache.flex.net
public static const PUT:String = "PUT";
/**
- *
+ *
+ * HTTP form url encoded.
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public static const DELETE:String = "DELETE";
-
+ public static const FORM_URL_ENCODED:String = "application/x-www-form-urlencoded";
+
+ /**
+ *
+ * HTTP delete request.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public static const DELETE:String = "DELETE";
+
/**
* Dispatched when the connection is opened.
*
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1bb87596/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
index ea3b7b3..5578b63 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/HTTPService.as
@@ -119,7 +119,7 @@ package org.apache.flex.net
}
}
- private var _contentType:String = "application/x-www-form-urlencoded";
+ private var _contentType:String = HTTPConstants.FORM_URL_ENCODED;
/**
* @copy org.apache.flex.net.BinaryUploader#contentType
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1bb87596/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
index 3c39f50..80924bf 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLRequest.as
@@ -59,7 +59,7 @@ package org.apache.flex.net
* @playerversion AIR 2.6
* @productversion FlexJS 0.7.0
*/
- public var contentType:String = "application/x-www-form-urlencoded";
+ public var contentType:String = HTTPConstants.FORM_URL_ENCODED;
/**
* Controls the HTTP form submission method.
[24/43] git commit: [flex-asjs] [refs/heads/dual] - match sides
Posted by ah...@apache.org.
match sides
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/d8a5c639
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/d8a5c639
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/d8a5c639
Branch: refs/heads/dual
Commit: d8a5c6393646b79f21aadf26b67132b867bf911c
Parents: f4dde33
Author: Justin Mclean <jm...@apache.org>
Authored: Mon Apr 17 09:40:01 2017 +1000
Committer: Justin Mclean <jm...@apache.org>
Committed: Mon Apr 17 09:40:01 2017 +1000
----------------------------------------------------------------------
.../Network/src/main/flex/org/apache/flex/net/URLStream.as | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d8a5c639/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
index be3a9d6..3946fa3 100644
--- a/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
+++ b/frameworks/projects/Network/src/main/flex/org/apache/flex/net/URLStream.as
@@ -124,8 +124,8 @@ package org.apache.flex.net
var contentSet:Boolean = false;
for each (var requestHeader:org.apache.flex.net.URLRequestHeader in urlRequest.requestHeaders)
{
- if(requestHeader.name.toLowerCase() == HTTPHeader.CONTENT_TYPE.toLocaleLowerCase())
- {
+ if(requestHeader.name.toLowerCase() == HTTPHeader.CONTENT_TYPE.toLowerCase())
+ {
contentSet = true;
req.contentType = requestHeader.value;
}
[03/43] git commit: [flex-asjs] [refs/heads/dual] - Handles case
where Group et al may not have a layout.
Posted by ah...@apache.org.
Handles case where Group et al may not have a layout.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/0fc2115c
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/0fc2115c
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/0fc2115c
Branch: refs/heads/dual
Commit: 0fc2115c4d4ca317f28ee4907dd179675cf590bb
Parents: 87efeed
Author: Peter Ent <pe...@apache.org>
Authored: Thu Apr 13 10:32:19 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Apr 13 10:32:19 2017 -0400
----------------------------------------------------------------------
.../HTML/src/main/flex/org/apache/flex/core/GroupBase.as | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0fc2115c/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
index 815101a..07859a1 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
@@ -109,8 +109,11 @@ package org.apache.flex.core
var layout:IBeadLayout = getBeadByType(IBeadLayout) as IBeadLayout;
if (!layout)
{
- layout = new (ValuesManager.valuesImpl.getValue(this, "iBeadLayout")) as IBeadLayout;
- addBead(layout);
+ var c:Class = ValuesManager.valuesImpl.getValue(this, "iBeadLayout") as Class;
+ if (c) {
+ layout = new c() as IBeadLayout;
+ addBead(layout);
+ }
}
}
[07/43] git commit: [flex-asjs] [refs/heads/dual] - Updates to Mobile
project. Getting closer.
Posted by ah...@apache.org.
Updates to Mobile project. Getting closer.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/e3cbf4fc
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/e3cbf4fc
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/e3cbf4fc
Branch: refs/heads/dual
Commit: e3cbf4fc916a57ad99cd14527ae67168fd702271
Parents: fd5eaae
Author: Peter Ent <pe...@apache.org>
Authored: Fri Apr 14 16:20:30 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Fri Apr 14 16:20:30 2017 -0400
----------------------------------------------------------------------
.../html/beads/layouts/HorizontalFlexLayout.as | 1 +
.../html/beads/layouts/VerticalFlexLayout.as | 1 +
.../Mobile/src/main/flex/MobileClasses.as | 1 -
.../apache/flex/mobile/ManagedContentArea.as | 55 --------------------
.../flex/mobile/beads/StackedViewManagerView.as | 40 ++++----------
.../flex/mobile/beads/TabbedViewManagerView.as | 41 ++++-----------
.../src/main/resources/basic-manifest.xml | 1 -
.../Mobile/src/main/resources/defaults.css | 7 ---
8 files changed, 21 insertions(+), 126 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
index cad6827..6fb927d 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/HorizontalFlexLayout.as
@@ -255,6 +255,7 @@ package org.apache.flex.html.beads.layouts
var child:UIBase = contentView.getElementAt(i) as UIBase;
if (grow >= 0) child.element.style["flex-grow"] = String(grow);
if (shrink >= 0) child.element.style["flex-shrink"] = String(shrink);
+ child.dispatchEvent(new Event("layoutNeeded"));
}
return true;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
index f495acc..c543425 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
@@ -251,6 +251,7 @@ package org.apache.flex.html.beads.layouts
var child:UIBase = contentView.getElementAt(i) as UIBase;
if (grow >= 0) child.element.style["flex-grow"] = String(grow);
if (shrink >= 0) child.element.style["flex-shrink"] = String(shrink);
+ child.dispatchEvent(new Event("layoutNeeded"));
}
return true;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/MobileClasses.as b/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
index ea74217..7c650fd 100644
--- a/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
+++ b/frameworks/projects/Mobile/src/main/flex/MobileClasses.as
@@ -33,7 +33,6 @@ internal class MobileClasses
import org.apache.flex.mobile.beads.DatePickerView; DatePickerView;
import org.apache.flex.mobile.ToggleSwitch; ToggleSwitch;
import org.apache.flex.mobile.ViewManagerBase; ViewManagerBase;
- import org.apache.flex.mobile.ManagedContentArea; ManagedContentArea;
import org.apache.flex.mobile.beads.StackedViewManagerView; StackedViewManagerView;
import org.apache.flex.mobile.beads.TabbedViewManagerView; TabbedViewManagerView;
import org.apache.flex.mobile.beads.ViewManagerViewBase; ViewManagerViewBase;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
deleted file mode 100644
index 16081e5..0000000
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/ManagedContentArea.as
+++ /dev/null
@@ -1,55 +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.mobile
-{
- import org.apache.flex.core.UIBase;
- import org.apache.flex.html.Group;
- import org.apache.flex.events.Event;
-
- COMPILE::JS
- {
- import org.apache.flex.core.WrappedHTMLElement;
- }
-
- /**
- * The ManagedContentArea is the space in which views are displayed by the
- * view manager classes.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public class ManagedContentArea extends Group
- {
- /**
- * Constructor.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public function ManagedContentArea()
- {
- super();
- className = "ManagedContentArea";
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
index 2e4e009..a500c12 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/StackedViewManagerView.as
@@ -22,13 +22,13 @@ package org.apache.flex.mobile.beads
import org.apache.flex.core.IStrand;
import org.apache.flex.core.IViewportModel;
import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.SimpleCSSStyles;
import org.apache.flex.events.IEventDispatcher;
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.IViewManagerView;
- import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.chrome.ToolBar;
import org.apache.flex.mobile.models.ViewManagerModel;
@@ -63,13 +63,6 @@ package org.apache.flex.mobile.beads
* Children
*/
- private var _contentArea:ManagedContentArea;
-
- public function get contentArea():ManagedContentArea
- {
- return _contentArea;
- }
-
public function get toolBar():ToolBar
{
var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
@@ -94,9 +87,6 @@ package org.apache.flex.mobile.beads
_strand = value;
super.strand = value;
- // The content area will hold the views
- _contentArea = new ManagedContentArea();
-
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
if (model.toolBarItems)
@@ -116,11 +106,6 @@ package org.apache.flex.mobile.beads
IEventDispatcher(model).addEventListener("viewPushed", handlePushEvent);
IEventDispatcher(model).addEventListener("viewPopped", handlePopEvent);
- COMPILE::SWF {
- _contentArea.percentWidth = 100;
- }
- UIBase(_strand).addElement(_contentArea);
-
if (toolBar) {
UIBase(_strand).addElement(toolBar);
}
@@ -164,11 +149,11 @@ package org.apache.flex.mobile.beads
var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
if (_topView != null) {
- contentArea.removeElement(_topView);
+ UIBase(_strand).removeElement(_topView);
}
_topView = model.views[index] as IViewManagerView;
_topView.viewManager = _strand as IViewManager;
- contentArea.addElement(_topView);
+ UIBase(_strand).addElementAt(_topView,1);
COMPILE::JS {
if (_topView) {
@@ -176,22 +161,15 @@ package org.apache.flex.mobile.beads
}
}
COMPILE::SWF {
+ if (UIBase(_topView).style == null) {
+ UIBase(_topView).style = new SimpleCSSStyles();
+ }
+ UIBase(_topView).style.flexGrow = 1;
UIBase(_topView).percentWidth = 100;
- UIBase(_topView).percentHeight = 100;
- contentArea.layoutNeeded();
}
- }
-
- override public function afterLayout():void
- {
- super.afterLayout();
- COMPILE::SWF {
- if (_topView) {
- UIBase(_topView).width = contentArea.width;
- UIBase(_topView).height = contentArea.height;
- }
- }
+ // Now that a view has changed, refresh the layout for this component.
+ UIBase(_strand).dispatchEvent(new Event("layoutNeeded"));
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
index 7959da0..4ee3a5a 100644
--- a/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
+++ b/frameworks/projects/Mobile/src/main/flex/org/apache/flex/mobile/beads/TabbedViewManagerView.as
@@ -22,13 +22,13 @@ package org.apache.flex.mobile.beads
import org.apache.flex.core.IStrand;
import org.apache.flex.core.IViewportModel;
import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.SimpleCSSStyles;
import org.apache.flex.events.IEventDispatcher;
import org.apache.flex.events.Event;
import org.apache.flex.html.beads.ContainerView;
import org.apache.flex.html.beads.layouts.HorizontalLayout;
import org.apache.flex.mobile.IViewManager;
import org.apache.flex.mobile.IViewManagerView;
- import org.apache.flex.mobile.ManagedContentArea;
import org.apache.flex.mobile.chrome.NavigationBar;
import org.apache.flex.mobile.chrome.TabBar;
import org.apache.flex.mobile.models.ViewManagerModel;
@@ -64,8 +64,6 @@ package org.apache.flex.mobile.beads
* Children
*/
- private var _contentArea:ManagedContentArea;
-
public function get tabBar():TabBar
{
var model:ViewManagerModel = strand.getBeadByType(IBeadModel) as ViewManagerModel;
@@ -77,11 +75,6 @@ package org.apache.flex.mobile.beads
model.tabBar = value;
}
- public function get contentArea():ManagedContentArea
- {
- return _contentArea;
- }
-
/*
* ViewBead
*/
@@ -95,9 +88,6 @@ package org.apache.flex.mobile.beads
_strand = value;
super.strand = value;
- // The content area will hold the views
- _contentArea = new ManagedContentArea();
-
var model:ViewManagerModel = value.getBeadByType(IBeadModel) as ViewManagerModel;
// TabbedViewManager always has a TabBar
@@ -112,11 +102,6 @@ package org.apache.flex.mobile.beads
{
super.handleInitComplete(event);
- COMPILE::SWF {
- _contentArea.percentWidth = 100;
- }
- UIBase(_strand).addElement(_contentArea);
-
if (tabBar) {
UIBase(_strand).addElement(tabBar);
}
@@ -131,34 +116,28 @@ package org.apache.flex.mobile.beads
var model:ViewManagerModel = _strand.getBeadByType(IBeadModel) as ViewManagerModel;
if (_currentView != null) {
- contentArea.removeElement(_currentView);
+ UIBase(_strand).removeElement(_currentView);
}
_currentView = model.views[index] as IViewManagerView;
_currentView.viewManager = _strand as IViewManager;
- contentArea.addElement(_currentView);
+ UIBase(_strand).addElementAt(_currentView,1);
COMPILE::JS {
if (_currentView) {
UIBase(_currentView).element.style["flex-grow"] = "1";
}
+ UIBase(_strand).dispatchEvent(new Event("layoutNeeded"));
}
COMPILE::SWF {
+ if (UIBase(_currentView).style == null) {
+ UIBase(_currentView).style = new SimpleCSSStyles();
+ }
+ UIBase(_currentView).style.flexGrow = 1;
UIBase(_currentView).percentWidth = 100;
- UIBase(_currentView).percentHeight = 100;
- contentArea.layoutNeeded();
}
- }
-
- override public function afterLayout():void
- {
- super.afterLayout();
- COMPILE::SWF {
- if (_currentView) {
- UIBase(_currentView).width = contentArea.width;
- UIBase(_currentView).height = contentArea.height;
- }
- }
+ // Now that the view has changed, refresh the layout on this component.
+ UIBase(_strand).dispatchEvent(new Event("layoutNeeded"));
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml b/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
index ac85e14..e0f523d 100644
--- a/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Mobile/src/main/resources/basic-manifest.xml
@@ -23,7 +23,6 @@
<component id="StackedViewManager" class="org.apache.flex.mobile.StackedViewManager" />
<component id="TabbedViewManager" class="org.apache.flex.mobile.TabbedViewManager" />
<component id="TitleView" class="org.apache.flex.mobile.TitleView" />
- <component id="ManagedContentArea" class="org.apache.flex.mobile.ManagedContentArea" />
<component id="NavigationBar" class="org.apache.flex.mobile.chrome.NavigationBar" />
<component id="ToolBar" class="org.apache.flex.mobile.chrome.ToolBar" />
<component id="TabBar" class="org.apache.flex.mobile.chrome.TabBar" />
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e3cbf4fc/frameworks/projects/Mobile/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Mobile/src/main/resources/defaults.css b/frameworks/projects/Mobile/src/main/resources/defaults.css
index f360d5c..569904e 100644
--- a/frameworks/projects/Mobile/src/main/resources/defaults.css
+++ b/frameworks/projects/Mobile/src/main/resources/defaults.css
@@ -42,13 +42,6 @@ TabbedViewManager
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalFlexLayout");
}
-ManagedContentArea
-{
- display: flex;
- flex-grow: 1;
- IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
-}
-
TabBar {
flex-grow: 0;
height: 40px;
[35/43] git commit: [flex-asjs] [refs/heads/dual] - Get Express
package working again.
Posted by ah...@apache.org.
Get Express package working again.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/975b4786
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/975b4786
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/975b4786
Branch: refs/heads/dual
Commit: 975b47867b4ca4e800f6b234d4a1628fc4edc583
Parents: 6fca715
Author: Peter Ent <pe...@apache.org>
Authored: Mon Apr 17 15:23:42 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Mon Apr 17 15:23:42 2017 -0400
----------------------------------------------------------------------
frameworks/projects/Express/src/main/resources/defaults.css | 9 +++------
.../Express/src/main/resources/express-manifest.xml | 1 +
2 files changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/975b4786/frameworks/projects/Express/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/Express/src/main/resources/defaults.css b/frameworks/projects/Express/src/main/resources/defaults.css
index 7046a0d..cf49448 100644
--- a/frameworks/projects/Express/src/main/resources/defaults.css
+++ b/frameworks/projects/Express/src/main/resources/defaults.css
@@ -40,10 +40,10 @@ Application
}
Container
-{
+{
IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
- IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
+ IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
background-color: #FFFFFF;
@@ -59,10 +59,7 @@ TextInput
View
{
- IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
+ IBeadView: ClassReference("org.apache.flex.html.beads.GroupView");
IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
- IContentView: ClassReference("org.apache.flex.html.supportClasses.ContainerContentArea");
- IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
- IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/975b4786/frameworks/projects/Express/src/main/resources/express-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Express/src/main/resources/express-manifest.xml b/frameworks/projects/Express/src/main/resources/express-manifest.xml
index c0d2b16..9ea226e 100644
--- a/frameworks/projects/Express/src/main/resources/express-manifest.xml
+++ b/frameworks/projects/Express/src/main/resources/express-manifest.xml
@@ -42,6 +42,7 @@
<component id="ButtonBar" class="org.apache.flex.html.ButtonBar" lookupOnly="true" />
<component id="CloseButton" class="org.apache.flex.html.CloseButton" lookupOnly="true" />
<component id="DropDownList" class="org.apache.flex.html.DropDownList" lookupOnly="true" />
+ <component id="Group" class="org.apache.flex.html.Group" lookupOnly="true" />
<component id="Image" class="org.apache.flex.html.Image" lookupOnly="true" />
<component id="Label" class="org.apache.flex.html.Label" lookupOnly="true" />
<component id="MultilineLabel" class="org.apache.flex.html.MultilineLabel" lookupOnly="true" />
[38/43] git commit: [flex-asjs] [refs/heads/dual] - lost this event
metadata in the merge
Posted by ah...@apache.org.
lost this event metadata in the merge
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/358a06f1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/358a06f1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/358a06f1
Branch: refs/heads/dual
Commit: 358a06f1a6720958ea85c487a2dddf396ade66e7
Parents: 9fd9b78
Author: Alex Harui <ah...@apache.org>
Authored: Tue Apr 18 08:47:42 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Tue Apr 18 08:47:42 2017 -0700
----------------------------------------------------------------------
.../Basic/src/main/flex/org/apache/flex/html/CheckBox.as | 10 ++++++++++
1 file changed, 10 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/358a06f1/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/CheckBox.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/CheckBox.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/CheckBox.as
index ef78a05..d8e8568 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/CheckBox.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/CheckBox.as
@@ -132,6 +132,16 @@ package org.apache.flex.html
}
}
+ /**
+ * Dispatched when the user checks or un-checks the CheckBox.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ [Event(name="change", type="org.apache.flex.events.Event")]
+
COMPILE::JS
public class CheckBox extends UIBase
{
[43/43] git commit: [flex-asjs] [refs/heads/dual] - get stock quotes
to work again
Posted by ah...@apache.org.
get stock quotes to work again
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/31e3c55b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/31e3c55b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/31e3c55b
Branch: refs/heads/dual
Commit: 31e3c55be37020b1e0afed2e86490872624156cc
Parents: 4941e12
Author: Alex Harui <ah...@apache.org>
Authored: Fri Apr 21 09:31:26 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Apr 21 09:31:26 2017 -0700
----------------------------------------------------------------------
.../DataBindingExample/src/main/flex/controllers/MyController.as | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/31e3c55b/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as b/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
index b7d52bd..6487908 100644
--- a/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
+++ b/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
@@ -42,8 +42,8 @@ package controllers
private var service:HTTPService;
private var collection:LazyCollection;
- private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
- private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+ private var queryBegin:String = "https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+ private var queryEnd:String = "%22)%0A%09%09&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&format=json";
private function viewChangeHandler(event:Event):void
{
[34/43] git commit: [flex-asjs] [refs/heads/dual] - DataGrid was
supposed to extend GroupBase, not Group.
Posted by ah...@apache.org.
DataGrid was supposed to extend GroupBase, not Group.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/6fca7152
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/6fca7152
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/6fca7152
Branch: refs/heads/dual
Commit: 6fca71522e14026ba757bb90f05cc3507cb4c06e
Parents: 313e900
Author: Peter Ent <pe...@apache.org>
Authored: Mon Apr 17 14:50:27 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Mon Apr 17 14:50:27 2017 -0400
----------------------------------------------------------------------
.../main/flex/org/apache/flex/html/DataGrid.as | 24 +++++---------------
1 file changed, 6 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/6fca7152/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as
index fda1b46..5a17c4a 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataGrid.as
@@ -22,8 +22,10 @@ package org.apache.flex.html
import org.apache.flex.core.IDataGridModel;
import org.apache.flex.core.IDataGridPresentationModel;
import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.GroupBase;
import org.apache.flex.core.ValuesManager;
import org.apache.flex.html.beads.models.DataGridPresentationModel;
+ import org.apache.flex.events.Event;
[Event(name="change", type="org.apache.flex.events.Event")]
@@ -41,7 +43,7 @@ package org.apache.flex.html
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public class DataGrid extends Group
+ public class DataGrid extends GroupBase
{
/**
* constructor.
@@ -160,24 +162,10 @@ package org.apache.flex.html
presentationModel.rowHeight = value;
}
- /**
- * @private
- * The DataGrid needs to know whenever its size is being changed so the columns can be
- * be aligned properly, so the noEvent value must always be false.
- */
- override public function setWidth(value:Number, noEvent:Boolean=false):void
- {
- super.setWidth(value,false);
- }
-
- /**
- * @private
- * The DataGrid needs to know whenever its size is being changed so the columns can be
- * be aligned properly, so the noEvent value must always be false.
- */
- override public function setHeight(value:Number, noEvent:Boolean=false):void
+ override public function addedToParent():void
{
- super.setHeight(value,false);
+ super.addedToParent();
+ dispatchEvent(new Event("initComplete"));
}
}
}