summaryrefslogtreecommitdiff
path: root/sw/source/core/inc/cntfrm.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/core/inc/cntfrm.hxx')
-rw-r--r--sw/source/core/inc/cntfrm.hxx26
1 files changed, 24 insertions, 2 deletions
diff --git a/sw/source/core/inc/cntfrm.hxx b/sw/source/core/inc/cntfrm.hxx
index 937f40c1751e..19d2a97198ff 100644
--- a/sw/source/core/inc/cntfrm.hxx
+++ b/sw/source/core/inc/cntfrm.hxx
@@ -20,6 +20,7 @@
#ifndef INCLUDED_SW_SOURCE_CORE_INC_CNTFRM_HXX
#define INCLUDED_SW_SOURCE_CORE_INC_CNTFRM_HXX
+#include <swdllapi.h>
#include "frame.hxx"
#include "flowfrm.hxx"
#include <cshtyp.hxx>
@@ -33,6 +34,27 @@ class SwTextFrame;
// implemented in cntfrm.cxx, used in cntfrm.cxx and crsrsh.cxx
extern bool GetFrameInPage( const SwContentFrame*, SwWhichPage, SwPosPage, SwPaM* );
+enum class SwContentFrameInvFlags : sal_uInt8
+{
+ NONE = 0x00,
+ SetCompletePaint = 0x01,
+ InvalidatePos = 0x02,
+ InvalidateSize = 0x04,
+ InvalidateSectPrt = 0x08,
+ InvalidateNextPrt = 0x10,
+ InvalidatePrevPrt = 0x20,
+ InvalidateNextPos = 0x40,
+ SetNextCompletePaint = 0x80,
+};
+
+namespace o3tl {
+ template<> struct typed_flags<SwContentFrameInvFlags> : is_typed_flags<SwContentFrameInvFlags, 0xff> {};
+}
+
+/**
+ * SwContentFrame is the layout for content nodes: a common base class for text (paragraph) and
+ * non-text (e.g. graphic) frames.
+ */
class SAL_DLLPUBLIC_RTTI SwContentFrame: public SwFrame, public SwFlowFrame
{
friend void MakeNxt( SwFrame *pFrame, SwFrame *pNxt ); // calls MakePrtArea
@@ -46,7 +68,7 @@ class SAL_DLLPUBLIC_RTTI SwContentFrame: public SwFrame, public SwFlowFrame
virtual void MakeAll(vcl::RenderContext* pRenderContext) override;
- void UpdateAttr_( const SfxPoolItem*, const SfxPoolItem*, sal_uInt8 &,
+ void UpdateAttr_( const SfxPoolItem*, const SfxPoolItem*, SwContentFrameInvFlags &,
SwAttrSetChg *pa = nullptr, SwAttrSetChg *pb = nullptr );
virtual bool ShouldBwdMoved( SwLayoutFrame *pNewUpper, bool& ) override;
@@ -85,7 +107,7 @@ public:
// nMaxHeight is the required height
// bSplit indicates that the paragraph has to be split
// bTst indicates that we are currently doing a test formatting
- virtual bool WouldFit( SwTwips &nMaxHeight, bool &bSplit, bool bTst );
+ virtual bool WouldFit(SwTwips &nMaxHeight, bool &bSplit, bool bTst, bool);
bool MoveFootnoteCntFwd( bool, SwFootnoteBossFrame* ); // called by MoveFwd if content