Kaydet (Commit) 639aa8e7 authored tarafından Caolán McNamara's avatar Caolán McNamara

Resolves: fdo#71527 make presenter console not crash/useless

Basically reverts the pieces of
21ec9bea to make XSpriteCanvas a
XBitmapCanvas again

Otherwise PresenterHelper::loadBitmap is not an XBitmapCanvas
and so VclFactory::createBitmap cannot succeed

Change-Id: I197adf98e915102f383ee050a8ea16d1e41cecf2
üst 3c10c9ec
......@@ -51,6 +51,8 @@ namespace cppcanvas
ImplSpriteCanvas::ImplSpriteCanvas( const uno::Reference< rendering::XSpriteCanvas >& rCanvas ) :
ImplCanvas( uno::Reference< rendering::XCanvas >(rCanvas,
uno::UNO_QUERY) ),
ImplBitmapCanvas( uno::Reference< rendering::XBitmapCanvas >(rCanvas,
uno::UNO_QUERY) ),
mxSpriteCanvas( rCanvas ),
mpTransformArbiter( new TransformationArbiter() )
{
......@@ -59,8 +61,10 @@ namespace cppcanvas
ImplSpriteCanvas::ImplSpriteCanvas(const ImplSpriteCanvas& rOrig) :
Canvas(),
BitmapCanvas(),
SpriteCanvas(),
ImplCanvas( rOrig ),
ImplBitmapCanvas( rOrig ),
mxSpriteCanvas( rOrig.getUNOSpriteCanvas() ),
mpTransformArbiter( new TransformationArbiter() )
{
......
......@@ -29,14 +29,14 @@
#include <cppcanvas/spritecanvas.hxx>
#include <implcanvas.hxx>
#include <implbitmapcanvas.hxx>
namespace cppcanvas
{
namespace internal
{
class ImplSpriteCanvas : public virtual SpriteCanvas, protected virtual ImplCanvas
class ImplSpriteCanvas : public virtual SpriteCanvas, protected virtual ImplBitmapCanvas
{
public:
ImplSpriteCanvas( const ::com::sun::star::uno::Reference<
......
......@@ -28,7 +28,7 @@
#include <boost/shared_ptr.hpp>
#include <cppcanvas/canvas.hxx>
#include <cppcanvas/bitmapcanvas.hxx>
#include <cppcanvas/sprite.hxx>
#include <cppcanvas/customsprite.hxx>
......@@ -49,7 +49,7 @@ namespace cppcanvas
/** SpriteCanvas interface
*/
class SpriteCanvas : public virtual Canvas, private boost::noncopyable
class SpriteCanvas : public virtual BitmapCanvas, private boost::noncopyable
{
public:
virtual bool updateScreen( bool bUpdateAll ) const = 0;
......
......@@ -30,7 +30,7 @@ interface XSprite;
interface XAnimatedSprite;
interface XCustomSprite;
/** Specialization of a XCanvas, where moving, animated objects
/** Specialization of a XBitmapCanvas, where moving, animated objects
(called sprites) are supported.<p>
@attention The screen output of canvas drawing operations is
......@@ -44,9 +44,9 @@ interface XCustomSprite;
(because there's a defined moment in time where content display
can happen, namely the XBufferController::showBuffer()) call. If
you don't need sprite functionality, and don't want the
updateScreen hassle, simply use the XCanvas.
updateScreen hassle, simply use the XBitmapCanvas.
*/
interface XSpriteCanvas : XCanvas
interface XSpriteCanvas : XBitmapCanvas
{
/** Create a sprite object from the specified animation
sequence. A sprite is a back-buffered object with its own,
......@@ -98,8 +98,9 @@ interface XSpriteCanvas : XCanvas
object.
The cloned sprite always shows the same content as its
original, but of course the sprite position, visibility, alpha
etc. can be modified independently.
original. Furthermore, cloned copies of a hidden original are
never visible, although cloned copies of a visible original
can of course be invisible.
@param original
The original sprite to copy the content from. This sprite must
......
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