LibreOffice Module svx (master)  1
Public Member Functions | Public Attributes | List of all members
ImpXPolygon Class Reference

#include <xpolyimp.hxx>

Collaboration diagram for ImpXPolygon:
[legend]

Public Member Functions

 ImpXPolygon (sal_uInt16 nInitSize, sal_uInt16 nResize=16)
 
 ImpXPolygon (const ImpXPolygon &rImpXPoly)
 
 ~ImpXPolygon ()
 
bool operator== (const ImpXPolygon &rImpXPoly) const
 
void CheckPointDelete () const
 
void Resize (sal_uInt16 nNewSize, bool bDeletePoints=true)
 Change polygon size. More...
 
void InsertSpace (sal_uInt16 nPos, sal_uInt16 nCount)
 
void Remove (sal_uInt16 nPos, sal_uInt16 nCount)
 

Public Attributes

std::unique_ptr< Point[]> pPointAry
 
std::unique_ptr< PolyFlags[]> pFlagAry
 
PointpOldPointAry
 
bool bDeleteOldPoints
 
sal_uInt16 nSize
 
sal_uInt16 const nResize
 
sal_uInt16 nPoints
 

Detailed Description

Definition at line 29 of file xpolyimp.hxx.

Constructor & Destructor Documentation

ImpXPolygon::ImpXPolygon ( sal_uInt16  nInitSize,
sal_uInt16  nResize = 16 
)

Definition at line 41 of file _xpoly.cxx.

References Resize().

ImpXPolygon::ImpXPolygon ( const ImpXPolygon rImpXPoly)

Definition at line 51 of file _xpoly.cxx.

References CheckPointDelete(), nPoints, nSize, pFlagAry, pPointAry, and Resize().

ImpXPolygon::~ImpXPolygon ( )

Definition at line 68 of file _xpoly.cxx.

References bDeleteOldPoints, pOldPointAry, and pPointAry.

Member Function Documentation

void ImpXPolygon::CheckPointDelete ( ) const
void ImpXPolygon::InsertSpace ( sal_uInt16  nPos,
sal_uInt16  nCount 
)

Definition at line 148 of file _xpoly.cxx.

References CheckPointDelete(), nPoints, nSize, pFlagAry, pPointAry, and Resize().

Referenced by XPolygon::Insert().

bool ImpXPolygon::operator== ( const ImpXPolygon rImpXPoly) const

Definition at line 78 of file _xpoly.cxx.

References nPoints, pFlagAry, and pPointAry.

void ImpXPolygon::Remove ( sal_uInt16  nPos,
sal_uInt16  nCount 
)

Definition at line 173 of file _xpoly.cxx.

References CheckPointDelete(), nPoints, pFlagAry, and pPointAry.

Referenced by XPolygon::Remove().

void ImpXPolygon::Resize ( sal_uInt16  nNewSize,
bool  bDeletePoints = true 
)

Change polygon size.

Parameters
nNewSizethe new size of the polygon
bDeletePointsif FALSE, do not delete the point array directly but wait for the next call before doing so. This prevents errors with XPoly[n] = XPoly[0] where a resize might destroy the right side point array too early.

Definition at line 94 of file _xpoly.cxx.

References bDeleteOldPoints, CheckPointDelete(), DBG_ASSERT, nPoints, nResize, nSize, pFlagAry, pOldPointAry, and pPointAry.

Referenced by ImpXPolygon(), InsertSpace(), XPolygon::operator[](), and XPolygon::SetPointCount().

Member Data Documentation

bool ImpXPolygon::bDeleteOldPoints

Definition at line 36 of file xpolyimp.hxx.

Referenced by CheckPointDelete(), Resize(), and ~ImpXPolygon().

sal_uInt16 ImpXPolygon::nPoints
sal_uInt16 const ImpXPolygon::nResize

Definition at line 38 of file xpolyimp.hxx.

Referenced by XPolygon::operator[](), and Resize().

sal_uInt16 ImpXPolygon::nSize
std::unique_ptr<PolyFlags[]> ImpXPolygon::pFlagAry
Point* ImpXPolygon::pOldPointAry

Definition at line 35 of file xpolyimp.hxx.

Referenced by CheckPointDelete(), Resize(), and ~ImpXPolygon().

std::unique_ptr<Point[]> ImpXPolygon::pPointAry

The documentation for this class was generated from the following files: