Updated Branches:
  refs/heads/develop 6644ca1e4 -> 8e0eab9ee

Fix bar chart layout to take into account the height of the x-axis


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8e0eab9e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8e0eab9e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8e0eab9e

Branch: refs/heads/develop
Commit: 8e0eab9eeac1ac0b1a66bc37871af061733adf18
Parents: 6644ca1
Author: Om <[email protected]>
Authored: Thu Feb 6 17:46:47 2014 -0800
Committer: Om <[email protected]>
Committed: Thu Feb 6 17:51:10 2014 -0800

----------------------------------------------------------------------
 .../org/apache/flex/charts/beads/XAxisBead.as   | 10 +++++++---
 .../flex/charts/beads/layouts/BarChartLayout.as | 21 +++++++++++++++++++-
 2 files changed, 27 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8e0eab9e/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/XAxisBead.as
----------------------------------------------------------------------
diff --git 
a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/XAxisBead.as 
b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/XAxisBead.as
index a7d543d..1763fce 100644
--- 
a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/XAxisBead.as
+++ 
b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/XAxisBead.as
@@ -18,10 +18,12 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.charts.beads
 {      
+       import org.apache.flex.charts.beads.layouts.BarChartLayout;
        import org.apache.flex.charts.core.IChart;
        import org.apache.flex.charts.core.IChartAxis;
        import org.apache.flex.core.FilledRectangle;
        import org.apache.flex.core.IBead;
+       import org.apache.flex.core.IBeadLayout;
        import org.apache.flex.core.IDataProviderItemRendererMapper;
        import org.apache.flex.core.ISelectionModel;
        import org.apache.flex.core.IStrand;
@@ -110,13 +112,15 @@ package org.apache.flex.charts.beads
                        var series:Array = IChart(_strand).series;
                                        
                        var xpos:Number = 0;
+                       var barChartLayout:BarChartLayout = 
_strand.getBeadByType(IBeadLayout) as BarChartLayout; 
+                       var xAxisHeightOffset:Number = 
barChartLayout.xAxisHeight;
                        var useWidth:Number = UIBase(_strand).width / 
renderers.length;
                        
                        // draw the horzontal axis
                        var horzLine:FilledRectangle = new FilledRectangle();
                        horzLine.fillColor = 0x111111;
                        horzLine.x = 0;
-                       horzLine.y = UIBase(_strand).height;
+                       horzLine.y = UIBase(_strand).height - xAxisHeightOffset;
                        horzLine.height = 1;
                        horzLine.width = UIBase(_strand).width;
                        UIBase(_strand).addElement(horzLine);
@@ -128,7 +132,7 @@ package org.apache.flex.charts.beads
                                var label:Label = new Label();
                                label.text = items[i][labelField];
                                label.x = xpos;
-                               label.y = labelY;
+                               label.y = labelY - xAxisHeightOffset;
                                
                                UIBase(_strand).addElement(label);
                                
@@ -136,7 +140,7 @@ package org.apache.flex.charts.beads
                                var tick:FilledRectangle = new 
FilledRectangle();
                                tick.fillColor = 0x111111;
                                tick.x = xpos + useWidth/2;
-                               tick.y = UIBase(_strand).height;
+                               tick.y = UIBase(_strand).height - 
xAxisHeightOffset;
                                tick.width = 1;
                                tick.height = 5;
                                UIBase(_strand).addElement(tick);

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8e0eab9e/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/layouts/BarChartLayout.as
----------------------------------------------------------------------
diff --git 
a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/layouts/BarChartLayout.as
 
b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/layouts/BarChartLayout.as
index f30d152..08d7d15 100644
--- 
a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/layouts/BarChartLayout.as
+++ 
b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/charts/beads/layouts/BarChartLayout.as
@@ -80,6 +80,25 @@ package org.apache.flex.charts.beads.layouts
                        _gap = value;
                }
                
+               private var _xAxisHeight:Number = 30;
+               
+               /**
+                *  The height of the x-axis. Assumes a default of 30.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.0
+                */
+               public function get xAxisHeight():Number
+               {
+                       return _xAxisHeight;
+               }
+               public function set xAxisHeight(value:Number):void
+               {
+                       _xAxisHeight = value;
+               }
+               
                /**
                 * @private
                 */
@@ -92,7 +111,7 @@ package org.apache.flex.charts.beads.layouts
                        
                        var xpos:Number = 0;
                        var useWidth:Number = (UIBase(_strand).width / n) - gap;
-                       var useHeight:Number = UIBase(_strand).height;
+                       var useHeight:Number = UIBase(_strand).height - 
xAxisHeight;
                        
                        var maxYValue:Number = 0;
                        var series:Array = IChart(_strand).series;

Reply via email to