Krita Source Code Documentation
Loading...
Searching...
No Matches
KoFilterEffectRegistry.cpp
Go to the documentation of this file.
1
/* This file is part of the KDE project
2
* SPDX-FileCopyrightText: 2009 Jan Hambrecht <jaham@gmx.net>
3
*
4
* SPDX-License-Identifier: LGPL-2.1-or-later
5
*/
6
7
#include "
KoFilterEffectRegistry.h
"
8
9
#include <QGlobalStatic>
10
11
#include "
KoFilterEffect.h
"
12
#include "
KoFilterEffectFactoryBase.h
"
13
#include <
KoPluginLoader.h
>
14
15
#include <
FlakeDebug.h
>
16
17
Q_GLOBAL_STATIC
(
KoFilterEffectRegistry
, s_instance)
18
19
KoFilterEffectRegistry
::
KoFilterEffectRegistry
()
20
: d(0)
21
{
22
}
23
24
void
KoFilterEffectRegistry::init
()
25
{
26
KoPluginLoader::PluginsConfig
config;
27
config.
group
=
"krita"
;
28
config.
blacklist
=
"FilterEffectPluginsDisabled"
;
29
KoPluginLoader::instance
()->
load
(QString::fromLatin1(
"Krita/FilterEffect"
),
30
config);
31
}
32
33
34
KoFilterEffectRegistry::~KoFilterEffectRegistry
()
35
{
36
qDeleteAll(
doubleEntries
());
37
qDeleteAll(
values
());
38
}
39
40
KoFilterEffectRegistry
*
KoFilterEffectRegistry::instance
()
41
{
42
if
(!s_instance.exists()) {
43
s_instance->
init
();
44
}
45
return
s_instance;
46
}
47
48
KoFilterEffect
*
KoFilterEffectRegistry::createFilterEffectFromXml
(
const
QDomElement & element,
const
KoFilterEffectLoadingContext
&context)
49
{
50
KoFilterEffectFactoryBase
* factory =
get
(element.tagName());
51
if
(!factory)
52
return
0;
53
54
KoFilterEffect
* filterEffect = factory->
createFilterEffect
();
55
if
(filterEffect->
load
(element, context))
56
return
filterEffect;
57
58
delete
filterEffect;
59
return
0;
60
}
FlakeDebug.h
Q_GLOBAL_STATIC
Q_GLOBAL_STATIC(KisStoragePluginRegistry, s_instance)
KoFilterEffectFactoryBase.h
KoFilterEffectRegistry.h
KoFilterEffect.h
KoPluginLoader.h
KoFilterEffectFactoryBase
API docs go here.
Definition
KoFilterEffectFactoryBase.cpp:11
KoFilterEffectFactoryBase::createFilterEffect
virtual KoFilterEffect * createFilterEffect() const =0
KoFilterEffectLoadingContext
This class provides a loading context for filter effects.
Definition
KoFilterEffectLoadingContext.cpp:15
KoFilterEffectRegistry
Definition
KoFilterEffectRegistry.h:20
KoFilterEffectRegistry::~KoFilterEffectRegistry
~KoFilterEffectRegistry() override
Definition
KoFilterEffectRegistry.cpp:34
KoFilterEffectRegistry::init
void init()
Definition
KoFilterEffectRegistry.cpp:24
KoFilterEffectRegistry::createFilterEffectFromXml
KoFilterEffect * createFilterEffectFromXml(const QDomElement &element, const KoFilterEffectLoadingContext &context)
Definition
KoFilterEffectRegistry.cpp:48
KoFilterEffectRegistry::instance
static KoFilterEffectRegistry * instance()
Definition
KoFilterEffectRegistry.cpp:40
KoFilterEffect
Definition
KoFilterEffect.cpp:16
KoFilterEffect::load
virtual bool load(const QDomElement &element, const KoFilterEffectLoadingContext &context)=0
KoGenericRegistry< KoFilterEffectFactoryBase * >::doubleEntries
QList< KoFilterEffectFactoryBase * > doubleEntries() const
Definition
KoGenericRegistry.h:174
KoGenericRegistry< KoFilterEffectFactoryBase * >::values
QList< KoFilterEffectFactoryBase * > values() const
Definition
KoGenericRegistry.h:169
KoGenericRegistry< KoFilterEffectFactoryBase * >::get
KoFilterEffectFactoryBase * get(const QString &id) const
Definition
KoGenericRegistry.h:120
KoPluginLoader::load
void load(const QString &serviceType, const PluginsConfig &config=PluginsConfig(), QObject *owner=0, bool cache=true)
Definition
KoPluginLoader.cpp:83
KoPluginLoader::instance
static KoPluginLoader * instance()
Definition
KoPluginLoader.cpp:78
KoPluginLoader::PluginsConfig
Definition
KoPluginLoader.h:64
KoPluginLoader::PluginsConfig::group
const char * group
Definition
KoPluginLoader.h:73
KoPluginLoader::PluginsConfig::blacklist
const char * blacklist
This contains the variable name for the list of plugins (by library name) that will not be loaded.
Definition
KoPluginLoader.h:75
libs
flake
KoFilterEffectRegistry.cpp
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52