89eee94
From e44b64d297293b83459fddda968923750e2f6a5b Mon Sep 17 00:00:00 2001
89eee94
From: Eike Rathke <erack@redhat.com>
89eee94
Date: Thu, 2 Feb 2012 19:11:37 +0100
89eee94
Subject: [PATCH] resolved fdo#42784 BorderLine with only InnerWidth set does
89eee94
 not work (cherry picked from commit
89eee94
 971f826a96f0938bfcfd8dfe26edd50d8e031bb4)
89eee94
89eee94
Signed-off-by: Michael Stahl <mstahl@redhat.com>
89eee94
---
89eee94
 editeng/source/items/borderline.cxx |   16 ++++++++++++++++
89eee94
 1 files changed, 16 insertions(+), 0 deletions(-)
89eee94
89eee94
diff --git a/editeng/source/items/borderline.cxx b/editeng/source/items/borderline.cxx
89eee94
index 61cecce..d15f53c 100644
89eee94
--- a/editeng/source/items/borderline.cxx
89eee94
+++ b/editeng/source/items/borderline.cxx
89eee94
@@ -300,6 +300,22 @@ void SvxBorderLine::GuessLinesWidths( SvxBorderStyle nStyle, sal_uInt16 nOut, sa
89eee94
     else
89eee94
     {
89eee94
         SetStyle( nStyle );
89eee94
+        if (nOut == 0 && nIn > 0)
89eee94
+        {
89eee94
+            // If only inner width is given swap inner and outer widths for
89eee94
+            // single line styles, otherwise GuessWidth() marks this as invalid
89eee94
+            // and returns a 0 width.
89eee94
+            switch (nStyle)
89eee94
+            {
89eee94
+                case SOLID:
89eee94
+                case DOTTED:
89eee94
+                case DASHED:
89eee94
+                    ::std::swap( nOut, nIn);
89eee94
+                    break;
89eee94
+                default:
89eee94
+                    ;   // nothing
89eee94
+            }
89eee94
+        }
89eee94
         m_nWidth = m_aWidthImpl.GuessWidth( nOut, nIn, nDist );
89eee94
     }
89eee94
 }
89eee94
-- 
89eee94
1.7.7.6
89eee94