diff options
Diffstat (limited to 'svx/source/svdraw/svdocirc.cxx')
-rw-r--r-- | svx/source/svdraw/svdocirc.cxx | 43 |
1 files changed, 33 insertions, 10 deletions
diff --git a/svx/source/svdraw/svdocirc.cxx b/svx/source/svdraw/svdocirc.cxx index dc87f9a5de9a..1dc049f07d17 100644 --- a/svx/source/svdraw/svdocirc.cxx +++ b/svx/source/svdraw/svdocirc.cxx @@ -104,8 +104,10 @@ sdr::contact::ViewContact* SdrCircObj::CreateObjectSpecificViewContact() return new sdr::contact::ViewContactOfSdrCircObj(*this); } - -SdrCircObj::SdrCircObj(SdrObjKind eNewKind) +SdrCircObj::SdrCircObj( + SdrModel& rSdrModel, + SdrObjKind eNewKind) +: SdrRectObj(rSdrModel) { nStartAngle=0; nEndAngle=36000; @@ -113,8 +115,11 @@ SdrCircObj::SdrCircObj(SdrObjKind eNewKind) bClosedObj=eNewKind!=OBJ_CARC; } -SdrCircObj::SdrCircObj(SdrObjKind eNewKind, const tools::Rectangle& rRect): - SdrRectObj(rRect) +SdrCircObj::SdrCircObj( + SdrModel& rSdrModel, + SdrObjKind eNewKind, + const tools::Rectangle& rRect) +: SdrRectObj(rSdrModel, rRect) { nStartAngle=0; nEndAngle=36000; @@ -122,8 +127,13 @@ SdrCircObj::SdrCircObj(SdrObjKind eNewKind, const tools::Rectangle& rRect): bClosedObj=eNewKind!=OBJ_CARC; } -SdrCircObj::SdrCircObj(SdrObjKind eNewKind, const tools::Rectangle& rRect, long nNewStartWink, long nNewEndWink): - SdrRectObj(rRect) +SdrCircObj::SdrCircObj( + SdrModel& rSdrModel, + SdrObjKind eNewKind, + const tools::Rectangle& rRect, + long nNewStartWink, + long nNewEndWink) +: SdrRectObj(rSdrModel, rRect) { long nAngleDif=nNewEndWink-nNewStartWink; nStartAngle=NormAngle360(nNewStartWink); @@ -338,9 +348,22 @@ OUString SdrCircObj::TakeObjNamePlural() const return ImpGetResStr(pID); } -SdrCircObj* SdrCircObj::Clone() const +SdrCircObj* SdrCircObj::Clone(SdrModel* pTargetModel) const +{ + return CloneHelper< SdrCircObj >(pTargetModel); +} + +SdrCircObj& SdrCircObj::operator=(const SdrCircObj& rObj) { - return CloneHelper< SdrCircObj >(); + if( this == &rObj ) + return *this; + SdrRectObj::operator=(rObj); + + meCircleKind = rObj.meCircleKind; + nStartAngle = rObj.nStartAngle; + nEndAngle = rObj.nEndAngle; + + return *this; } basegfx::B2DPolyPolygon SdrCircObj::TakeXorPoly() const @@ -576,7 +599,7 @@ OUString SdrCircObj::getSpecialDragComment(const SdrDragStat& rDrag) const nAngle = pU->nEnd; } - aBuf.append(GetAngleStr(nAngle)); + aBuf.append(SdrModel::GetAngleString(nAngle)); aBuf.append(')'); } @@ -594,7 +617,7 @@ OUString SdrCircObj::getSpecialDragComment(const SdrDragStat& rDrag) const ImpTakeDescriptionStr(STR_DragCircAngle, aStr); OUStringBuffer aBuf(aStr); aBuf.append(" ("); - aBuf.append(GetAngleStr(nAngle)); + aBuf.append(SdrModel::GetAngleString(nAngle)); aBuf.append(')'); return aBuf.makeStringAndClear(); |