summaryrefslogtreecommitdiff
path: root/include/vcl/print.hxx
diff options
context:
space:
mode:
authorChris Sherlock <chris.sherlock79@gmail.com>2014-04-06 20:57:49 +1000
committerChris Sherlock <chris.sherlock79@gmail.com>2014-04-06 22:08:41 -0500
commit8659d189ec04aca78c8ffff97fcca507ca0a9ec3 (patch)
treef96203da4e501024f1f851c683065f61e6f28afe /include/vcl/print.hxx
parent3b6dba357f94b581cfeee844f9203a84aa1b5823 (diff)
fdo#74702 Refactor gradient clipping functions
There are two gradient clipping functions: one uses a normal intersection to get the symmetric difference to clip the gradient - this is used by OS X and when printing. The other uses XOR clipping, which is an elegant trick to implement complex clipping on graphics systems that have minimal capabilities. cf. http://www.openoffice.org/marketing/ooocon2008/programme/wednesday_1401.pdf Change-Id: Iab16258c8e758c41a29337525927ba780329e887 Reviewed-on: https://gerrit.libreoffice.org/8873 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
Diffstat (limited to 'include/vcl/print.hxx')
-rw-r--r--include/vcl/print.hxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/vcl/print.hxx b/include/vcl/print.hxx
index d70e7c025c01..f9179bd814d3 100644
--- a/include/vcl/print.hxx
+++ b/include/vcl/print.hxx
@@ -274,7 +274,10 @@ public:
protected:
long ImplGetGradientStepCount( long nMinRect ) SAL_OVERRIDE;
+ virtual void ClipGradientToBounds( Gradient &rGradient, const PolyPolygon &rPolyPoly ) SAL_OVERRIDE;
+ virtual void ClipGradientMetafile ( const Gradient &rGradient, const PolyPolygon &rPolyPoly, const Rectangle &rBoundRect ) SAL_OVERRIDE;
virtual bool UsePolyPolygonForComplexGradient() SAL_OVERRIDE;
+
void ScaleBitmap ( Bitmap&, SalTwoRect& ) SAL_OVERRIDE { };
public: