summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2023-06-10 22:25:43 +0900
committerTomaž Vajngerl <quikee@gmail.com>2023-06-12 03:54:48 +0200
commit92fc0ace46398eeb6c9238c8292459cc78db6694 (patch)
tree9f433b294fd0c28f3db916ca6bc196b018006b32 /include
parent3799defaccaaa7160d3a584fdb1c68e0719a0381 (diff)
ooxml: import and export border theme colors for various props.
This adds support to import and export various border (lines) theme color properties. SvxBoxItem needed to be fixed, because it can happen that the BorderLine is not yet initialised and we already set the border's ComplexColor. Now there is a maTempComplexColor inside SvxBoxItem, which stores the ComplexColor until the specific BorderLine is initialized. In addition add roundtrip test for import and export cycle. Change-Id: Idd307a3adaf364745aed8fc8540bf72ef4948198 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152833 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/editeng/boxitem.hxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/editeng/boxitem.hxx b/include/editeng/boxitem.hxx
index 4e35aad3a56c..6ceff99268c3 100644
--- a/include/editeng/boxitem.hxx
+++ b/include/editeng/boxitem.hxx
@@ -24,7 +24,9 @@
#include <editeng/editengdllapi.h>
#include <com/sun/star/table/BorderLine2.hpp>
#include <o3tl/typed_flags_set.hxx>
+#include <docmodel/color/ComplexColor.hxx>
#include <memory>
+#include <array>
namespace editeng { class SvxBorderLine; }
@@ -64,8 +66,13 @@ class EDITENG_DLLPUBLIC SvxBoxItem final : public SfxPoolItem
sal_Int16 mnLeftDistance = 0;
sal_Int16 mnRightDistance = 0;
+ // Store complex colors until lines are created...
+ std::array<model::ComplexColor, 4> maTempComplexColors;
+
bool mbRemoveAdjCellBorder = false;
+ void tryMigrateComplexColor(SvxBoxItemLine eLine);
+
public:
static SfxPoolItem* CreateDefault();