diff options
-rw-r--r-- | include/svx/framelink.hxx | 6 | ||||
-rw-r--r-- | svx/source/dialog/framelink.cxx | 7 | ||||
-rw-r--r-- | svx/source/dialog/frmsel.cxx | 10 | ||||
-rw-r--r-- | svx/source/inc/frmselimpl.hxx | 1 | ||||
-rw-r--r-- | sw/source/core/layout/paintfrm.cxx | 19 |
5 files changed, 19 insertions, 24 deletions
diff --git a/include/svx/framelink.hxx b/include/svx/framelink.hxx index 1b130efa7f2f..414f23aaaca7 100644 --- a/include/svx/framelink.hxx +++ b/include/svx/framelink.hxx @@ -159,11 +159,11 @@ public: /** Constructs an invisible frame style. */ explicit Style(); /** Constructs a frame style with passed line widths. */ - explicit Style( double nP, double nD, double nS, SvxBorderLineStyle nType ); + explicit Style( double nP, double nD, double nS, SvxBorderLineStyle nType, double fScale ); /** Constructs a frame style with passed color and line widths. */ - explicit Style( const Color& rColorPrim, const Color& rColorSecn, const Color& rColorGap, bool bUseGapColor, double nP, double nD, double nS, SvxBorderLineStyle nType ); + explicit Style( const Color& rColorPrim, const Color& rColorSecn, const Color& rColorGap, bool bUseGapColor, double nP, double nD, double nS, SvxBorderLineStyle nType, double fScale ); /** Constructs a frame style from the passed SvxBorderLine struct. */ - explicit Style( const editeng::SvxBorderLine* pBorder, double fScale = 1.0 ); + explicit Style( const editeng::SvxBorderLine* pBorder, double fScale ); RefMode GetRefMode() const { if(!maImplStyle) return RefMode::Centered; return maImplStyle->meRefMode; } const Color GetColorPrim() const { if(!maImplStyle) return Color(); return maImplStyle->maColorPrim; } diff --git a/svx/source/dialog/framelink.cxx b/svx/source/dialog/framelink.cxx index b7554436bf48..ea5b33315cfc 100644 --- a/svx/source/dialog/framelink.cxx +++ b/svx/source/dialog/framelink.cxx @@ -56,19 +56,21 @@ Style::Style() : { } -Style::Style( double nP, double nD, double nS, SvxBorderLineStyle nType ) : +Style::Style( double nP, double nD, double nS, SvxBorderLineStyle nType, double fScale ) : maImplStyle(new implStyle()), mpUsingCell(nullptr) { maImplStyle->mnType = nType; + maImplStyle->mfPatternScale = fScale; Set( nP, nD, nS ); } -Style::Style( const Color& rColorPrim, const Color& rColorSecn, const Color& rColorGap, bool bUseGapColor, double nP, double nD, double nS, SvxBorderLineStyle nType ) : +Style::Style( const Color& rColorPrim, const Color& rColorSecn, const Color& rColorGap, bool bUseGapColor, double nP, double nD, double nS, SvxBorderLineStyle nType, double fScale ) : maImplStyle(new implStyle()), mpUsingCell(nullptr) { maImplStyle->mnType = nType; + maImplStyle->mfPatternScale = fScale; Set( rColorPrim, rColorSecn, rColorGap, bUseGapColor, nP, nD, nS ); } @@ -154,6 +156,7 @@ void Style::Set( const SvxBorderLine* pBorder, double fScale, sal_uInt16 nMaxWid const sal_uInt16 nSecn(pBorder->GetInWidth()); pTarget->mnType = pBorder->GetBorderLineStyle(); + pTarget->mfPatternScale = fScale; if( !nSecn ) // no or single frame border { diff --git a/svx/source/dialog/frmsel.cxx b/svx/source/dialog/frmsel.cxx index 9678339fbca6..291d47903361 100644 --- a/svx/source/dialog/frmsel.cxx +++ b/svx/source/dialog/frmsel.cxx @@ -132,7 +132,7 @@ void FrameBorder::SetCoreStyle( const SvxBorderLine* pStyle ) maCoreStyle = SvxBorderLine(); // from twips to points - maUIStyle.Set( &maCoreStyle, 0.05, FRAMESEL_GEOM_WIDTH ); + maUIStyle.Set( &maCoreStyle, FrameBorder::GetDefaultPatternScale(), FRAMESEL_GEOM_WIDTH ); meState = maUIStyle.IsUsed() ? FrameBorderState::Show : FrameBorderState::Hide; } @@ -150,7 +150,7 @@ void FrameBorder::SetState( FrameBorderState eState ) break; case FrameBorderState::DontCare: maCoreStyle = SvxBorderLine(); - maUIStyle = frame::Style(3, 0, 0, SvxBorderLineStyle::SOLID); //OBJ_FRAMESTYLE_DONTCARE + maUIStyle = frame::Style(3, 0, 0, SvxBorderLineStyle::SOLID, FrameBorder::GetDefaultPatternScale()); //OBJ_FRAMESTYLE_DONTCARE break; } } @@ -643,7 +643,7 @@ void FrameSelectorImpl::DrawAllFrameBorders() rRightStyle.GetColorSecn(), rRightStyle.GetColorGap(), rRightStyle.UseGapColor(), rRightStyle.Secn(), rRightStyle.Dist(), rRightStyle.Prim( ), - rRightStyle.Type( ) ); + rRightStyle.Type( ), rRightStyle.PatternScale() ); maArray.SetColumnStyleRight( mbVer ? 1 : 0, rInvertedRight ); maArray.SetRowStyleTop( 0, maTop.GetUIStyle() ); @@ -655,7 +655,7 @@ void FrameSelectorImpl::DrawAllFrameBorders() rHorStyle.GetColorSecn(), rHorStyle.GetColorGap(), rHorStyle.UseGapColor(), rHorStyle.Secn(), rHorStyle.Dist(), rHorStyle.Prim( ), - rHorStyle.Type() ); + rHorStyle.Type(), rHorStyle.PatternScale() ); maArray.SetRowStyleTop( 1, rInvertedHor ); } @@ -665,7 +665,7 @@ void FrameSelectorImpl::DrawAllFrameBorders() rBottomStyle.GetColorSecn(), rBottomStyle.GetColorGap(), rBottomStyle.UseGapColor(), rBottomStyle.Secn(), rBottomStyle.Dist(), rBottomStyle.Prim( ), - rBottomStyle.Type() ); + rBottomStyle.Type(), rBottomStyle.PatternScale() ); maArray.SetRowStyleBottom( mbHor ? 1 : 0, rInvertedBottom ); for( size_t nCol = 0; nCol < maArray.GetColCount(); ++nCol ) diff --git a/svx/source/inc/frmselimpl.hxx b/svx/source/inc/frmselimpl.hxx index 7e2e73b8238a..62a0d7f3a9d7 100644 --- a/svx/source/inc/frmselimpl.hxx +++ b/svx/source/inc/frmselimpl.hxx @@ -36,6 +36,7 @@ class FrameBorder { public: explicit FrameBorder(FrameBorderType eType); + static double GetDefaultPatternScale() { return 0.05; } FrameBorderType GetType() const { diff --git a/sw/source/core/layout/paintfrm.cxx b/sw/source/core/layout/paintfrm.cxx index 89c4351957a8..4098b2add8f4 100644 --- a/sw/source/core/layout/paintfrm.cxx +++ b/sw/source/core/layout/paintfrm.cxx @@ -2758,20 +2758,11 @@ void SwTabFramePainter::Insert( const SwFrame& rFrame, const SvxBoxItem& rBoxIte bool const bVert = mrTabFrame.IsVertical(); bool const bR2L = mrTabFrame.IsRightToLeft(); - SwViewShell* pViewShell = mrTabFrame.getRootFrame()->GetCurrShell(); - OutputDevice* pOutDev = pViewShell->GetOut(); - const MapMode& rMapMode = pOutDev->GetMapMode(); - const Fraction& rFracX = rMapMode.GetScaleX(); - const Fraction& rFracY = rMapMode.GetScaleY(); - - svx::frame::Style aL(rBoxItem.GetLeft(), rFracY); -// aL.SetPatternScale(rFracY); - svx::frame::Style aR(rBoxItem.GetRight(), rFracY); -// aR.SetPatternScale(rFracY); - svx::frame::Style aT(rBoxItem.GetTop(), rFracX); -// aT.SetPatternScale(rFracX); - svx::frame::Style aB(rBoxItem.GetBottom(), rFracX); -// aB.SetPatternScale(rFracX); + // no scaling needed, it's all in the primitives and the target device + svx::frame::Style aL(rBoxItem.GetLeft(), 1.0); + svx::frame::Style aR(rBoxItem.GetRight(), 1.0); + svx::frame::Style aT(rBoxItem.GetTop(), 1.0); + svx::frame::Style aB(rBoxItem.GetBottom(), 1.0); aR.MirrorSelf(); aB.MirrorSelf(); |