25#include <com/sun/star/text/WrapTextMode.hpp>
90#define TEXT_MIN_SMALL 300
189 SwAnchoredObjList::size_type nPos,
190 const SwRect &rLine )
const;
197 SwAnchoredObjList::size_type nPos,
198 const SwRect &rLine )
const;
206 const bool bInFootnote,
207 const bool bInFooterOrHeader );
257 const SwRect& rRect )
const;
wrapper class for the positioning of Writer fly frames and drawing objects
const SdrObject * GetObject(sal_uInt16 nPos) const
sal_uInt16 GetCount() const
SwRect ContourRect(const SwFormat *pFormat, const SdrObject *pObj, const SwTextFrame *pFrame, const SwRect &rLine, const tools::Long nXPos, const bool bRight)
static SwRect CalcBoundRect(const SwAnchoredObject *pAnchoredObj, const SwRect &rLine, const SwTextFrame *pFrame, const tools::Long nXPos, const bool bRight)
Computes the rectangle that will cover the object in the given line.
friend void ClrContourCache()
void ClrObject(sal_uInt16 nPos)
std::vector< CacheItem > mvItems
A page of the document layout.
Of course Writer needs its own rectangles.
The purpose of this class is to be the universal interface between formatting/text output and the pos...
void CalcRightMargin(SwRect &rFly, SwAnchoredObjList::size_type nPos, const SwRect &rLine) const
The right margin is the right margin or it is determined by the next object standing on the line.
SwTwips GetMinBottom() const
void SetNextTop(tools::Long nNew) const
std::unique_ptr< SwAnchoredObjList > mpAnchoredObjList
bool GetTop(const SwAnchoredObject *_pAnchoredObj, const bool bInFootnote, const bool bInFooterOrHeader)
#i26945# - change first parameter Now it's the <SwAnchoredObject> instance of the floating screen obj...
bool IsAnyObj(const SwRect &rRect) const
true when a frame or DrawObj must be taken in account.
SwAnchoredObjList::size_type GetPos(const SwAnchoredObject *pAnchoredObj) const
void SetIgnoreObjsInHeaderFooter(const bool bNew)
SwRect GetFrame_(const SwRect &rPortion) const
This method will be called during the LineIter formatting.
SwRect AnchoredObjToRect(const SwAnchoredObject *pAnchoredObj, const SwRect &rRect) const
Determines the demanded rectangle for an anchored object, considering its surround for text wrapping.
SwTwips GetMaxBottom(const SwBreakPortion &rPortion, const SwTextFormatInfo &rInfo) const
Gets the maximum of the fly frame bottoms.
void SetIgnoreContour(bool bNew)
void SetIgnoreCurrentFrame(bool bNew)
SwAnchoredObjList * InitAnchoredObjList()
const SwTextFrame * GetMaster() const
const SwTextFrame * GetMaster_()
bool IsAnyFrame() const
Same as IsAnyFrame(const SwRect&), but uses the current frame print area.
bool ForEach(const SwRect &rRect, SwRect *pRect, bool bAvoid) const
Look for the first object which overlaps with the rectangle.
SwRect GetFrameArea() const
const SwPageFrame * m_pPage
void DrawFlyRect(OutputDevice *pOut, const SwRect &rRect)
Two subtleties needs to be mentioned:
const SwAnchoredObject * mpCurrAnchoredObj
css::text::WrapTextMode GetSurroundForTextWrap(const SwAnchoredObject *pAnchoredObj) const
bool mbIgnoreObjsInHeaderFooter
boolean, indicating if objects in page header|footer are considered for text frames not in page heade...
SwRect GetFrame(const SwRect &rPortion) const
SwTwips CalcMinBottom() const
const SwTextFrame * m_pCurrFrame
const SwTextFrame * m_pMaster
bool mbIgnoreCurrentFrame
SwAnchoredObjList * GetAnchoredObjList() const
void CalcLeftMargin(SwRect &rFly, SwAnchoredObjList::size_type nPos, const SwRect &rLine) const
The left margin is the left margin of the current PrintArea or it is determined by the last FlyFrame,...
tools::Long GetNextTop() const
SwNodeOffset m_nCurrFrameNodeIndex
Stores the upper edge of the "next" frame.
void CtorInitTextFly(const SwTextFrame *pFrame)
void DrawTextOpaque(SwDrawTextInfo &rInf)
This method is called by DrawText().
Represents the visualization of a paragraph.
std::unique_ptr< TextRanger > mxTextRanger
const SdrObject * mpSdrObj
void ClrContourCache(const SdrObject *pObj)
std::vector< SwAnchoredObject * > SwAnchoredObjList
SwContourCache * pContourCache
Contour-cache global variable, initialized/destroyed in txtinit.cxx and needed in txtfly....