15#include <kpluginfactory.h>
69 if (document->savingImage()->dynamicPropertyNames().contains(
"brushspacing")) {
70 exportOptions.
spacing = document->savingImage()->property(
"brushspacing").toFloat();
73 exportOptions.
spacing = configuration->getInt(
"spacing");
75 if (!configuration->getString(
"name").isEmpty()) {
76 exportOptions.
name = configuration->getString(
"name");
79 exportOptions.
name = document->savingImage()->objectName();
82 exportOptions.
mask = configuration->getBool(
"mask");
83 exportOptions.
brushStyle = configuration->getInt(
"brushStyle");
84 exportOptions.
dimensions = configuration->getInt(
"dimensions");
87 exportOptions.
selectionModes[i] = configuration->getInt(
"selectionMode" + QString::number(i));
88 exportOptions.
ranks[i] = configuration->getInt(
"rank" + QString::number(i));
92 if (
mimeType() ==
"image/x-gimp-brush") {
95 else if (
mimeType() ==
"image/x-gimp-brush-animated") {
102 qApp->processEvents();
104 QRect rc = document->savingImage()->bounds();
140 parasite.
ncells = devices.at(0).count();
145 parasite.
rank[i] = exportOptions.
ranks[i];
147 maxRanks += exportOptions.
ranks[i];
150 if (maxRanks > layers.count()) {
156 pipeBrush->
setDevices(devices, rc.width(), rc.height());
159 if (exportOptions.
mask) {
164 brush->
initFromPaintDev(document->savingImage()->projection(),0,0,rc.width(), rc.height());
185 cfg->setProperty(
"spacing", 1.0);
186 cfg->setProperty(
"name",
"");
187 cfg->setProperty(
"mask",
true);
188 cfg->setProperty(
"brushStyle", 0);
189 cfg->setProperty(
"dimensions", 1);
192 cfg->setProperty(
"selectionMode" + QString::number(i), 2);
193 cfg->getInt(
"rank" + QString::number(i), 0);
201 if (to ==
"image/x-gimp-brush") {
202 wdg->groupBox->setVisible(
false);
203 wdg->animStyleGroup->setVisible(
false);
205 else if (to ==
"image/x-gimp-brush-animated") {
206 wdg->groupBox->setVisible(
true);
207 wdg->animStyleGroup->setVisible(
true);
212 wdg->nameLineEdit->setText(fileLocation.completeBaseName());
219 supportedColorModels << QPair<KoID, KoID>()
223 if (
mimeType() ==
"image/x-gimp-brush-animated") {
230#include "kis_brush_export.moc"
VertexDescriptor get(PredecessorMap const &m, VertexDescriptor v)
QList< QString > QStringList
const KoID GrayAColorModelID("GRAYA", ki18n("Grayscale/Alpha"))
const KoID Integer8BitsColorDepthID("U8", ki18n("8-bit integer/channel"))
const KoID RGBAColorModelID("RGBA", ki18n("RGB/Alpha"))
~KisBrushExport() override
KisImportExportErrorCode convert(KisDocument *document, QIODevice *io, KisPropertiesConfigurationSP configuration=0) override
KisConfigWidget * createConfigurationWidget(QWidget *parent, const QByteArray &from="", const QByteArray &to="") const override
createConfigurationWidget creates a widget that can be used to define the settings for a given import...
KisPropertiesConfigurationSP defaultConfiguration(const QByteArray &from="", const QByteArray &to="") const override
defaultConfiguration defines the default settings for the given import export filter
KisBrushExport(QObject *parent, const QVariantList &)
void initializeCapabilities() override
virtual void setSpacing(double spacing)
void setWidth(qint32 width)
void setHeight(qint32 height)
virtual void setBrushApplication(enumBrushApplication brushApplication)
static KisExportCheckRegistry * instance()
void setBrushTipImage(const QImage &image) override
bool initFromPaintDev(KisPaintDeviceSP image, int x, int y, int w, int h)
bool saveToDevice(QIODevice *dev) const override
void setDevices(QVector< QVector< KisPaintDevice * > > devices, int w, int h)
void setParasite(const KisPipeBrushParasite ¶site)
The base class for import and export filters.
void addSupportedColorModels(QList< QPair< KoID, KoID > > supportedColorModels, const QString &name, KisExportCheckBase::Level level=KisExportCheckBase::PARTIALLY)
void addCapability(KisExportCheckBase *capability)
QByteArray mimeType() const
KisParasite::SelectionMode selection[MaxDim]
void setBrushesCount()
Initializes the brushesCount helper.
void setProperty(const QString &name, const QVariant &value)
K_PLUGIN_FACTORY_WITH_JSON(KritaASCCDLFactory, "kritaasccdl.json", registerPlugin< KritaASCCDL >();) KritaASCCDL
virtual KisPaintDeviceSP projection() const =0
qint32 selectionModes[KisPipeBrushParasite::MaxDim]
qint32 ranks[KisPipeBrushParasite::MaxDim]
void setName(const QString &name)
void setImage(const QImage &image)