24#include <osl/diagnose.h>
54 {
return nFirst - nSecond; }
56 {
return nSecond - nFirst; }
111 &o3tl::saturating_add<tools::Long>,
301 ,
"static SwBorderAttrs::pCache"
309#if OSL_DEBUG_LEVEL > 0
315 OSL_ENSURE( !pObj,
"Who didn't deregister?");
326 OSL_ENSURE( pNew,
"insert 0-Shell?" );
385 if (pC->pPrev == pSh)
402 "Root", pFormat ), nullptr ),
406 mbSidebarChanged( false ),
407 mbNeedGrammarCheck( false ),
408 mbCheckSuperfluous( false ),
409 mbIdleFormat( true ),
410 mbBrowseWidthValid( false ),
411 mbTurboAllowed( true ),
412 mbAssertFlyPages( true ),
413 mbTableUpdateInProgress( false ),
414 mbIsVirtPageNum( false ),
415 mbIsNewLayout( true ),
416 mbCallbackActionEnabled ( false ),
417 mbLayoutFreezed ( false ),
418 mbHideRedlines(pFormat->GetDoc()->GetDocumentRedlineManager().IsHideRedlines()),
419 m_FieldmarkMode(pSh->GetViewOptions()->IsFieldName()
422 m_ParagraphBreakMode(pSh->GetViewOptions()->IsParagraph()
425 mnBrowseWidth(MIN_BROWSE_WIDTH),
427 mpLastPage( nullptr ),
429 mpWaitingCurrShell( nullptr ),
430 mpDrawPage( nullptr ),
432 mnAccessibleShells( 0 )
474 ::std::optional<sal_uInt16> oPgNum;
502 *pDesc,
this,
true,
true,
false,
503 false,
nullptr,
true);
507 while( pLay->
Lower() )
539 if ( pRegisteredInNonConst )
552 rpCurrShell->pRoot =
nullptr;
584 if(
dynamic_cast< const SwFlyDrawObj *
>( pObj ) !=
nullptr )
CurrShell(SwViewShell *pNew)
virtual const SwDrawModel * GetDrawModel() const =0
Draw Model and id accessors.
Document fields related interfaces.
virtual void UpdateRefFields()=0
virtual void UpdatePageFields(const SwTwips)=0
Provides access to the layout of a document.
virtual void SetCurrentViewShell(SwViewShell *pNew)=0
!!!The old layout must be deleted!!!
Provides access to settings of a document.
virtual bool get(DocumentSettingId id) const =0
Return the specified document setting.
Handle the background jobs of a Writer document.
virtual void StartIdling()=0
Start the idle task.
virtual void StopIdling()=0
Stop idle processing.
const SdrPage * GetPage(sal_uInt16 nPgNum) const
SdrObject * GetObj(size_t nNum) const
size_t GetObjCount() const
virtual rtl::Reference< SdrObject > RemoveObject(size_t nObjNum)
virtual void SetSize(const Size &aSiz)
const SwFormatPageDesc & GetPageDesc(bool=true) const
The Cache object base class Users of the Cache must derive a class from the SwCacheObj and store thei...
const SwAttrSet & GetSwAttrSet() const
Does node has already its own auto-attributes? Access to SwAttrSet.
void DelFrameFormat(SwFrameFormat *pFormat, bool bBroadcast=false)
::sw::DocumentLayoutManager const & GetDocumentLayoutManager() const
const SwPageDesc & GetPageDesc(const size_t i) const
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
SwPageDesc * GetPageDesc()
const ::std::optional< sal_uInt16 > & GetNumOffset() const
const SwRect & getFrameArea() const
static sal_uInt32 snLastFrameId
static void SetCache(SwCache *pNew)
tools::Long GetLeftMargin() const
tools::Long GetPrtLeft() const
tools::Long GetRightMargin() const
bool SetMinLeft(tools::Long)
void SetLeftRightMargins(tools::Long, tools::Long)
void MakeBelowPos(const SwFrame *, const SwFrame *, bool)
static void CheckPageDescs(SwPageFrame *pStart, bool bNotifyFields=true, SwPageFrame **ppPrev=nullptr)
Check all pages (starting from the given one) if they use the appropriate frame format.
bool SetMaxBottom(tools::Long)
void SetRightLeftMargins(tools::Long, tools::Long)
tools::Long GetPrtTop() const
tools::Long GetBottomMargin() const
void SetTopBottomMargins(tools::Long, tools::Long)
tools::Long GetPrtBottom() const
bool SetMaxRight(tools::Long)
void MakeLeftPos(const SwFrame *, const SwFrame *, bool)
tools::Long GetPrtRight() const
sw::BroadcastingModify * GetDep()
use these so we can grep for SwFrame's GetRegisteredIn accesses beware that SwTextFrame may return sw...
void MakeRightPos(const SwFrame *, const SwFrame *, bool)
tools::Long GetTopMargin() const
static SwCache * GetCachePtr()
void setRootFrame(SwRootFrame *pRoot)
A layout frame is a frame that contains other frames (m_pLower), e.g. SwPageFrame or SwTabFrame.
virtual void DestroyImpl() override
const SwFrame * Lower() const
Marks a node in the document model.
SwNodeOffset GetIndex() const
SwTableNode * FindTableNode()
Search table node, in which it is.
const SwStartNode * StartOfSectionNode() const
SwNode & GetEndOfContent() const
Regular ContentSection (i.e. the BodyText).
SwContentNode * GoNextSection(SwNodeIndex *, bool bSkipHidden=true, bool bSkipProtect=true) const
Go to next content-node that is not protected or hidden (Both set FALSE ==> GoNext/GoPrevious!...
A page of the document layout.
void InvalidateAutoCompleteWords() const
void InvalidateSmartTags() const
void InvalidateSpelling() const
void SubLeft(const tools::Long nSub)
tools::Long Right_() const
void SubTop(const tools::Long nSub)
tools::Long GetBottomDistance(tools::Long) const
void SetBottomAndHeight(tools::Long nBottom, tools::Long nNew)
void Top(const tools::Long nTop)
tools::Long Height_() const
tools::Long Left_() const
void SetTopAndHeight(tools::Long nTop, tools::Long nNew)
void SetRightAndWidth(tools::Long nRight, tools::Long nNew)
tools::Long Width_() const
tools::Long GetRightDistance(tools::Long) const
bool OverStepBottom(tools::Long) const
void SetPosX(const tools::Long nNew)
void SetLeftAndWidth(tools::Long nLeft, tools::Long nNew)
bool OverStepLeft(tools::Long) const
void SetLowerLeftCorner(const Point &rNew)
bool OverStepRight(tools::Long) const
void AddBottom(const tools::Long nAdd)
tools::Long GetTopDistance(tools::Long) const
tools::Long GetLeftDistance(tools::Long) const
void AddRight(const tools::Long nAdd)
void SetUpperRightCorner(const Point &rNew)
void AddHeight(const tools::Long nAdd)
void AddWidth(const tools::Long nAdd)
void SetUpperLeftCorner(const Point &rNew)
tools::Long Bottom_() const
void SetPosY(const tools::Long nNew)
The root element of a Writer document layout.
SwViewShell * mpCurrShell
std::unique_ptr< SwCurrShells > mpCurrShells
const SwContentFrame * mpTurbo
If we only have to format one ContentFrame, its in mpTurbo.
SwViewShell * GetCurrShell() const
void AllInvalidateSmartTagsOrSpelling(bool bSmartTags) const
std::unique_ptr< SwDestroyList > mpDestroy
bool IsLayoutFreezed() const
void Init(SwFrameFormat *)
sal_uInt16 mnAccessibleShells
Page count.
void DeRegisterShell(SwViewShell *pSh)
static void RemoveMasterObjs(SdrPage *pPg)
Remove MasterObjects from the Page (called by the ctors)
bool mbCallbackActionEnabled
SwViewShell * mpWaitingCurrShell
SdrPage * mpDrawPage
One Page per DrawModel per Document; is always the size of the Root.
void AllAddPaintRect() const
void AllInvalidateAutoCompleteWords() const
void AllCheckPageDescs() const
void RemoveFootnotes(SwPageFrame *pPage=nullptr, bool bPageOnly=false, bool bEndNotes=false)
Remove all footnotes (but no references)
virtual void DestroyImpl() override
SwRootFrame(SwFrameFormat *, SwViewShell *)
static SwLayVout * s_pVout
void AssertFlyPages()
Ensures that enough pages exist, so that all page bound frames and draw objects can be placed.
virtual ~SwRootFrame() override
void AllRemoveFootnotes()
friend void InitCurrShells(SwRootFrame *pRoot)
static SwRootFrame * s_pLast
The last, still alive SwRootFrame instance, for debugging.
const SwTable & GetTable() const
SwTableFormat * GetFrameFormat()
bool IsOnlineSpell() const
const SwViewOption * GetViewOptions() const
bool AddPaintRect(const SwRect &rRect)
SwRootFrame * GetLayout() const
void ClearSwLayouterEntries()
ring_container GetRingContainer()
std::deque< AttacherIndex_Impl > aIndex
Dialog to specify the properties of date form field.
static tools::Long SwIncrement(tools::Long nA, tools::Long nAdd)
static SwRectFnCollection aVertical
static tools::Long SwDecrement(tools::Long nA, tools::Long nSub)
static SwRectFnCollection aVerticalLeftToRight
static tools::Long SecondMinusFirst(tools::Long nFirst, tools::Long nSecond)
void SetShell(SwViewShell *pSh)
static SwRectFnCollection aHorizontal
SwRectFn fnRectVertL2RB2T
static SwRectFnCollection aVerticalLeftToRightBottomToTop
This is the same as horizontal, but rotated counter-clockwise by 90 degrees.
static tools::Long FirstMinusSecond(tools::Long nFirst, tools::Long nSecond)
void InitCurrShells(SwRootFrame *pRoot)
std::set< CurrShell * > SwCurrShells