16#include <QDomDocument>
29 m_isOffsetNotUptodate(false),
30 m_duringPaintingStroke(false)
60 bool ignoreEvent =
true;
62 if (modifiers & Qt::ControlModifier) {
86 bool ignoreEvent =
true;
116 rootElt.setAttribute(
"OffsetX", QString::number(
m_offset.x()));
117 rootElt.setAttribute(
"OffsetY", QString::number(
m_offset.y()));
149 QRectF rect2 = copy.boundingRect();
154 if (shouldStayInOrigin) {
163 qreal dx = rect2.width() / 4.0;
164 qreal dy = rect2.height() / 4.0;
165 rect2.adjust(dx, dy, -dx, -dy);
167 QPainterPath crossIcon;
169 crossIcon.moveTo(rect2.topLeft());
170 crossIcon.lineTo(rect2.bottomRight());
172 crossIcon.moveTo(rect2.topRight());
173 crossIcon.lineTo(rect2.bottomLeft());
175 path.addPath(crossIcon);
193 if (props.isEmpty()) {
201 optionData.
read(prop->settings().data());
203 prop->setValue(optionData.
healing);
208 optionData.
read(prop->settings().data());
209 optionData.
healing = prop->value().toBool();
210 optionData.
write(prop->settings().data());
213 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
214 prop->requestReadValue();
224 optionData.
read(prop->settings().data());
231 optionData.
read(prop->settings().data());
233 optionData.
write(prop->settings().data());
236 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
237 prop->requestReadValue();
const QString DUPLICATE_RESET_SOURCE_POINT
const QString DUPLICATE_MOVE_SOURCE_POINT
const QString COMPOSITE_COPY
KisPaintOpSettingsSP clone() const override
KisOptimizedBrushOutline brushOutlineImpl(const KisPaintInformation &info, const OutlineMode &mode, qreal alignForZoom, qreal additionalScale)
void setWriteCallback(Callback func)
void setReadCallback(Callback func)
void fromXML(const QDomElement &elt) override
QList< KisUniformPaintOpPropertyWSP > m_uniformProperties
KisDuplicateOpSettings(KisResourcesInterfaceSP resourcesInterface)
bool mouseReleaseEvent() override
bool m_isOffsetNotUptodate
bool mousePressEvent(const KisPaintInformation &pos, Qt::KeyboardModifiers modifiers, KisNodeWSP currentNode) override
KisNodeWSP sourceNode() const
KisPaintOpSettingsSP clone() const override
QString indirectPaintingCompositeOp() const override
bool paintIncremental() override
Reimplemented.
bool m_duringPaintingStroke
KisOptimizedBrushOutline brushOutline(const KisPaintInformation &info, const OutlineMode &mode, qreal alignForZoom) override
~KisDuplicateOpSettings() override
QSharedPointer< T > toQShared(T *ptr)
Container< QSharedPointer< T > > listWeakToStrong(const Container< QWeakPointer< T > > &container, bool allOrNothing=true)
double toDouble(const QString &str, bool *ok=nullptr)
bool read(const KisPropertiesConfiguration *setting)
void write(KisPropertiesConfiguration *setting) const
QList< KisUniformPaintOpPropertyWSP > uniformProperties
bool fromXML(const QString &xml, bool clear=true) override
bool getBool(const QString &name, bool def=false) const
QString toXML() const override