[Libreoffice-commits] core.git: sw/source

aqcoder flw.aquarius at gmail.com
Tue Dec 15 04:51:58 PST 2015


 sw/source/core/layout/paintfrm.cxx |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

New commits:
commit 9a95520948de1d92c55252aa5f90606b01d6ac9e
Author: aqcoder <flw.aquarius at gmail.com>
Date:   Sun Dec 13 19:11:28 2015 +0800

    fix paint table border in DOUBLE_THIN style
    
    it always paint partial table border which have line style of DOUBLE_THIN.
    Becouse the partial of the border line is out of the invalid window rect.
    so, we extend it.
    
    Change-Id: I9d95ca71a96cfa869c68d9d2200f29c7cd447eca
    Reviewed-on: https://gerrit.libreoffice.org/20701
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: jan iversen <jani at documentfoundation.org>

diff --git a/sw/source/core/layout/paintfrm.cxx b/sw/source/core/layout/paintfrm.cxx
index 4fb7c89..08003e0 100644
--- a/sw/source/core/layout/paintfrm.cxx
+++ b/sw/source/core/layout/paintfrm.cxx
@@ -2742,6 +2742,24 @@ void SwTabFramePainter::PaintLines(OutputDevice& rDev, const SwRect& rRect) cons
                 aPaintEnd.Y()   += static_cast<long>(offsetEnd   + 0.5);
             }
 
+            if( rEntryStyle.Type() == table::BorderLineStyle::DOUBLE_THIN )
+            {
+                long aPixel = rDev.PixelToLogic( Point(1, 1) ).getX();
+                SwRect aPaintEx( aPaintStart, aPaintEnd );
+                if( bHori )
+                {
+                    aPaintEx.Pos().Y() -= aPixel;
+                    aPaintEx.SSize().Height() += aPixel * 2;
+                }
+                else
+                {
+                    aPaintEx.Pos().X() -= aPixel;
+                    aPaintEx.SSize().Width() += aPixel * 2;
+                }
+
+                gProp.pSGlobalShell->InvalidateWindows( aPaintEx );
+            }
+
             if (bHori)
             {
                 mrTabFrame.ProcessPrimitives( svx::frame::CreateBorderPrimitives(


More information about the Libreoffice-commits mailing list