File indexing completed on 2024-05-12 15:56:10

0001 /*
0002  *  SPDX-FileCopyrightText: 2008 Boudewijn Rempt <boud@valdyas.org>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KIS_BRUSH_REGISTRY_H_
0008 #define KIS_BRUSH_REGISTRY_H_
0009 
0010 #include <QObject>
0011 
0012 #include "kis_types.h"
0013 #include "KoGenericRegistry.h"
0014 
0015 #include <kritabrush_export.h>
0016 
0017 #include "kis_brush.h"
0018 #include "kis_brush_factory.h"
0019 
0020 class QDomElement;
0021 
0022 class BRUSH_EXPORT KisBrushRegistry : public QObject, public KoGenericRegistry<KisBrushFactory*>
0023 {
0024 
0025     Q_OBJECT
0026 
0027 public:
0028     KisBrushRegistry();
0029     ~KisBrushRegistry() override;
0030 
0031     static KisBrushRegistry* instance();
0032 
0033     KoResourceLoadResult createBrush(const QDomElement& element, KisResourcesInterfaceSP resourcesInterface);
0034 
0035 private:
0036     KisBrushRegistry(const KisBrushRegistry&);
0037     KisBrushRegistry operator=(const KisBrushRegistry&);
0038 };
0039 
0040 #endif // KIS_GENERATOR_REGISTRY_H_