Repository: flex-tlf
Updated Branches:
  refs/heads/tables 8db7a4a2e -> 135709a2c


Fixed vertical placement of table blocks to take into account the previous line 
descent and paragraph space before/space after.


Project: http://git-wip-us.apache.org/repos/asf/flex-tlf/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-tlf/commit/135709a2
Tree: http://git-wip-us.apache.org/repos/asf/flex-tlf/tree/135709a2
Diff: http://git-wip-us.apache.org/repos/asf/flex-tlf/diff/135709a2

Branch: refs/heads/tables
Commit: 135709a2ce8b0ad03b40a07d1c71abe1260b60d0
Parents: 8db7a4a
Author: Harbs <[email protected]>
Authored: Tue Nov 18 00:32:54 2014 +0200
Committer: Harbs <[email protected]>
Committed: Tue Nov 18 00:32:54 2014 +0200

----------------------------------------------------------------------
 .../flashx/textLayout/compose/BaseCompose.as    | 21 ++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/135709a2/textLayout/src/flashx/textLayout/compose/BaseCompose.as
----------------------------------------------------------------------
diff --git a/textLayout/src/flashx/textLayout/compose/BaseCompose.as 
b/textLayout/src/flashx/textLayout/compose/BaseCompose.as
index b051036..6107c2f 100644
--- a/textLayout/src/flashx/textLayout/compose/BaseCompose.as
+++ b/textLayout/src/flashx/textLayout/compose/BaseCompose.as
@@ -548,6 +548,8 @@ package flashx.textLayout.compose
                        var curTableBlock:TextFlowTableBlock = 
tableElement.getFirstBlock();
                        curTableBlock.clear();
                        curTableBlock.y = _parcelList.totalDepth;
+                       var adjustTop:Number = isNaN(_lastLineDescent) ? 0 : 
_lastLineDescent;
+                       curTableBlock.y += adjustTop;
                        curTableBlock.x = _lineSlug.leftMargin;
                        var lineOffset:Number = (_curParaFormat.direction == 
Direction.LTR) ? _lineSlug.leftMargin : _lineSlug.rightMargin;
                        curTableBlock.initialize(_curParaElement, 
_lineSlug.width, lineOffset-_parcelList.insideListItemMargin, 
tableElement.getAbsoluteStart(),1);
@@ -1073,6 +1075,9 @@ package flashx.textLayout.compose
                        var result:Boolean = true;
                        var textLine:TextLine;
                        
+                       var spaceBefore:Number;
+                       var spaceCarried:Number;
+                       
                        var leftMargin:Number;
                        var rightMargin:Number;
                        
@@ -1124,6 +1129,18 @@ package flashx.textLayout.compose
                                var curChild:FlowElement = 
_curParaElement.getChildAt(_curParaElement.findChildIndexAtPosition(_curElementStart
 - _curParaStart));
                                if(curChild is TableElement)
                                {
+                                       // Space before does not apply to the 
first line, unless LeadingModel.BOX is used
+                                       // Space carried never applies to the 
first line
+                                       spaceBefore = 
isNaN(_curParaElement.computedFormat.paragraphSpaceBefore) ? 0 : 
_curParaElement.computedFormat.paragraphSpaceBefore;
+                                       spaceBefore  = _atColumnStart ? 0 : 
spaceBefore;
+                                       spaceCarried = _atColumnStart ? 0 : 
_paragraphSpaceCarried;
+                                       if (spaceBefore != 0 || spaceCarried != 
0)
+                                               
_parcelList.addTotalDepth(Math.max(spaceBefore, spaceCarried));
+                                       
+                                       _paragraphSpaceCarried = 0;
+                                       if (_verticalSpaceCarried != 0)
+                                               _verticalSpaceCarried = 0;
+                                       
                                        if(!composeTableElement(curChild as 
TableElement, _curElementStart))
                                                return false;
                                        
@@ -1215,8 +1232,8 @@ package flashx.textLayout.compose
                                
                                // Space before does not apply to the first 
line, unless LeadingModel.BOX is used
                                // Space carried never applies to the first line
-                               var spaceBefore:Number  = _atColumnStart && 
(_curParaFormat.leadingModel != LeadingModel.BOX) ? 0 : _curLine.spaceBefore;
-                               var spaceCarried:Number = _atColumnStart ? 0 : 
_paragraphSpaceCarried;
+                               spaceBefore  = _atColumnStart && 
(_curParaFormat.leadingModel != LeadingModel.BOX) ? 0 : _curLine.spaceBefore;
+                               spaceCarried = _atColumnStart ? 0 : 
_paragraphSpaceCarried;
                                if (spaceBefore != 0 || spaceCarried != 0)
                                        
_parcelList.addTotalDepth(Math.max(spaceBefore, spaceCarried));
                                

Reply via email to