File indexing completed on 2024-06-16 04:17:57
0001 /* 0002 * kis_tool_polyline.h - part of Krita 0003 * 0004 * SPDX-FileCopyrightText: 2004 Michael Thaler <michael Thaler@physik.tu-muenchen.de> 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #ifndef KIS_TOOL_POLYLINE_H_ 0010 #define KIS_TOOL_POLYLINE_H_ 0011 0012 #include "kis_tool_polyline_base.h" 0013 //#include "flake/kis_node_shape.h" 0014 #include <kis_icon.h> 0015 0016 class KisToolPolyline : public KisToolPolylineBase 0017 { 0018 0019 Q_OBJECT 0020 0021 public: 0022 KisToolPolyline(KoCanvasBase * canvas); 0023 ~KisToolPolyline() override; 0024 0025 protected: 0026 QWidget* createOptionWidget() override; 0027 void finishPolyline(const QVector<QPointF>& points) override; 0028 0029 protected Q_SLOTS: 0030 void resetCursorStyle() override; 0031 }; 0032 0033 0034 #include "KoToolFactoryBase.h" 0035 0036 class KisToolPolylineFactory : public KisToolPolyLineFactoryBase 0037 { 0038 0039 public: 0040 KisToolPolylineFactory() 0041 : KisToolPolyLineFactoryBase("KisToolPolyline") { 0042 setToolTip(i18n("Polyline Tool: Shift-mouseclick ends the polyline.")); 0043 setSection(ToolBoxSection::Shape); 0044 setActivationShapeId(KRITA_TOOL_ACTIVATION_ID); 0045 setIconName(koIconNameCStr("polyline")); 0046 setPriority(5); 0047 } 0048 0049 ~KisToolPolylineFactory() override {} 0050 0051 KoToolBase * createTool(KoCanvasBase *canvas) override { 0052 return new KisToolPolyline(canvas); 0053 } 0054 0055 }; 0056 0057 0058 #endif //__KIS_TOOL_POLYLINE_H__