LibreOffice Module sw (master) 1
|
#include <txtfly.hxx>
Classes | |
struct | CacheItem |
Public Member Functions | |
SwContourCache () | |
~SwContourCache () | |
const SdrObject * | GetObject (sal_uInt16 nPos) const |
sal_uInt16 | GetCount () const |
void | ClrObject (sal_uInt16 nPos) |
Static Public Member Functions | |
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. More... | |
Private Member Functions | |
SwRect | ContourRect (const SwFormat *pFormat, const SdrObject *pObj, const SwTextFrame *pFrame, const SwRect &rLine, const tools::Long nXPos, const bool bRight) |
Private Attributes | |
std::vector< CacheItem > | mvItems |
tools::Long | mnPointCount |
Friends | |
void | ClrContourCache () |
Definition at line 54 of file txtfly.hxx.
SwContourCache::SwContourCache | ( | ) |
Definition at line 122 of file txtfly.cxx.
Referenced by CalcBoundRect().
SwContourCache::~SwContourCache | ( | ) |
Definition at line 127 of file txtfly.cxx.
|
static |
Computes the rectangle that will cover the object in the given line.
For non contour-flow objects, this is simply the overlap area of BoundRect (including spacing), and the line, for contour-flow, the tools::PolyPolygon of the object gets traversed
Definition at line 158 of file txtfly.cxx.
References ContourRect(), SwAnchoredObject::DynCastFlyFrame(), SwAnchoredObject::GetDrawObj(), SwAnchoredObject::GetFrameFormat(), SwAnchoredObject::GetObjRectWithSpaces(), SwFormat::GetSurround(), SwFormatSurround::IsContour(), SwFrame::IsNoTextFrame(), SwLayoutFrame::Lower(), SwRect::Overlaps(), pContourCache, SwFlyFreeFrame::supportsAutoContour(), SwContourCache(), and SwRect::Width().
Referenced by SwTextFly::AnchoredObjToRect(), SwTextFly::CalcLeftMargin(), and SwTextFly::CalcRightMargin().
void SwContourCache::ClrObject | ( | sal_uInt16 | nPos | ) |
Definition at line 131 of file txtfly.cxx.
References mnPointCount, mvItems, and nPos.
Referenced by ClrContourCache().
|
private |
Definition at line 206 of file txtfly.cxx.
References basegfx::B2DPolyPolygon::append(), basegfx::B2DPolyPolygon::clear(), DynCastE3dObject(), tools::PolyPolygon::getB2DPolyPolygon(), SwRectFnSet::GetBottom(), GetCount(), SwRectFnSet::GetHeight(), SvxLRSpaceItem::GetLeft(), SvxULSpaceItem::GetLower(), SwFormat::GetLRSpace(), SvxLRSpaceItem::GetRight(), SwFormat::GetSurround(), SwRectFnSet::GetTop(), SwFormat::GetULSpace(), SvxULSpaceItem::GetUpper(), SwFormatSurround::IsOutside(), SwFrame::IsVertical(), min(), mnPointCount, mvItems, nCount, nPos, POLY_CNT, POLY_MAX, POLY_MIN, SwRectFnSet::SetLeft(), SwRectFnSet::SetRight(), SwRectFnSet::SetTopAndHeight(), SdrObject::TakeContour(), and SdrObject::TakeXorPoly().
Referenced by CalcBoundRect().
|
inline |
Definition at line 72 of file txtfly.hxx.
References mvItems.
Referenced by ClrContourCache(), and ContourRect().
|
inline |
Definition at line 71 of file txtfly.hxx.
Referenced by ClrContourCache().
|
friend |
Definition at line 148 of file txtfly.cxx.
|
private |
Definition at line 63 of file txtfly.hxx.
Referenced by ClrObject(), and ContourRect().
|
private |
Definition at line 62 of file txtfly.hxx.
Referenced by ClrObject(), ContourRect(), GetCount(), and GetObject().