summaryrefslogtreecommitdiff
path: root/slideshow/source/inc
diff options
context:
space:
mode:
authorMarco Cecchetti <marco.cecchetti@collabora.com>2024-06-24 15:26:18 +0900
committerMiklos Vajna <vmiklos@collabora.com>2024-07-10 08:05:56 +0200
commit1f0fd06bc0cfe5036661ce2c23911f34eccf678a (patch)
treee18e8ec47b4b788c9cf3e5eb62021e5df6d6c3ed /slideshow/source/inc
parent6f96e7720f765d4e5e8fdef6a2a2b8cbb75c81ef (diff)
sd: slideshow render interface and implementation
Interface and implementation to expose the ability to render the slide's layers to a bitmap. Change-Id: I3da48585e498354592e163d84bd29659b233c255 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170214 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'slideshow/source/inc')
-rw-r--r--slideshow/source/inc/shapeimporter.hxx13
-rw-r--r--slideshow/source/inc/slide.hxx10
2 files changed, 23 insertions, 0 deletions
diff --git a/slideshow/source/inc/shapeimporter.hxx b/slideshow/source/inc/shapeimporter.hxx
index 37598aa476bf..f4463e39c425 100644
--- a/slideshow/source/inc/shapeimporter.hxx
+++ b/slideshow/source/inc/shapeimporter.hxx
@@ -95,6 +95,17 @@ public:
const PolyPolygonVector& getPolygons() const;
double getImportedShapesCount() const{ return mnAscendingPrio; }
+
+ void setMasterPageObjectsOnly(bool bMasterPageObjectsOnly)
+ {
+ mbMasterPageObjectsOnly = bMasterPageObjectsOnly;
+ }
+
+ void setTextFieldsOnly(bool bTextFieldsOnly)
+ {
+ mbTextFieldsOnly = bTextFieldsOnly;
+ }
+
private:
bool isSkip( css::uno::Reference<css::beans::XPropertySet> const& xPropSet,
std::u16string_view shapeType,
@@ -132,6 +143,8 @@ private:
::std::stack<XShapesEntry> maShapesStack;
double mnAscendingPrio;
bool mbConvertingMasterPage;
+ bool mbMasterPageObjectsOnly;
+ bool mbTextFieldsOnly;
};
} // namespace presentation::internal
diff --git a/slideshow/source/inc/slide.hxx b/slideshow/source/inc/slide.hxx
index ea460582d120..f49a4713d30f 100644
--- a/slideshow/source/inc/slide.hxx
+++ b/slideshow/source/inc/slide.hxx
@@ -44,6 +44,8 @@ namespace basegfx
class B2IVector;
}
+class Size;
+
/* Definition of Slide interface */
namespace slideshow::internal
@@ -141,6 +143,14 @@ namespace slideshow::internal
virtual SlideBitmapSharedPtr
getCurrentSlideBitmap( const UnoViewSharedPtr& rView ) const = 0;
+ virtual Size createLOKSlideRenderer(int nViewWidth, int nViewHeight,
+ bool bRenderBackground,
+ bool bRenderMasterPageObjects) = 0;
+
+ virtual bool renderNextLOKSlideLayer(unsigned char* buffer,
+ bool& bIsBitmapLayer,
+ OString& rJsonMsg) = 0;
+
protected:
~Slide() {}
};