From bc3c05f816fbe21c251e4749097914e40d373ddd Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Thu, 11 Apr 2013 15:41:14 +0200 Subject: RTF import of new-style frames: implement line color/width Change-Id: Ice40f1a9532e661ab6f4e3f476e638f2f8f82b72 --- writerfilter/source/rtftok/rtfsdrimport.cxx | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'writerfilter') diff --git a/writerfilter/source/rtftok/rtfsdrimport.cxx b/writerfilter/source/rtftok/rtfsdrimport.cxx index 90b8b9e28509..17cb1d8dcb7d 100644 --- a/writerfilter/source/rtftok/rtfsdrimport.cxx +++ b/writerfilter/source/rtftok/rtfsdrimport.cxx @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -405,8 +406,23 @@ void RTFSdrImport::resolve(RTFShape& rShape) if (xPropertySet.is()) { if (!bTextFrame) + { xPropertySet->setPropertyValue("LineColor", aLineColor); - xPropertySet->setPropertyValue("LineWidth", aLineWidth); + xPropertySet->setPropertyValue("LineWidth", aLineWidth); + } + else + { + static OUString aBorders[] = { + OUString("TopBorder"), OUString("LeftBorder"), OUString("BottomBorder"), OUString("RightBorder") + }; + for (unsigned int i = 0; i < SAL_N_ELEMENTS(aBorders); ++i) + { + table::BorderLine2 aBorderLine = xPropertySet->getPropertyValue(aBorders[i]).get(); + aBorderLine.Color = aLineColor.get(); + aBorderLine.LineWidth = aLineWidth.get(); + xPropertySet->setPropertyValue(aBorders[i], uno::makeAny(aBorderLine)); + } + } if (rShape.oZ) resolveDhgt(xPropertySet, *rShape.oZ); if (bTextFrame) -- cgit