Krita
6 #include "TransformMask.h"
7 #include <kis_transform_mask.h>
9 #include <kis_transform_mask_params_interface.h>
10 #include <QDomDocument>
13 #include <kis_transform_mask_params_factory_registry.h>
14 #include <commands_new/KisSimpleModifyTransformMaskCommand.h>
15 #include <kis_processing_applicator.h>
18 #include "kis_transform_mask_params_interface.h"
21 TransformMask::TransformMask(KisImageSP image,
QString name,
QObject *parent) :
22 Node(image, new KisTransformMask(image,
name), parent)
27 TransformMask::TransformMask(KisImageSP image, KisTransformMaskSP mask,
QObject *parent):
28 Node(image, mask, parent)
33 TransformMask::~TransformMask()
40 return "transformmask";
43 QTransform TransformMask::finalAffineTransform()
const
46 KisTransformMask *mask =
dynamic_cast<KisTransformMask*
>(this->node().data());
47 KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(mask,
QTransform());
49 affineTransformation = mask->transformParams()->finalAffineTransform();
51 return affineTransformation;
56 KisTransformMaskSP mask = qobject_cast<KisTransformMask*>(this->node().data());
57 KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(mask,
QString());
66 mask->transformParams()->toXML(&data);
77 KisTransformMaskSP mask = qobject_cast<KisTransformMask*>(this->node().data());
78 KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(mask,
false);
90 KisTransformMaskParamsInterfaceSP params = KisTransformMaskParamsFactoryRegistry::instance()->createParams(main.
attribute(
"id"), data);
96 KUndo2Command *cmd =
new KUndo2Command();
98 if (mask->isAnimated()) {
99 KisAnimatedTransformParamsInterface* animInterface =
dynamic_cast<KisAnimatedTransformParamsInterface*
>(mask->transformParams().data());
100 KIS_ASSERT(animInterface);
101 animInterface->initializeKeyframes(mask, params, cmd);
103 cmd =
new KisSimpleModifyTransformMaskCommand(mask, mask->transformParams(), params);
106 KisProcessingApplicator::runSingleCommandStroke(this->node()->image(), cmd);
QString toString(int indent) const const
bool setContent(const QByteArray &data, bool namespaceProcessing, QString *errorMsg, int *errorLine, int *errorColumn)
QDomElement createElement(const QString &tagName)
void setAttribute(const QString &name, const QString &value)
QDomElement documentElement() const const
QDomElement firstChildElement(const QString &tagName) const const
bool hasAttribute(const QString &name) const const
Node represents a layer or mask in a Krita image's Node hierarchy.
QDomNode appendChild(const QDomNode &newChild)
const char * name(StandardAction id)
QString attribute(const QString &name, const QString &defValue) const const
bool isElement() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sun Oct 1 2023 03:58:42 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.