summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2020-04-17 11:43:39 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-04-17 13:07:42 +0200
commitf569507f3f0da7f69a2e808165612cbef4c15410 (patch)
tree7aad2540b2d5eaadd074d679f05fdc9ad524042d /drawinglayer
parent9a3b47afab1750eba0451d59a8bac53302d85b2f (diff)
Revert "[API CHANGE] remove some primitives rendering settings"
This reverts commit c71656f51a09e88ecae4f3423c96fee84778647d. Reason for revert: I give up Change-Id: I2a09c36c1f0d731f4d3f7d809364de7efa8d8a58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92426 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/source/primitive2d/controlprimitive2d.cxx3
-rw-r--r--drawinglayer/source/primitive2d/sceneprimitive2d.cxx2
-rw-r--r--drawinglayer/source/processor2d/vclpixelprocessor2d.cxx20
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx2
-rw-r--r--drawinglayer/source/processor3d/zbufferprocessor3d.cxx2
5 files changed, 22 insertions, 7 deletions
diff --git a/drawinglayer/source/primitive2d/controlprimitive2d.cxx b/drawinglayer/source/primitive2d/controlprimitive2d.cxx
index 65ec1ab9214a..600bb4be8a3f 100644
--- a/drawinglayer/source/primitive2d/controlprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/controlprimitive2d.cxx
@@ -96,7 +96,8 @@ namespace drawinglayer::primitive2d
basegfx::B2DVector aDiscreteSize(rViewInformation.getObjectToViewTransformation() * aScale);
// limit to a maximum square size, e.g. 300x150 pixels (45000)
- const double fDiscreteMax(SvtOptionsDrawinglayer::GetQuadraticFormControlRenderLimit());
+ const SvtOptionsDrawinglayer aDrawinglayerOpt;
+ const double fDiscreteMax(aDrawinglayerOpt.GetQuadraticFormControlRenderLimit());
const double fDiscreteQuadratic(aDiscreteSize.getX() * aDiscreteSize.getY());
const bool bScaleUsed(fDiscreteQuadratic > fDiscreteMax);
double fFactor(1.0);
diff --git a/drawinglayer/source/primitive2d/sceneprimitive2d.cxx b/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
index b225d62537a9..c0c0fec7d41a 100644
--- a/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
@@ -243,7 +243,7 @@ namespace drawinglayer::primitive2d
double fViewSizeY(aVisibleDiscreteRange.getHeight());
const double fViewVisibleArea(fViewSizeX * fViewSizeY);
const SvtOptionsDrawinglayer aDrawinglayerOpt;
- const double fMaximumVisibleArea(SvtOptionsDrawinglayer::GetQuadratic3DRenderLimit());
+ const double fMaximumVisibleArea(aDrawinglayerOpt.GetQuadratic3DRenderLimit());
double fReduceFactor(1.0);
if(fViewVisibleArea > fMaximumVisibleArea)
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index f09776f50710..e94637a9a7fe 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -389,7 +389,14 @@ namespace drawinglayer::processor2d
const DrawModeFlags nOriginalDrawMode(mpOutputDevice->GetDrawMode());
adaptTextToFillDrawMode();
- RenderTextSimpleOrDecoratedPortionPrimitive2D(rCandidate);
+ if(getOptionsDrawinglayer().IsRenderSimpleTextDirect())
+ {
+ RenderTextSimpleOrDecoratedPortionPrimitive2D(rCandidate);
+ }
+ else
+ {
+ process(rCandidate);
+ }
// restore DrawMode
mpOutputDevice->SetDrawMode(nOriginalDrawMode);
@@ -401,7 +408,14 @@ namespace drawinglayer::processor2d
const DrawModeFlags nOriginalDrawMode(mpOutputDevice->GetDrawMode());
adaptTextToFillDrawMode();
- RenderTextSimpleOrDecoratedPortionPrimitive2D(rCandidate);
+ if(getOptionsDrawinglayer().IsRenderDecoratedTextDirect())
+ {
+ RenderTextSimpleOrDecoratedPortionPrimitive2D(rCandidate);
+ }
+ else
+ {
+ process(rCandidate);
+ }
// restore DrawMode
mpOutputDevice->SetDrawMode(nOriginalDrawMode);
@@ -815,7 +829,7 @@ namespace drawinglayer::processor2d
void VclPixelProcessor2D::processMetaFilePrimitive2D(const primitive2d::BasePrimitive2D& rCandidate)
{
// #i98289#
- const bool bForceLineSnap(getOptionsDrawinglayer().IsAntiAliasing());
+ const bool bForceLineSnap(getOptionsDrawinglayer().IsAntiAliasing() && getOptionsDrawinglayer().IsSnapHorVerLinesToDiscrete());
const AntialiasingFlags nOldAntiAliase(mpOutputDevice->GetAntialiasing());
if(bForceLineSnap)
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index b7537708af20..34ff2992934f 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -332,7 +332,7 @@ namespace drawinglayer::processor2d
basegfx::B2DPolygon aLocalPolygon(rPolygonCandidate.getB2DPolygon());
aLocalPolygon.transform(maCurrentTransformation);
- if(bPixelBased && getOptionsDrawinglayer().IsAntiAliasing())
+ if(bPixelBased && getOptionsDrawinglayer().IsAntiAliasing() && getOptionsDrawinglayer().IsSnapHorVerLinesToDiscrete())
{
// #i98289#
// when a Hairline is painted and AntiAliasing is on the option SnapHorVerLinesToDiscrete
diff --git a/drawinglayer/source/processor3d/zbufferprocessor3d.cxx b/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
index c36e2bbfc558..3c5945af41b7 100644
--- a/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
+++ b/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
@@ -444,7 +444,7 @@ namespace drawinglayer::processor3d
if(mnAntiAlialize > 1)
{
- const bool bForceLineSnap(getOptionsDrawinglayer().IsAntiAliasing());
+ const bool bForceLineSnap(getOptionsDrawinglayer().IsAntiAliasing() && getOptionsDrawinglayer().IsSnapHorVerLinesToDiscrete());
if(bForceLineSnap)
{