summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@cib.de>2017-09-12 17:28:54 +0200
committerArmin Le Grand <Armin.Le.Grand@cib.de>2017-09-15 12:58:04 +0200
commit53599a9a183878cdf435f80939f8d301a3909d78 (patch)
tree5d410e53541c1b83e96c8a5022899cb5e7cb05b8 /svx
parent98ceb50c0a65708729df8f2967e616f52db42261 (diff)
borderline: merge redefined, mirrored Styles
Redefined merge of BorderlinePrimitives, removed old Writer stuff for it. Also added support for handling Styles mirrored for extension calculations.
Diffstat (limited to 'svx')
-rw-r--r--svx/source/dialog/framelink.cxx90
-rw-r--r--svx/source/dialog/framelinkarray.cxx114
-rw-r--r--svx/source/table/viewcontactoftableobj.cxx24
3 files changed, 137 insertions, 91 deletions
diff --git a/svx/source/dialog/framelink.cxx b/svx/source/dialog/framelink.cxx
index ca66b285f8d4..c7a6377ab3e8 100644
--- a/svx/source/dialog/framelink.cxx
+++ b/svx/source/dialog/framelink.cxx
@@ -88,7 +88,7 @@ void Style::SetPatternScale( double fScale )
{
if(!maImplStyle)
{
- if(1.0 == fScale)
+ if(rtl::math::approxEqual(1.0, fScale))
{
return;
}
@@ -334,29 +334,6 @@ bool Style::operator<( const Style& rOther) const
return false;
}
-bool CheckFrameBorderConnectable( const Style& rLBorder, const Style& rRBorder,
- const Style& rTFromTL, const Style& rTFromT, const Style& rTFromTR,
- const Style& rBFromBL, const Style& rBFromB, const Style& rBFromBR )
-{
- return // returns 1 AND (2a OR 2b)
- // 1) only, if both frame borders are equal
- (rLBorder == rRBorder)
- &&
- (
- (
- // 2a) if the borders are not double, at least one of the vertical must not be double
- !rLBorder.Secn() && (!rTFromT.Secn() || !rBFromB.Secn())
- )
- ||
- (
- // 2b) if the borders are double, all other borders must not be double
- rLBorder.Secn() &&
- !rTFromTL.Secn() && !rTFromT.Secn() && !rTFromTR.Secn() &&
- !rBFromBL.Secn() && !rBFromB.Secn() && !rBFromBR.Secn()
- )
- );
-}
-
// Drawing functions
struct OffsetAndHalfWidthAndColor
{
@@ -387,48 +364,70 @@ struct ExtendSet
ExtendSet() : mfExtLeft(0.0), mfExtRight(0.0) {}
};
-void getOffsetAndHalfWidthAndColorFromStyle(const Style& rStyle, const Color* pForceColor, std::vector< OffsetAndHalfWidthAndColor >& offsets)
+double getOffsetAndHalfWidthAndColorFromStyle(
+ const Style& rStyle,
+ const Color* pForceColor,
+ bool bMirrored,
+ std::vector< OffsetAndHalfWidthAndColor >& offsets)
{
+ // do not forget RefMode offset, primitive is free of it
+ double fRefModeOffset(0.0);
+
if (rStyle.IsUsed())
{
- // do not forget RefMode offset, primitive is free of it
- double fRefModeOffset(0.0);
+ RefMode aRefMode(rStyle.GetRefMode());
+ Color aPrim(rStyle.GetColorPrim());
+ Color aSecn(rStyle.GetColorSecn());
+ double fPrim(rStyle.Prim());
+ double fSecn(rStyle.Secn());
+
+ if(bMirrored)
+ {
+ switch(aRefMode)
+ {
+ case RefMode::Begin: aRefMode = RefMode::End; break;
+ case RefMode::End: aRefMode = RefMode::Begin; break;
+ default: break;
+ }
+ std::swap(aPrim, aSecn);
+ std::swap(fPrim, fSecn);
+ }
- if (RefMode::Centered != rStyle.GetRefMode())
+ if (RefMode::Centered != aRefMode)
{
const double fHalfWidth(rStyle.GetWidth() * 0.5);
- if (RefMode::Begin == rStyle.GetRefMode())
+ if (RefMode::Begin == aRefMode)
{
// move aligned below vector
fRefModeOffset = fHalfWidth;
}
- else if (RefMode::End == rStyle.GetRefMode())
+ else if (RefMode::End == aRefMode)
{
// move aligned above vector
fRefModeOffset = -fHalfWidth;
}
}
- if (rStyle.Dist() && rStyle.Secn())
+ if (rStyle.Dist() && fSecn)
{
// both or all three lines used
const bool bPrimTransparent(0xff == rStyle.GetColorPrim().GetTransparency());
const bool bDistTransparent(!rStyle.UseGapColor() || 0xff == rStyle.GetColorGap().GetTransparency());
- const bool bSecnTransparent(0xff == rStyle.GetColorSecn().GetTransparency());
+ const bool bSecnTransparent(0xff == aSecn.GetTransparency());
if(!bPrimTransparent || !bDistTransparent || !bSecnTransparent)
{
const double a(fRefModeOffset - (rStyle.GetWidth() * 0.5));
- const double b(a + rStyle.Prim());
+ const double b(a + fPrim);
const double c(b + rStyle.Dist());
- const double d(c + rStyle.Secn());
+ const double d(c + fSecn);
offsets.push_back(
OffsetAndHalfWidthAndColor(
(a + b) * 0.5,
- rStyle.Prim() * 0.5,
- nullptr != pForceColor ? *pForceColor : rStyle.GetColorPrim()));
+ fPrim * 0.5,
+ nullptr != pForceColor ? *pForceColor : aPrim));
offsets.push_back(
OffsetAndHalfWidthAndColor(
@@ -441,8 +440,8 @@ void getOffsetAndHalfWidthAndColorFromStyle(const Style& rStyle, const Color* pF
offsets.push_back(
OffsetAndHalfWidthAndColor(
(c + d) * 0.5,
- rStyle.Secn() * 0.5,
- nullptr != pForceColor ? *pForceColor : rStyle.GetColorSecn()));
+ fSecn * 0.5,
+ nullptr != pForceColor ? *pForceColor : aSecn));
}
}
else
@@ -453,11 +452,13 @@ void getOffsetAndHalfWidthAndColorFromStyle(const Style& rStyle, const Color* pF
offsets.push_back(
OffsetAndHalfWidthAndColor(
fRefModeOffset,
- rStyle.Prim() * 0.5,
- nullptr != pForceColor ? *pForceColor : rStyle.GetColorPrim()));
+ fPrim * 0.5,
+ nullptr != pForceColor ? *pForceColor : aPrim));
}
}
}
+
+ return fRefModeOffset;
}
void getCutSet(
@@ -525,7 +526,7 @@ void getExtends(
for(const auto& rStyleVectorCombination : rStyleVectorTable)
{
std::vector< OffsetAndHalfWidthAndColor > otherOffsets;
- getOffsetAndHalfWidthAndColorFromStyle(rStyleVectorCombination.getStyle(), nullptr, otherOffsets);
+ getOffsetAndHalfWidthAndColorFromStyle(rStyleVectorCombination.getStyle(), nullptr, rStyleVectorCombination.isMirrored(), otherOffsets);
if(!otherOffsets.empty())
{
@@ -568,7 +569,7 @@ void CreateBorderPrimitives(
{
// get offset color pairs for style, one per visible line
std::vector< OffsetAndHalfWidthAndColor > myOffsets;
- getOffsetAndHalfWidthAndColorFromStyle(rBorder, pForceColor, myOffsets);
+ const double fRefModeOffset(getOffsetAndHalfWidthAndColorFromStyle(rBorder, pForceColor, false, myOffsets));
const size_t nOffsets(myOffsets.size());
if(nOffsets)
@@ -624,12 +625,13 @@ void CreateBorderPrimitives(
static double fPatScFact(10.0); // 10.0 multiply, see old code
const std::vector<double> aDashing(svtools::GetLineDashing(rBorder.Type(), rBorder.PatternScale() * fPatScFact));
const drawinglayer::attribute::StrokeAttribute aStrokeAttribute(aDashing);
+ const basegfx::B2DPoint aStart(rOrigin + (aPerpendX * fRefModeOffset));
rTarget.append(
drawinglayer::primitive2d::Primitive2DReference(
new drawinglayer::primitive2d::BorderLinePrimitive2D(
- rOrigin,
- rOrigin + rX,
+ aStart,
+ aStart + rX,
aBorderlines,
aStrokeAttribute)));
}
diff --git a/svx/source/dialog/framelinkarray.cxx b/svx/source/dialog/framelinkarray.cxx
index 6052c23f3e8a..2d81caebd3a7 100644
--- a/svx/source/dialog/framelinkarray.cxx
+++ b/svx/source/dialog/framelinkarray.cxx
@@ -954,11 +954,11 @@ void HelperCreateHorizontalEntry(
const Style& rStartFromBR(rArray.GetCellStyleTL( col, row ));
StyleVectorTable aStart;
- if(rStartFromTR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromTR, rX - rY));
- if(rStartLFromT.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromT, -rY));
- if(rStartLFromL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromL, -rX));
- if(rStartLFromB.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromB, rY));
- if(rStartFromBR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBR, rX + rY));
+ if(rStartFromTR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromTR, rX - rY, false));
+ if(rStartLFromT.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromT, -rY, true));
+ if(rStartLFromL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromL, -rX, true));
+ if(rStartLFromB.IsUsed()) aStart.push_back(StyleVectorCombination(rStartLFromB, rY, false));
+ if(rStartFromBR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBR, rX + rY, false));
// get involved styles at end
const Style& rEndFromTL(rArray.GetCellStyleBR( col, row - 1 ));
@@ -968,11 +968,11 @@ void HelperCreateHorizontalEntry(
const Style& rEndFromBL(rArray.GetCellStyleTR( col, row ));
StyleVectorTable aEnd;
- if(rEndFromTL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTL, -rX -rY));
- if(rEndRFromT.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromT, -rY));
- if(rEndRFromR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromR, rX));
- if(rEndRFromB.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromB, rY));
- if(rEndFromBL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromBL, rY - rX));
+ if(rEndFromTL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTL, -rX -rY, true));
+ if(rEndRFromT.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromT, -rY, true));
+ if(rEndRFromR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromR, rX, false));
+ if(rEndRFromB.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndRFromB, rY, false));
+ if(rEndFromBL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromBL, rY - rX, true));
CreateBorderPrimitives(
rSequence,
@@ -999,11 +999,11 @@ void HelperCreateVerticalEntry(
const Style& rStartFromBR(rArray.GetCellStyleTL( col, row ));
StyleVectorTable aStart;
- if(rStartFromBR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBR, rX + rY));
- if(rStartTFromR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromR, rX));
- if(rStartTFromT.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromT, rY));
- if(rStartTFromL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromL, -rX));
- if(rStartFromBL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBL, rY - rX));
+ if(rStartFromBR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBR, rX + rY, false));
+ if(rStartTFromR.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromR, rX, false));
+ if(rStartTFromT.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromT, rY, true));
+ if(rStartTFromL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartTFromL, -rX, true));
+ if(rStartFromBL.IsUsed()) aStart.push_back(StyleVectorCombination(rStartFromBL, rY - rX, true));
// get involved styles at end
const Style& rEndFromTL(rArray.GetCellStyleBR( col - 1, row ));
@@ -1013,11 +1013,11 @@ void HelperCreateVerticalEntry(
const Style& rEndFromTR(rArray.GetCellStyleBL( col, row ));
StyleVectorTable aEnd;
- if(rEndFromTR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTR, rX - rY));
- if(rEndBFromR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromR, rX));
- if(rEndBFromB.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromB, -rY));
- if(rEndBFromL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromL, rX));
- if(rEndFromTL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTL, rX + rY));
+ if(rEndFromTR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTR, rX - rY, false));
+ if(rEndBFromR.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromR, rX, false));
+ if(rEndBFromB.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromB, -rY, false));
+ if(rEndBFromL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndBFromL, rX, true));
+ if(rEndFromTL.IsUsed()) aEnd.push_back(StyleVectorCombination(rEndFromTL, rX + rY, true));
CreateBorderPrimitives(
rSequence,
@@ -1069,6 +1069,48 @@ void HelperCreateEntry(const Array& rArray, const Style& rStyle, drawinglayer::p
}
}
+void HelperMergeInB2DPrimitiveArray(
+ const drawinglayer::primitive2d::Primitive2DContainer& rSource,
+ drawinglayer::primitive2d::Primitive2DContainer& rTarget)
+{
+ if(rSource.size() > 1)
+ {
+ drawinglayer::primitive2d::Primitive2DReference aCandidate;
+
+ for(const auto& a : rSource)
+ {
+ if(aCandidate.is())
+ {
+ const drawinglayer::primitive2d::Primitive2DReference aMerge(
+ drawinglayer::primitive2d::tryMergeBorderLinePrimitive2D(aCandidate, a));
+
+ if(aMerge.is())
+ {
+ aCandidate = aMerge;
+ }
+ else
+ {
+ rTarget.append(aCandidate);
+ aCandidate = a;
+ }
+ }
+ else
+ {
+ aCandidate = a;
+ }
+ }
+
+ if(aCandidate.is())
+ {
+ rTarget.append(aCandidate);
+ }
+ }
+ else
+ {
+ rTarget.append(rSource);
+ }
+}
+
drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
size_t nFirstCol, size_t nFirstRow, size_t nLastCol, size_t nLastRow,
const Color* pForceColor ) const
@@ -1078,7 +1120,7 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
// various primitive sequences to collect the different border types
drawinglayer::primitive2d::Primitive2DContainer aHorizontalSequence;
- drawinglayer::primitive2d::Primitive2DContainer aVerticalSequence;
+ std::vector< drawinglayer::primitive2d::Primitive2DContainer > aVerticalSequences(nLastCol - nFirstCol + 1);
drawinglayer::primitive2d::Primitive2DContainer aCrossSequence;
for (size_t nRow = nFirstRow; nRow <= nLastRow; ++nRow)
@@ -1131,7 +1173,7 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
if(rLeft.IsUsed())
{
- HelperCreateEntry(*this, rLeft, aVerticalSequence, pForceColor);
+ HelperCreateEntry(*this, rLeft, aVerticalSequences[nCol - nFirstCol], pForceColor);
}
}
@@ -1141,7 +1183,7 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
if(rRight.IsUsed())
{
- HelperCreateEntry(*this, rRight, aVerticalSequence, pForceColor);
+ HelperCreateEntry(*this, rRight, aVerticalSequences[nCol - nFirstCol], pForceColor);
}
}
@@ -1156,15 +1198,15 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
/// Fill top-left Style Table
const Style& rTLFromRight(GetCellStyleTop(_nFirstCol, _nFirstRow));
- if(rTLFromRight.IsUsed()) aStart.push_back(StyleVectorCombination(rTLFromRight, aX));
+ if(rTLFromRight.IsUsed()) aStart.push_back(StyleVectorCombination(rTLFromRight, aX, false));
const Style& rTLFromBottom(GetCellStyleLeft(_nFirstCol, _nFirstRow));
- if(rTLFromBottom.IsUsed()) aStart.push_back(StyleVectorCombination(rTLFromBottom, aY));
+ if(rTLFromBottom.IsUsed()) aStart.push_back(StyleVectorCombination(rTLFromBottom, aY, false));
/// Fill bottom-right Style Table
const Style& rBRFromBottom(GetCellStyleRight(_nLastCol, _nLastRow));
- if(rBRFromBottom.IsUsed()) aEnd.push_back(StyleVectorCombination(rBRFromBottom, -aY));
+ if(rBRFromBottom.IsUsed()) aEnd.push_back(StyleVectorCombination(rBRFromBottom, -aY, true));
const Style& rBRFromLeft(GetCellStyleBottom(_nLastCol, _nLastRow));
- if(rBRFromLeft.IsUsed()) aEnd.push_back(StyleVectorCombination(rBRFromLeft, -aX));
+ if(rBRFromLeft.IsUsed()) aEnd.push_back(StyleVectorCombination(rBRFromLeft, -aX, true));
CreateBorderPrimitives(
aCrossSequence,
@@ -1186,15 +1228,15 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
/// Fill bottom-left Style Table
const Style& rBLFromTop(GetCellStyleLeft(_nFirstCol, _nLastRow));
- if(rBLFromTop.IsUsed()) aStart.push_back(StyleVectorCombination(rBLFromTop, -aY));
+ if(rBLFromTop.IsUsed()) aStart.push_back(StyleVectorCombination(rBLFromTop, -aY, true));
const Style& rBLFromBottom(GetCellStyleBottom(_nFirstCol, _nLastRow));
- if(rBLFromBottom.IsUsed()) aStart.push_back(StyleVectorCombination(rBLFromBottom, aX));
+ if(rBLFromBottom.IsUsed()) aStart.push_back(StyleVectorCombination(rBLFromBottom, aX, false));
/// Fill top-right Style Table
const Style& rTRFromBottom(GetCellStyleRight(_nLastCol, _nFirstRow));
- if(rTRFromBottom.IsUsed()) aEnd.push_back(StyleVectorCombination(rTRFromBottom, -aY));
+ if(rTRFromBottom.IsUsed()) aEnd.push_back(StyleVectorCombination(rTRFromBottom, -aY, true));
const Style& rTRFromLeft(GetCellStyleTop(_nLastCol, _nFirstRow));
- if(rTRFromLeft.IsUsed()) aEnd.push_back(StyleVectorCombination(rTRFromLeft, -aX));
+ if(rTRFromLeft.IsUsed()) aEnd.push_back(StyleVectorCombination(rTRFromLeft, -aX, false));
CreateBorderPrimitives(
aCrossSequence,
@@ -1211,9 +1253,13 @@ drawinglayer::primitive2d::Primitive2DContainer Array::CreateB2DPrimitiveRange(
}
}
- // to stay compatible, create order as it was formally
- aCrossSequence.append(aHorizontalSequence);
- aCrossSequence.append(aVerticalSequence);
+ // to stay compatible, create order as it was formally. Also try to
+ // merge primitives as far as possible
+ HelperMergeInB2DPrimitiveArray(aHorizontalSequence, aCrossSequence);
+ for(const auto& aVert : aVerticalSequences)
+ {
+ HelperMergeInB2DPrimitiveArray(aVert, aCrossSequence);
+ }
return aCrossSequence;
}
diff --git a/svx/source/table/viewcontactoftableobj.cxx b/svx/source/table/viewcontactoftableobj.cxx
index d696569dc329..52d6ce42b943 100644
--- a/svx/source/table/viewcontactoftableobj.cxx
+++ b/svx/source/table/viewcontactoftableobj.cxx
@@ -197,7 +197,7 @@ namespace sdr
return svx::frame::Style();
}
- void createForVector(drawinglayer::primitive2d::Primitive2DContainer& rContainer, const basegfx::B2DPoint& rOrigin, const basegfx::B2DVector& rX,
+ void createForVector(bool bHor, drawinglayer::primitive2d::Primitive2DContainer& rContainer, const basegfx::B2DPoint& rOrigin, const basegfx::B2DVector& rX,
const svx::frame::Style& rLine,
const svx::frame::Style& rLeftA, const svx::frame::Style& rLeftB, const svx::frame::Style& rLeftC,
const svx::frame::Style& rRightA, const svx::frame::Style& rRightB, const svx::frame::Style& rRightC)
@@ -206,17 +206,16 @@ namespace sdr
svx::frame::StyleVectorTable aStart;
svx::frame::StyleVectorTable aEnd;
const basegfx::B2DVector aY(basegfx::getNormalizedPerpendicular(rX));
- const double fTwipsToMM(127.0 / 72.0);
/// Fill top-left Style Table
- if(rLeftA.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftA, -aY));
- if(rLeftB.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftB, -rX));
- if(rLeftC.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftC, aY));
+ if(rLeftA.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftA, -aY, bHor ? true : false));
+ if(rLeftB.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftB, -rX, bHor ? true : true));
+ if(rLeftC.IsUsed()) aStart.push_back(svx::frame::StyleVectorCombination(rLeftC, aY, bHor ? false : true));
/// Fill bottom-right Style Table
- if(rRightA.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightA, -aY));
- if(rRightB.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightB, rX));
- if(rRightC.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightC, aY));
+ if(rRightA.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightA, -aY, bHor ? true : false));
+ if(rRightB.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightB, rX, bHor ? false : false));
+ if(rRightC.IsUsed()) aEnd.push_back(svx::frame::StyleVectorCombination(rRightC, aY, bHor ? false : true));
CreateBorderPrimitives(
rContainer,
@@ -350,32 +349,31 @@ namespace sdr
const basegfx::B2DPoint aOrigin(aCellMatrix * basegfx::B2DPoint(0.0, 0.0));
const basegfx::B2DVector aX(aCellMatrix * basegfx::B2DVector(1.0, 0.0));
const basegfx::B2DVector aY(aCellMatrix * basegfx::B2DVector(0.0, 1.0));
- const double fTwipsToMM(127.0 / 72.0);
if(aLeftLine.IsUsed())
{
- createForVector(aBorderSequence, aOrigin, aY, aLeftLine,
+ createForVector(false, aBorderSequence, aOrigin, aY, aLeftLine,
aTopLine, aLeftFromTLine, aTopFromLLine,
aBottomLine, aLeftFromBLine, aBottomFromLLine);
}
if(aBottomLine.IsUsed())
{
- createForVector(aBorderSequence, aOrigin + aY, aX, aBottomLine,
+ createForVector(true, aBorderSequence, aOrigin + aY, aX, aBottomLine,
aLeftLine, aBottomFromLLine, aLeftFromBLine,
aRightLine, aBottomFromRLine, aRightFromBLine);
}
if(aRightLine.IsUsed())
{
- createForVector(aBorderSequence, aOrigin + aX, aY, aRightLine,
+ createForVector(false, aBorderSequence, aOrigin + aX, aY, aRightLine,
aTopFromRLine, aRightFromTLine, aTopLine,
aBottomFromRLine, aRightFromBLine, aBottomLine);
}
if(aTopLine.IsUsed())
{
- createForVector(aBorderSequence, aOrigin, aX, aTopLine,
+ createForVector(true, aBorderSequence, aOrigin, aX, aTopLine,
aLeftFromTLine, aTopFromLLine, aLeftLine,
aRightFromTLine, aTopFromRLine, aRightLine);
}