Warning, file /graphics/krita/plugins/tools/tool_enclose_and_fill/subtools/KisLassoEnclosingProducer.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 * KDE. Krita Project. 0003 * 0004 * SPDX-FileCopyrightText: 2022 Deif Lou <ginoba@gmail.com> 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #ifndef KISLASSOENCLOSINGPRODUCER 0010 #define KISLASSOENCLOSINGPRODUCER 0011 0012 #include <kis_pixel_selection.h> 0013 #include <KisToolOutlineBase.h> 0014 0015 #include "KisDynamicDelegatedTool.h" 0016 0017 class KisLassoEnclosingProducer : public KisDynamicDelegateTool<KisToolOutlineBase> 0018 { 0019 Q_OBJECT 0020 0021 public: 0022 KisLassoEnclosingProducer(KoCanvasBase *canvas); 0023 ~KisLassoEnclosingProducer() override; 0024 0025 bool hasUserInteractionRunning() const; 0026 0027 protected: 0028 void finishOutline(const QVector<QPointF> &points) override; 0029 void beginShape() override; 0030 void endShape() override; 0031 0032 Q_SIGNALS: 0033 void enclosingMaskProduced(KisPixelSelectionSP enclosingMask); 0034 0035 private: 0036 bool m_hasUserInteractionRunning {false}; 0037 0038 protected Q_SLOTS: 0039 void resetCursorStyle() override; 0040 }; 0041 0042 #endif