diff options
author | Sarper Akdemir <sarper.akdemir.extern@allotropia.de> | 2024-03-06 13:48:14 +0300 |
---|---|---|
committer | Sarper Akdemir <sarper.akdemir.extern@allotropia.de> | 2024-03-07 15:07:27 +0100 |
commit | 6c25216e461b624f556a1b2830ab0911d5df7daf (patch) | |
tree | 99ab7fcd0c79ab6fd68784ce0dbf2f41337fb246 /include/svx | |
parent | 7979508e4328ceb9d6a2dff6a2a080ea64247c7e (diff) |
tdf#159931: pptx export: export each used slide layout for a master
attempts to fix the slideLayout reference related regression
from Idb6b88ebe87a83818d8eb27a1fa087652a002c0c.
To correctly export the all used slideLayout instances for a
given master, iterate through sdr::PageUsers of that master
and figure out all used layouts.
Change-Id: I0f58befac1ba4d5ec01aeedbb5f611c83683dcf8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164468
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Reviewed-by: Sarper Akdemir <sarper.akdemir.extern@allotropia.de>
Diffstat (limited to 'include/svx')
-rw-r--r-- | include/svx/sdrmasterpagedescriptor.hxx | 3 | ||||
-rw-r--r-- | include/svx/sdrpageuser.hxx | 3 | ||||
-rw-r--r-- | include/svx/svdpage.hxx | 1 |
3 files changed, 5 insertions, 2 deletions
diff --git a/include/svx/sdrmasterpagedescriptor.hxx b/include/svx/sdrmasterpagedescriptor.hxx index d7eac22a1b5c..9be1e663bcff 100644 --- a/include/svx/sdrmasterpagedescriptor.hxx +++ b/include/svx/sdrmasterpagedescriptor.hxx @@ -22,6 +22,7 @@ #include <svx/sdrpageuser.hxx> #include <svx/svdsob.hxx> +#include <svx/svxdllapi.h> #include <memory> class SdrPageProperties; @@ -30,7 +31,7 @@ namespace sdr::contact { class ViewContact; } namespace sdr { - class MasterPageDescriptor final : public sdr::PageUser + class SVXCORE_DLLPUBLIC MasterPageDescriptor final : public sdr::PageUser { private: SdrPage& maOwnerPage; diff --git a/include/svx/sdrpageuser.hxx b/include/svx/sdrpageuser.hxx index 8c31a2936c7e..5557b2729777 100644 --- a/include/svx/sdrpageuser.hxx +++ b/include/svx/sdrpageuser.hxx @@ -21,6 +21,7 @@ #define INCLUDED_SVX_SDRPAGEUSER_HXX #include <vector> +#include <svx/svxdllapi.h> class SdrPage; @@ -30,7 +31,7 @@ class SdrPage; namespace sdr { - class PageUser + class SVXCORE_DLLPUBLIC PageUser { public: // this method is called from the destructor of the referenced page. diff --git a/include/svx/svdpage.hxx b/include/svx/svdpage.hxx index c70a2f1f4a2d..cb1e7f9f0b20 100644 --- a/include/svx/svdpage.hxx +++ b/include/svx/svdpage.hxx @@ -405,6 +405,7 @@ private: public: void AddPageUser(sdr::PageUser& rNewUser); void RemovePageUser(sdr::PageUser& rOldUser); + const sdr::PageUserVector& GetPageUsers() const { return maPageUsers; }; // SdrModel access on SdrPage level SdrModel& getSdrModelFromSdrPage() const { return mrSdrModelFromSdrPage; } |