File indexing completed on 2024-06-16 04:17:45
0001 /* 0002 * kis_tool_rectangle.h - part of KImageShop^WKrayon^WKrita 0003 * 0004 * SPDX-FileCopyrightText: 1999 Michael Koch <koch@kde.org> 0005 * SPDX-FileCopyrightText: 2002 Patrick Julien <freak@codepimps.org> 0006 * SPDX-FileCopyrightText: 2004 Boudewijn Rempt <boud@valdyas.org> 0007 * SPDX-FileCopyrightText: 2004 Clarence Dang <dang@kde.org> 0008 * 0009 * SPDX-License-Identifier: GPL-2.0-or-later 0010 */ 0011 0012 #ifndef __KIS_TOOL_RECTANGLE_H__ 0013 #define __KIS_TOOL_RECTANGLE_H__ 0014 0015 #include "kis_tool_shape.h" 0016 #include "kis_types.h" 0017 #include "KisToolPaintFactoryBase.h" 0018 #include "flake/kis_node_shape.h" 0019 #include <kis_tool_rectangle_base.h> 0020 #include <kis_icon.h> 0021 0022 0023 class QRect; 0024 0025 class KoCanvasBase; 0026 0027 class KisToolRectangle : public KisToolRectangleBase 0028 { 0029 Q_OBJECT 0030 0031 public: 0032 KisToolRectangle(KoCanvasBase * canvas); 0033 ~KisToolRectangle() override; 0034 0035 protected: 0036 void finishRect(const QRectF& rect, qreal roundCornersX, qreal roundCornersY) override; 0037 0038 protected Q_SLOTS: 0039 void resetCursorStyle() override; 0040 }; 0041 0042 class KisToolRectangleFactory : public KisToolPaintFactoryBase 0043 { 0044 0045 public: 0046 KisToolRectangleFactory() 0047 : KisToolPaintFactoryBase("KritaShape/KisToolRectangle") { 0048 setToolTip(i18n("Rectangle Tool")); 0049 0050 setSection(ToolBoxSection::Shape); 0051 setActivationShapeId(KRITA_TOOL_ACTIVATION_ID); 0052 setIconName(koIconNameCStr("krita_tool_rectangle")); 0053 //setShortcut( Qt::Key_F6 ); 0054 setPriority(2); 0055 } 0056 0057 ~KisToolRectangleFactory() override {} 0058 0059 KoToolBase * createTool(KoCanvasBase *canvas) override { 0060 return new KisToolRectangle(canvas); 0061 } 0062 0063 }; 0064 0065 0066 #endif // __KIS_TOOL_RECTANGLE_H__ 0067