[Libreoffice-commits] core.git: Branch 'feature/opengl-vcl' - 3 commits - vcl/inc vcl/opengl vcl/unx vcl/win
Markus Mohrhard
markus.mohrhard at collabora.co.uk
Wed Oct 29 16:50:21 PDT 2014
vcl/inc/openglgdiimpl.hxx | 2 ++
vcl/inc/salgdiimpl.hxx | 3 ++-
vcl/inc/unx/salgdi.h | 2 +-
vcl/opengl/gdiimpl.cxx | 8 ++++++++
vcl/unx/generic/gdi/gdiimpl.cxx | 6 ++++++
vcl/unx/generic/gdi/gdiimpl.hxx | 3 ++-
vcl/unx/generic/gdi/salgdi.cxx | 5 +++++
vcl/win/source/gdi/gdiimpl.cxx | 6 +++---
vcl/win/source/gdi/salgdi.cxx | 3 ---
9 files changed, 29 insertions(+), 9 deletions(-)
New commits:
commit 813650eba8afd22eb6eca2bec9e2fd38b5b2e553
Author: Markus Mohrhard <markus.mohrhard at collabora.co.uk>
Date: Wed Oct 29 18:15:06 2014 +0100
move defines to the top of the file
Change-Id: Ia76fd2b1f9d7a9056425c760320f6b87965a2012
diff --git a/vcl/win/source/gdi/gdiimpl.cxx b/vcl/win/source/gdi/gdiimpl.cxx
index 8ae2e75..be5830a 100644
--- a/vcl/win/source/gdi/gdiimpl.cxx
+++ b/vcl/win/source/gdi/gdiimpl.cxx
@@ -78,6 +78,9 @@
#define DITHER_EXTRA_COLORS 1
#define DMAP( _def_nVal, _def_nThres ) ((pDitherDiff[_def_nVal]>(_def_nThres))?pDitherHigh[_def_nVal]:pDitherLow[_def_nVal])
+#define SAL_POLY_STACKBUF 32
+#define USE_GDI_BEZIERS
+
namespace {
// #100127# draw an array of points which might also contain bezier control points
@@ -1783,9 +1786,6 @@ void WinSalGraphicsImpl::drawPolyPolygon( sal_uInt32 nPoly, const sal_uInt32* pP
delete [] pWinPointAryAry;
}
-#define SAL_POLY_STACKBUF 32
-#define USE_GDI_BEZIERS
-
bool WinSalGraphicsImpl::drawPolyLineBezier( sal_uInt32 nPoints, const SalPoint* pPtAry, const BYTE* pFlgAry )
{
#ifdef USE_GDI_BEZIERS
commit b7bd211e92d6ebdaef324f1c668961c1d7034006
Author: Markus Mohrhard <markus.mohrhard at collabora.co.uk>
Date: Wed Oct 29 18:14:10 2014 +0100
remove useless define
Change-Id: I3033748cac045cd6e9595fadc84c65b21128b39d
diff --git a/vcl/win/source/gdi/salgdi.cxx b/vcl/win/source/gdi/salgdi.cxx
index 28469eb..7768ab1 100644
--- a/vcl/win/source/gdi/salgdi.cxx
+++ b/vcl/win/source/gdi/salgdi.cxx
@@ -35,9 +35,6 @@
#include "salgdiimpl.hxx"
#include "gdiimpl.hxx"
-// comment out to prevent use of beziers on GDI functions
-#define USE_GDI_BEZIERS
-
#define DITHER_PAL_DELTA 51
#define DITHER_PAL_STEPS 6
#define DITHER_PAL_COUNT (DITHER_PAL_STEPS*DITHER_PAL_STEPS*DITHER_PAL_STEPS)
commit a85b11feb2424055a08aa4fcf96c890195cb819a
Author: Markus Mohrhard <markus.mohrhard at collabora.co.uk>
Date: Wed Oct 29 17:25:55 2014 +0100
bring the gradient rendering down into SalGraphicsImpl & unx backend
Change-Id: Ia5d5e7d996b4a8818e73f3f741907ff9224f93da
diff --git a/vcl/inc/openglgdiimpl.hxx b/vcl/inc/openglgdiimpl.hxx
index 1a3b6e7..9ae84ca 100644
--- a/vcl/inc/openglgdiimpl.hxx
+++ b/vcl/inc/openglgdiimpl.hxx
@@ -191,6 +191,8 @@ public:
long nX, long nY,
long nWidth, long nHeight,
sal_uInt8 nTransparency ) SAL_OVERRIDE;
+
+ virtual bool drawGradient(const tools::PolyPolygon& rPolygon, const Gradient& rGradient) SAL_OVERRIDE;
private:
};
diff --git a/vcl/inc/salgdiimpl.hxx b/vcl/inc/salgdiimpl.hxx
index 329f3bb..ed4f4ba 100644
--- a/vcl/inc/salgdiimpl.hxx
+++ b/vcl/inc/salgdiimpl.hxx
@@ -34,6 +34,7 @@
class SalGraphics;
class SalBitmap;
+class Gradient;
class VCL_PLUGIN_PUBLIC SalGraphicsImpl
{
@@ -197,7 +198,7 @@ public:
long nWidth, long nHeight,
sal_uInt8 nTransparency ) = 0;
-
+ virtual bool drawGradient(const tools::PolyPolygon& rPolygon, const Gradient& rGradient) = 0;
};
#endif
diff --git a/vcl/inc/unx/salgdi.h b/vcl/inc/unx/salgdi.h
index bb8073a..1e90e98 100644
--- a/vcl/inc/unx/salgdi.h
+++ b/vcl/inc/unx/salgdi.h
@@ -237,7 +237,7 @@ public:
const ::basegfx::B2DVector& rLineWidth,
basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap) SAL_OVERRIDE;
- virtual bool drawGradient( const tools::PolyPolygon&, const Gradient& ) SAL_OVERRIDE { return false; };
+ virtual bool drawGradient( const tools::PolyPolygon&, const Gradient& ) SAL_OVERRIDE;
#if 1 // TODO: remove these obselete methods
diff --git a/vcl/opengl/gdiimpl.cxx b/vcl/opengl/gdiimpl.cxx
index 8b5d8f1..6e39d1e 100644
--- a/vcl/opengl/gdiimpl.cxx
+++ b/vcl/opengl/gdiimpl.cxx
@@ -19,6 +19,8 @@
#include "openglgdiimpl.hxx"
+#include <vcl/gradient.hxx>
+
OpenGLSalGraphicsImpl::~OpenGLSalGraphicsImpl()
{
}
@@ -270,4 +272,10 @@ bool OpenGLSalGraphicsImpl::drawAlphaRect(
return false;
}
+bool OpenGLSalGraphicsImpl::drawGradient(const tools::PolyPolygon& /*rPolygon*/,
+ const Gradient& /*rGradient*/)
+{
+ return false;
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/generic/gdi/gdiimpl.cxx b/vcl/unx/generic/gdi/gdiimpl.cxx
index e5e98d0..60ed793 100644
--- a/vcl/unx/generic/gdi/gdiimpl.cxx
+++ b/vcl/unx/generic/gdi/gdiimpl.cxx
@@ -24,6 +24,7 @@
#include "gdiimpl.hxx"
#include "vcl/salbtype.hxx"
+#include <vcl/gradient.hxx>
#include "unx/salunx.h"
#include "unx/saldata.hxx"
@@ -1776,4 +1777,9 @@ long X11SalGraphicsImpl::GetGraphicsWidth() const
return 0;
}
+bool X11SalGraphicsImpl::drawGradient(const tools::PolyPolygon& /*rPolygon*/, const Gradient& /*rGradient*/)
+{
+ return false;
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/generic/gdi/gdiimpl.hxx b/vcl/unx/generic/gdi/gdiimpl.hxx
index 3d35cef..a6e12ec 100644
--- a/vcl/unx/generic/gdi/gdiimpl.hxx
+++ b/vcl/unx/generic/gdi/gdiimpl.hxx
@@ -33,6 +33,7 @@ class SalGraphics;
class SalBitmap;
class SalPolyLine;
class X11SalGraphics;
+class Gradient;
class X11SalGraphicsImpl : public SalGraphicsImpl
{
@@ -261,7 +262,7 @@ public:
long nWidth, long nHeight,
sal_uInt8 nTransparency ) SAL_OVERRIDE;
-
+ virtual bool drawGradient(const tools::PolyPolygon& rPolygon, const Gradient& rGradient) SAL_OVERRIDE;
};
#endif
diff --git a/vcl/unx/generic/gdi/salgdi.cxx b/vcl/unx/generic/gdi/salgdi.cxx
index caa7b1c..50941e6 100644
--- a/vcl/unx/generic/gdi/salgdi.cxx
+++ b/vcl/unx/generic/gdi/salgdi.cxx
@@ -482,4 +482,9 @@ bool X11SalGraphics::drawPolyLine(
eLineJoin, eLineCap );
}
+bool X11SalGraphics::drawGradient(const tools::PolyPolygon& rPoly, const Gradient& rGradient)
+{
+ return mpImpl->drawGradient(rPoly, rGradient);
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
More information about the Libreoffice-commits
mailing list