summaryrefslogtreecommitdiff
path: root/svx/inc/xpolyimp.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/inc/xpolyimp.hxx')
-rw-r--r--svx/inc/xpolyimp.hxx27
1 files changed, 7 insertions, 20 deletions
diff --git a/svx/inc/xpolyimp.hxx b/svx/inc/xpolyimp.hxx
index fd0fe2905d8b..76f4ae24c87f 100644
--- a/svx/inc/xpolyimp.hxx
+++ b/svx/inc/xpolyimp.hxx
@@ -29,26 +29,13 @@ class Point;
class ImpXPolygon
{
public:
- Point* pPointAry;
- std::unique_ptr<PolyFlags[]>
- pFlagAry;
- Point* pOldPointAry;
- bool bDeleteOldPoints;
- sal_uInt16 nSize;
- sal_uInt16 nResize;
- sal_uInt16 nPoints;
-
- 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 );
- void InsertSpace( sal_uInt16 nPos, sal_uInt16 nCount );
- void Remove( sal_uInt16 nPos, sal_uInt16 nCount );
+ std::vector<std::pair<Point, PolyFlags>> mvPointsAndFlags;
+ ImpXPolygon() = default;
+ ImpXPolygon(sal_uInt16 nSize)
+ {
+ mvPointsAndFlags.resize(nSize);
+ }
+ bool operator==(ImpXPolygon const & rOther) const { return mvPointsAndFlags == rOther.mvPointsAndFlags; }
};
class ImpXPolyPolygon