36 #define ShellClass_SwBezierShell
38 #include <swslots.hxx>
44 GetStaticInterface()->RegisterPopupMenu(
"draw");
46 GetStaticInterface()->RegisterObjectBar(
SFX_OBJECTBAR_OBJECT, SfxVisibilityFlags::Invisible, ToolbarId::Bezier_Toolbox_Sw);
67 sal_uInt16 nSlotId = rReq.
GetSlot();
90 GetView().AttrChangedNotify(
nullptr);
103 GetView().AttrChangedNotify(
nullptr);
109 GetView().AttrChangedNotify(
nullptr);
114 case SID_BEZIER_MOVE:
115 case SID_BEZIER_INSERT:
118 static sal_uInt16 aInva[] =
128 case SID_BEZIER_DELETE:
129 case SID_BEZIER_CUTLINE:
130 case SID_BEZIER_CONVERT:
131 case SID_BEZIER_EDGE:
132 case SID_BEZIER_SMOOTH:
133 case SID_BEZIER_SYMMTR:
134 case SID_BEZIER_CLOSE:
135 case SID_BEZIER_ELIMINATE_POINTS:
143 case SID_BEZIER_DELETE:
147 case SID_BEZIER_CUTLINE:
154 case SID_BEZIER_CONVERT:
160 case SID_BEZIER_EDGE:
161 case SID_BEZIER_SMOOTH:
162 case SID_BEZIER_SYMMTR:
168 case SID_BEZIER_EDGE: eKind = SdrPathSmoothKind::Angular;
break;
169 case SID_BEZIER_SMOOTH: eKind = SdrPathSmoothKind::Asymmetric;
break;
170 case SID_BEZIER_SYMMTR: eKind = SdrPathSmoothKind::Symmetric;
break;
174 if (eKind != eSmooth)
178 static sal_uInt16 aInva[] =
190 case SID_BEZIER_CLOSE:
199 case SID_BEZIER_ELIMINATE_POINTS:
228 case SID_BEZIER_MOVE:
229 case SID_BEZIER_INSERT:
237 case SID_BEZIER_CUTLINE:
244 case SID_BEZIER_DELETE:
251 case SID_BEZIER_CONVERT:
261 case SdrPathSegmentKind::DontCare: rSet.
InvalidateItem(SID_BEZIER_CONVERT);
break;
262 case SdrPathSegmentKind::Line : rSet.
Put(
SfxBoolItem(SID_BEZIER_CONVERT,
false));
break;
263 case SdrPathSegmentKind::Curve : rSet.
Put(
SfxBoolItem(SID_BEZIER_CONVERT,
true));
break;
269 case SID_BEZIER_EDGE:
270 case SID_BEZIER_SMOOTH:
271 case SID_BEZIER_SYMMTR:
277 bool bEnable =
false;
280 case SdrPathSmoothKind::DontCare :
282 case SdrPathSmoothKind::Angular :
283 bEnable = nWhich == SID_BEZIER_EDGE;
285 case SdrPathSmoothKind::Asymmetric:
286 bEnable = nWhich == SID_BEZIER_SMOOTH;
288 case SdrPathSmoothKind::Symmetric :
289 bEnable = nWhich == SID_BEZIER_SYMMTR;
296 case SID_BEZIER_CLOSE:
306 case SdrObjClosedKind::DontCare: rSet.
InvalidateItem(SID_BEZIER_CLOSE);
break;
307 case SdrObjClosedKind::Open : rSet.
Put(
SfxBoolItem(SID_BEZIER_CLOSE,
false));
break;
308 case SdrObjClosedKind::Closed : rSet.
Put(
SfxBoolItem(SID_BEZIER_CLOSE,
true));
break;
314 case SID_BEZIER_ELIMINATE_POINTS:
SfxViewFrame * GetViewFrame() const
bool IsEliminatePolyPoints() const
#define SFX_IMPL_INTERFACE(Class, SuperClass)
void DeleteMarkedPoints() override
SfxDispatcher * GetDispatcher()
void CheckUnboundObjects()
Temporary work around for bug.
SdrPathSegmentKind GetMarkedSegmentsKind() const override
void RipUpAtMarkedPoints() override
void InvalidateItem(sal_uInt16 nWhich)
SdrMark * GetMark(size_t nNum) const
void SetMarkedSegmentsKind(SdrPathSegmentKind eKind) override
const SfxItemSet * GetArgs() const
void Invalidate(sal_uInt16 nId)
void GetState(SfxItemSet &)
sal_uInt16 GetBezierMode() const
void NoEdit(bool bHideCursor=true)
Used by the UI to modify the document model.
SdrPathSmoothKind GetMarkedPointsSmooth() const override
const SwView & GetView() const
virtual void SetChanged(bool bFlg=true)
bool IsDeleteMarkedPointsPossible() const override
SdrObjClosedKind GetMarkedObjectsClosedState() const override
void SetEliminatePolyPoints(bool bOn)
virtual bool HasMarkedPoints() const
SdrObject * GetMarkedSdrObj() const
bool HasSelection() const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
SfxBindings & GetBindings()
const SdrMarkList & GetMarkedObjectList() const
void SetMarkedPointsSmooth(SdrPathSmoothKind eKind) override
void SetName(const OUString &rName)
SwDrawBase * GetDrawFuncPtr() const
#define SFX_OBJECTBAR_OBJECT
virtual bool IsAction() const override
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
sal_uInt16 GetSlot() const
static const OUString & GetContextName(const Context eContext)
void DisableItem(sal_uInt16 nWhich)
bool IsOpenCloseMarkedObjectsPossible() const override
bool IsSetMarkedSegmentsKindPossible() const override
bool IsRipUpAtMarkedPointsPossible() const override
void Execute(SfxRequest const &)
size_t IsObjSelected() const
void SetEliminatePolyPointLimitAngle(Degree100 nAngle)
void SetBezierMode(sal_uInt16 eBezMode)
const SfxPoolItem * Execute(sal_uInt16 nSlot, SfxCallMode nCall=SfxCallMode::SLOT, const SfxPoolItem **pArgs=nullptr, sal_uInt16 nModi=0, const SfxPoolItem **pInternalArgs=nullptr)
bool IsSetMarkedPointsSmoothPossible() const override
bool IsDrawCreate() const
SdrModel * GetModel() const
void SetContextName(const OUString &rsContextName)
bool IsSelFrameMode() const
SwBezierShell(SwView &rView)