diff options
author | Rüdiger Timm <rt@openoffice.org> | 2004-11-26 19:53:39 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2004-11-26 19:53:39 +0000 |
commit | fa8aae8283c39fe16be44bc93d60a4732d66285a (patch) | |
tree | 3a77255b2b3eb8c2683705b00d56d9b4d0c62b9e /cppcanvas/source/inc | |
parent | 8cccdb020295f512c1e94c42fc5e1c434577fb8b (diff) |
INTEGRATION: CWS presentationengine01 (1.2.2); FILE MERGED
2004/11/08 05:56:07 thb 1.2.2.7: #i36093# Added native canvas gradients
2004/09/30 21:45:41 thb 1.2.2.6: #110496# Now handling clip meta actions correctly (were mostly ignored before)
2004/08/23 19:15:49 thb 1.2.2.5: #110496# Added more overridable attributes (needed for slideshow attribute animations
2004/07/20 19:08:57 thb 1.2.2.4: #110496# Unified include statements; removed external prefix from boost includes
2004/07/09 09:50:39 hdu 1.2.2.3: #116716# more text effects and text lines
2004/04/21 18:49:38 thb 1.2.2.2: #110496# Added shape-global change functionality to Renderer interface
2004/04/05 15:58:46 thb 1.2.2.1: Resync with canvas01 changes
Diffstat (limited to 'cppcanvas/source/inc')
-rw-r--r-- | cppcanvas/source/inc/implrenderer.hxx | 86 |
1 files changed, 70 insertions, 16 deletions
diff --git a/cppcanvas/source/inc/implrenderer.hxx b/cppcanvas/source/inc/implrenderer.hxx index 43827684e373..5fe42deb75b0 100644 --- a/cppcanvas/source/inc/implrenderer.hxx +++ b/cppcanvas/source/inc/implrenderer.hxx @@ -2,9 +2,9 @@ * * $RCSfile: implrenderer.hxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: rt $ $Date: 2004-09-08 16:59:12 $ + * last change: $Author: rt $ $Date: 2004-11-26 20:53:39 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -77,8 +77,8 @@ #include <cppcanvas/canvas.hxx> #endif -#include "canvasgraphichelper.hxx" -#include "action.hxx" +#include <canvasgraphichelper.hxx> +#include <action.hxx> #include <vector> @@ -102,9 +102,11 @@ namespace cppcanvas { public: ImplRenderer( const CanvasSharedPtr& rCanvas, - const GDIMetaFile& rMtf ); + const GDIMetaFile& rMtf, + const Parameters& rParms ); ImplRenderer( const CanvasSharedPtr& rCanvas, - const BitmapEx& rBmpEx ); + const BitmapEx& rBmpEx, + const Parameters& rParms ); virtual ~ImplRenderer(); @@ -132,10 +134,23 @@ namespace cppcanvas ImplRenderer(const ImplRenderer&); ImplRenderer& operator=( const ImplRenderer& ); - bool createActions( const CanvasSharedPtr& rCanvas, - VirtualDevice& rVDev, - GDIMetaFile& rMtf, - VectorOfOutDevStates& rStates ); + void updateClipping( VectorOfOutDevStates& rStates, + const ::basegfx::B2DPolyPolygon& rClipPoly, + const CanvasSharedPtr& rCanvas, + bool bIntersect ); + + ::com::sun::star::uno::Reference< + ::drafts::com::sun::star::rendering::XCanvasFont > createFont( ::basegfx::B2DHomMatrix& o_rFontMatrix, + const ::Font& rFont, + const CanvasSharedPtr& rCanvas, + const ::VirtualDevice& rVDev, + const Parameters& rParms ) const; + bool createActions( const CanvasSharedPtr& rCanvas, + VirtualDevice& rVDev, + GDIMetaFile& rMtf, + VectorOfOutDevStates& rStates, + const Parameters& rParms, + int& io_rCurrActionIndex ); bool createFillAndStroke( const ::PolyPolygon& rPolyPoly, const CanvasSharedPtr& rCanvas, int rActionIndex, @@ -143,16 +158,55 @@ namespace cppcanvas void skipContent( GDIMetaFile& rMtf, const char& rCommentString ) const; - void createGradientAction( const Rectangle& rRect, - const Gradient& rGradient, - VirtualDevice& rVDev, + void createGradientAction( const ::PolyPolygon& rPoly, + const ::Gradient& rGradient, + ::VirtualDevice& rVDev, const CanvasSharedPtr& rCanvas, - VectorOfOutDevStates& rStates ); + VectorOfOutDevStates& rStates, + const Parameters& rParms, + int& io_rCurrActionIndex, + bool bIsPolygonRectangle ); + + // create text effects such as shadow/relief/embossed + void createTextWithEffectsAction( + const Point& rStartPoint, + const String rString, + int nIndex, + int nLength, + const long* pCharWidths, + VirtualDevice& rVDev, + const CanvasSharedPtr& rCanvas, + VectorOfOutDevStates& rStates, + const Parameters& rParms, + int nCurrActionIndex ); + + // create text draw actions and add text lines + void createTextWithLinesAction( + const Point& rStartPoint, + const String rString, + int nIndex, + int nLength, + const long* pCharWidths, + VirtualDevice& rVDev, + const CanvasSharedPtr& rCanvas, + VectorOfOutDevStates& rStates, + const Parameters& rParms, + int nCurrActionIndex ); + + // create text lines such as underline and strikeout + void createJustTextLinesAction( + const Point& rStartPoint, + long nLineWidth, + VirtualDevice& rVDev, + const CanvasSharedPtr& rCanvas, + VectorOfOutDevStates& rStates, + const Parameters& rParms, + int nCurrActionIndex ); // prefetched and prepared canvas actions // (externally not visible) - typedef ::std::vector< MtfAction > ActionVector; - ActionVector maActions; + typedef ::std::vector< MtfAction > ActionVector; + ActionVector maActions; }; } } |