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 nResize
 
sal_uInt16 nPoints
 

Detailed Description

Definition at line 29 of file xpolyimp.hxx.

Constructor & Destructor Documentation

◆ ImpXPolygon() [1/2]

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

Definition at line 36 of file _xpoly.cxx.

References Resize().

◆ ImpXPolygon() [2/2]

ImpXPolygon::ImpXPolygon ( const ImpXPolygon rImpXPoly)

Definition at line 46 of file _xpoly.cxx.

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

◆ ~ImpXPolygon()

ImpXPolygon::~ImpXPolygon ( )

Definition at line 63 of file _xpoly.cxx.

References bDeleteOldPoints, pOldPointAry, and pPointAry.

Member Function Documentation

◆ CheckPointDelete()

void ImpXPolygon::CheckPointDelete ( ) const

Definition at line 188 of file _xpoly.cxx.

References bDeleteOldPoints, and pOldPointAry.

Referenced by ImpXPolygon(), InsertSpace(), Remove(), and Resize().

◆ InsertSpace()

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

Definition at line 143 of file _xpoly.cxx.

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

◆ operator==()

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

Definition at line 73 of file _xpoly.cxx.

References nPoints, pFlagAry, and pPointAry.

◆ Remove()

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

Definition at line 168 of file _xpoly.cxx.

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

◆ Resize()

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 89 of file _xpoly.cxx.

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

Referenced by ImpXPolygon(), and InsertSpace().

Member Data Documentation

◆ bDeleteOldPoints

bool ImpXPolygon::bDeleteOldPoints

Definition at line 36 of file xpolyimp.hxx.

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

◆ nPoints

sal_uInt16 ImpXPolygon::nPoints

Definition at line 39 of file xpolyimp.hxx.

Referenced by ImpXPolygon(), InsertSpace(), operator==(), Remove(), and Resize().

◆ nResize

sal_uInt16 ImpXPolygon::nResize

Definition at line 38 of file xpolyimp.hxx.

Referenced by Resize().

◆ nSize

sal_uInt16 ImpXPolygon::nSize

Definition at line 37 of file xpolyimp.hxx.

Referenced by ImpXPolygon(), InsertSpace(), and Resize().

◆ pFlagAry

std::unique_ptr<PolyFlags[]> ImpXPolygon::pFlagAry

Definition at line 34 of file xpolyimp.hxx.

Referenced by ImpXPolygon(), InsertSpace(), operator==(), Remove(), and Resize().

◆ pOldPointAry

Point* ImpXPolygon::pOldPointAry

Definition at line 35 of file xpolyimp.hxx.

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

◆ pPointAry

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

Definition at line 32 of file xpolyimp.hxx.

Referenced by ImpXPolygon(), InsertSpace(), operator==(), Remove(), Resize(), and ~ImpXPolygon().


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