Kaydet (Commit) 8c200d85 authored tarafından karth's avatar karth Kaydeden (comit) Ahmad Harthi

Resolves the bug fdo#59117 missing borders of last column

  When writingmode is set to RTL, the table is start drawn from Last column
to first column.  There is no problem with left&right lines, Because these
are not depends on the LTR or RTL writingmode.  But the bottom & top line
depends on writing mode.  As these two lines are drawn from previous cell to
next cell(left to right) the nX value should be nX-1 in RTL writingmode.

Change-Id: I3e21c7dd469ed5ba29e66f79da471b662632182e
Reviewed-on: https://gerrit.libreoffice.org/1834Reviewed-by: 's avatarAhmad Harthi <aalharthi@kacst.edu.sa>
Tested-by: 's avatarAhmad Harthi <aalharthi@kacst.edu.sa>
üst 6db0a5f3
...@@ -357,7 +357,7 @@ namespace drawinglayer ...@@ -357,7 +357,7 @@ namespace drawinglayer
} }
} }
if(!getRightLine().isEmpty() && getRightIsOutside()) if(!getRightLine().isEmpty())
{ {
// create right line from top to bottom // create right line from top to bottom
const basegfx::B2DPoint aStart(getTransform() * basegfx::B2DPoint(1.0, 0.0)); const basegfx::B2DPoint aStart(getTransform() * basegfx::B2DPoint(1.0, 0.0));
...@@ -622,9 +622,11 @@ namespace sdr ...@@ -622,9 +622,11 @@ namespace sdr
// get basic lines // get basic lines
impGetLine(aLeftLine, rTableLayouter, nX, nY, false, nColCount, nRowCount, bIsRTL); impGetLine(aLeftLine, rTableLayouter, nX, nY, false, nColCount, nRowCount, bIsRTL);
impGetLine(aBottomLine, rTableLayouter, nX, nYBottom, true, nColCount, nRowCount, bIsRTL); //To resolve the bug fdo#59117
//In RTL table as BottomLine & TopLine are drawn from Left Side to Right, nX should be nX-1
impGetLine(aBottomLine, rTableLayouter, bIsRTL?nX-1:nX, nYBottom, true, nColCount, nRowCount, bIsRTL);
impGetLine(aRightLine, rTableLayouter, nXRight, nY, false, nColCount, nRowCount, bIsRTL); impGetLine(aRightLine, rTableLayouter, nXRight, nY, false, nColCount, nRowCount, bIsRTL);
impGetLine(aTopLine, rTableLayouter, nX, nY, true, nColCount, nRowCount, bIsRTL); impGetLine(aTopLine, rTableLayouter, bIsRTL?nX-1:nX, nY, true, nColCount, nRowCount, bIsRTL);
// get the neighbor cells' borders // get the neighbor cells' borders
impGetLine(aLeftFromTLine, rTableLayouter, nX, nY - 1, false, nColCount, nRowCount, bIsRTL); impGetLine(aLeftFromTLine, rTableLayouter, nX, nY - 1, false, nColCount, nRowCount, bIsRTL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment