Kaydet (Commit) 66aed6f4 authored tarafından Tor Lillqvist's avatar Tor Lillqvist

New try to sort out the overloaded virtual method weirdness

Revert "Clang WaE: -Woverloaded-virtual weirdness, this seems to help"
as that broke tinderboxes. Try another way instead, renaming two
versions of the overloaded render() method, so that there is no longer
any overloading.

Compiles -Werror-clean with Clang, hopefully no problem with other
compilers either.

This reverts commit 86b99ab4.
üst 2c91cb08
......@@ -114,8 +114,8 @@ namespace cppcanvas
specified subset is invalid for this action, or if
rendering failed for other reasons, false is returned.
*/
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const = 0;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const = 0;
/** Query bounds of this action on the associated canvas
......
......@@ -60,8 +60,6 @@ namespace cppcanvas
class BitmapAction : public CachedPrimitiveBase
{
public:
using CachedPrimitiveBase::render;
BitmapAction( const ::BitmapEx&,
const ::basegfx::B2DPoint& rDstPoint,
const CanvasSharedPtr&,
......@@ -72,8 +70,8 @@ namespace cppcanvas
const CanvasSharedPtr&,
const OutDevState& );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -83,8 +81,8 @@ namespace cppcanvas
private:
using Action::render;
virtual bool render( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const;
uno::Reference< rendering::XBitmap > mxBitmap;
CanvasSharedPtr mpCanvas;
......@@ -152,10 +150,10 @@ namespace cppcanvas
NULL );
}
bool BitmapAction::render( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const
bool BitmapAction::renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::BitmapAction::render()" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::BitmapAction::renderPrimitive()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::BitmapAction: 0x%X", this );
rendering::RenderState aLocalState( maState );
......@@ -168,8 +166,8 @@ namespace cppcanvas
return true;
}
bool BitmapAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool BitmapAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
// bitmap only contains a single action, fail if subset
// requests different range
......
......@@ -85,8 +85,8 @@ namespace cppcanvas
maLastTransformation = aTotalTransform;
// delegate rendering to derived classes
return render( mxCachedPrimitive,
rTransformation );
return renderPrimitive( mxCachedPrimitive,
rTransformation );
}
}
}
......
......@@ -79,11 +79,11 @@ namespace cppcanvas
protected:
using Action::render;
virtual bool render( ::com::sun::star::uno::Reference<
private:
virtual bool renderPrimitive( ::com::sun::star::uno::Reference<
::com::sun::star::rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const = 0;
private:
CanvasSharedPtr mpCanvas;
mutable ::com::sun::star::uno::Reference<
::com::sun::star::rendering::XCachedPrimitive > mxCachedPrimitive;
......
......@@ -2755,8 +2755,8 @@ namespace cppcanvas
{
// ANDing the result. We want to fail if at least
// one action failed.
mbRet &= rAction.mpAction->render( maTransformation,
rSubset );
mbRet &= rAction.mpAction->renderSubset( maTransformation,
rSubset );
}
private:
......
......@@ -65,8 +65,8 @@ namespace cppcanvas
const OutDevState& );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -110,8 +110,8 @@ namespace cppcanvas
return true;
}
bool LineAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool LineAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
// line only contains a single action, fail if subset
// requests different range
......
......@@ -66,8 +66,8 @@ namespace cppcanvas
const ::Color& );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -125,8 +125,8 @@ namespace cppcanvas
return true;
}
bool PointAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool PointAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
// point only contains a single action, fail if subset
// requests different range
......
......@@ -60,16 +60,14 @@ namespace cppcanvas
class RenderGraphicAction : public CachedPrimitiveBase
{
public:
using CachedPrimitiveBase::render;
RenderGraphicAction( const ::vcl::RenderGraphic& rRenderGraphic,
const ::basegfx::B2DPoint& rDstPoint,
const ::basegfx::B2DVector& rDstSize,
const CanvasSharedPtr&,
const OutDevState& );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -79,8 +77,8 @@ namespace cppcanvas
private:
using Action::render;
virtual bool render( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const;
::vcl::RenderGraphic maRenderGraphic;
uno::Reference< rendering::XBitmap > mxBitmap;
......@@ -119,10 +117,10 @@ namespace cppcanvas
}
}
bool RenderGraphicAction::render( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const
bool RenderGraphicAction::renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
const ::basegfx::B2DHomMatrix& rTransformation ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::RenderGraphicAction::render()" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::RenderGraphicAction::renderPrimitive()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::RenderGraphicAction: 0x%X", this );
if( mxBitmap.is() )
......@@ -138,8 +136,8 @@ namespace cppcanvas
return true;
}
bool RenderGraphicAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool RenderGraphicAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
// rendergraphic only contains a single action, fail if subset
// requests different range
......
......@@ -644,8 +644,8 @@ namespace cppcanvas
const ::basegfx::B2DHomMatrix& rTextTransform );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -723,10 +723,10 @@ namespace cppcanvas
return true;
}
bool TextAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& /*rSubset*/ ) const
bool TextAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& /*rSubset*/ ) const
{
OSL_FAIL( "TextAction::render(): Subset not supported by this object" );
OSL_FAIL( "TextAction::renderSubset(): Subset not supported by this object" );
// TODO(P1): Retrieve necessary font metric info for
// TextAction from XCanvas. Currently, the
......@@ -810,8 +810,8 @@ namespace cppcanvas
const ::basegfx::B2DHomMatrix& rTextTransform );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -959,10 +959,10 @@ namespace cppcanvas
maReliefOffset );
}
bool EffectTextAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& /*rSubset*/ ) const
bool EffectTextAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& /*rSubset*/ ) const
{
OSL_FAIL( "EffectTextAction::render(): Subset not supported by this object" );
OSL_FAIL( "EffectTextAction::renderSubset(): Subset not supported by this object" );
// TODO(P1): Retrieve necessary font metric info for
// TextAction from XCanvas. Currently, the
......@@ -1040,8 +1040,8 @@ namespace cppcanvas
const ::basegfx::B2DHomMatrix& rTextTransform );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -1123,10 +1123,10 @@ namespace cppcanvas
return true;
}
bool TextArrayAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool TextArrayAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::TextArrayAction::render( subset )" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::TextArrayAction::renderSubset()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::TextArrayAction: 0x%X", this );
rendering::RenderState aLocalState( maState );
......@@ -1230,8 +1230,8 @@ namespace cppcanvas
const ::basegfx::B2DHomMatrix& rTextTransform );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -1413,10 +1413,10 @@ namespace cppcanvas
const rendering::ViewState& mrViewState;
};
bool EffectTextArrayAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool EffectTextArrayAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::EffectTextArrayAction::render( subset )" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::EffectTextArrayAction::renderSubset()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::EffectTextArrayAction: 0x%X", this );
rendering::RenderState aLocalState( maState );
......@@ -1568,8 +1568,8 @@ namespace cppcanvas
const ::basegfx::B2DHomMatrix& rTextTransform );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -1843,10 +1843,10 @@ namespace cppcanvas
const rendering::ViewState& mrViewState;
};
bool OutlineAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool OutlineAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::OutlineAction::render( subset )" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::OutlineAction::renderSubset()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::OutlineAction: 0x%X", this );
if( rSubset.mnSubsetBegin == rSubset.mnSubsetEnd )
......
......@@ -136,8 +136,8 @@ namespace cppcanvas
const OutDevState& rState );
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual bool render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
......@@ -255,10 +255,10 @@ namespace cppcanvas
// into the direction of having a direct GDIMetaFile2XCanvas
// renderer, and maybe a separate metafile XCanvas
// implementation.
bool TransparencyGroupAction::render( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
bool TransparencyGroupAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
const Subset& rSubset ) const
{
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::TransparencyGroupAction::render()" );
RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::TransparencyGroupAction::renderSubset()" );
RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::TransparencyGroupAction: 0x%X", this );
// determine overall transformation matrix (render, view,
......@@ -288,7 +288,7 @@ namespace cppcanvas
nRotate,
nShearX ) )
{
OSL_FAIL( "TransparencyGroupAction::render(): non-decomposable transformation" );
OSL_FAIL( "TransparencyGroupAction::renderSubset(): non-decomposable transformation" );
return false;
}
......@@ -509,7 +509,7 @@ namespace cppcanvas
aSubset.mnSubsetBegin = 0;
aSubset.mnSubsetEnd = -1;
return render( rTransformation, aSubset );
return renderSubset( rTransformation, aSubset );
}
::basegfx::B2DRange TransparencyGroupAction::getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment