10#include <QGlobalStatic>
11#include <klocalizedstring.h>
31 Q_FOREACH (
const QString &
id,
keys()) {
39 if (!s_instance.exists()) {
53 QString brushType = element.attribute(
"type");
55 if (brushType.isEmpty()) {
64 return factory->
createBrush(element, resourcesInterface);
70 QDomElement element = doc.createElement(
"brush_definition");
71 toXML(doc, element, data);
77 QString brushType = element.attribute(
"type");
79 if (brushType.isEmpty()) {
97 brushType =
"auto_brush";
99 brushType =
"kis_text_brush";
109 factory->
toXML(doc, element, model);
Q_GLOBAL_STATIC(KisStoragePluginRegistry, s_instance)
virtual KoResourceLoadResult createBrush(const QDomElement &element, KisResourcesInterfaceSP resourcesInterface)=0
virtual std::optional< KisBrushModel::BrushData > createBrushModel(const QDomElement &element, KisResourcesInterfaceSP resourcesInterface)=0
virtual void toXML(QDomDocument &doc, QDomElement &element, const KisBrushModel::BrushData &model)=0
static KisBrushRegistry * instance()
KoResourceLoadResult createBrush(const QDomElement &element, KisResourcesInterfaceSP resourcesInterface)
~KisBrushRegistry() override
void toXML(QDomDocument &doc, QDomElement &element, const KisBrushModel::BrushData &model)
std::optional< KisBrushModel::BrushData > createBrushModel(const QDomElement &element, KisResourcesInterfaceSP resourcesInterface)
KisBrushFactory * get(const QString &id) const
QList< QString > keys() const
A simple wrapper object for the main information about the resource.
#define KIS_SAFE_ASSERT_RECOVER_RETURN(cond)
PredefinedBrushData predefinedBrush