diff options
Diffstat (limited to 'sw/source/core/inc/cntfrm.hxx')
-rw-r--r-- | sw/source/core/inc/cntfrm.hxx | 26 |
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 |