File indexing completed on 2025-02-23 04:09:02
0001 /* 0002 * SPDX-FileCopyrightText: 2016 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef __KIS_SNAP_LINE_STRATEGY_H 0008 #define __KIS_SNAP_LINE_STRATEGY_H 0009 0010 #include <QScopedPointer> 0011 0012 #include "KoSnapStrategy.h" 0013 0014 0015 class KisSnapLineStrategy : public KoSnapStrategy 0016 { 0017 public: 0018 KisSnapLineStrategy(KoSnapGuide::Strategy type = KoSnapGuide::CustomSnapping); 0019 ~KisSnapLineStrategy() override; 0020 0021 bool snap(const QPointF &mousePosition, KoSnapProxy * proxy, qreal maxSnapDistance) override; 0022 QPainterPath decoration(const KoViewConverter &converter) const override; 0023 0024 void addLine(Qt::Orientation orientation, qreal pos); 0025 0026 void setHorizontalLines(const QList<qreal> &lines); 0027 void setVerticalLines(const QList<qreal> &lines); 0028 0029 private: 0030 struct Private; 0031 const QScopedPointer<Private> m_d; 0032 }; 0033 0034 #endif /* __KIS_SNAP_LINE_STRATEGY_H */