summaryrefslogtreecommitdiff
path: root/slideshow
diff options
context:
space:
mode:
authorSiqi LIU <me@siqi.fr>2013-08-23 10:40:27 +0800
committerSiqi LIU <me@siqi.fr>2013-08-23 11:18:29 +0800
commit1e7918feeb088008a266edc493731dad361fecbc (patch)
tree59cf918a32f34582faac9dbca349e2a9a245b25f /slideshow
parenteb0cc3a63d6dade5d54deff91c2845a5a782b6ff (diff)
getTransilationOffset Impl
Change-Id: Ie02e1c4d2ab1357469213f13971ab04632611d67
Diffstat (limited to 'slideshow')
-rw-r--r--slideshow/source/engine/pointersymbol.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/slideshow/source/engine/pointersymbol.cxx b/slideshow/source/engine/pointersymbol.cxx
index d0e7fce6e2eb..f825bbc4baf0 100644
--- a/slideshow/source/engine/pointersymbol.cxx
+++ b/slideshow/source/engine/pointersymbol.cxx
@@ -28,6 +28,7 @@
#include <basegfx/vector/b2dvector.hxx>
#include <com/sun/star/rendering/XCanvas.hpp>
+#include <com/sun/star/geometry/IntegerSize2D.hpp>
#include "com/sun/star/uno/Reference.hxx"
#include "pointersymbol.hxx"
@@ -106,6 +107,7 @@ basegfx::B2DPoint PointerSymbol::calcSpritePos( UnoViewSharedPtr const & rView )
const uno::Reference<rendering::XBitmap> xBitmap( rView->getCanvas()->getUNOCanvas(),
uno::UNO_QUERY_THROW );
const geometry::IntegerSize2D realSize( xBitmap->getSize() );
+
return basegfx::B2DPoint(
// pos.X pos.Y are given in 0..1, beginning from the upper left corner of the currentSlide.
std::min<sal_Int32>( 0, LEFT_BORDER_SPACE ),
@@ -120,12 +122,13 @@ basegfx::B2DPoint PointerSymbol::calcSpritePos(
uno::UNO_QUERY_THROW );
const geometry::IntegerSize2D realSize( xBitmap->getSize() );
+ const geometry::IntegerSize2D realTranslationOffset ( rView->getTranslationOffset() );
+
+
basegfx::B2DPoint newPos(
- // pos.X pos.Y are given in 0..1, beginning from the upper left corner of the currentSlide.
- realSize.Width * pos.X,
- realSize.Height * pos.Y);
+ realTranslationOffset.Width + (realSize.Width - 2 * realTranslationOffset.Width) * pos.X,
+ realTranslationOffset.Height + (realSize.Height - 2 * realTranslationOffset.Height) * pos.Y);
- // std::cerr << "calcSpritePos : (" << newPos.getX() << ","<<newPos.getY() << ")" << std::endl;
return newPos;
}