6#ifndef KISRESOURCESINTERFACE_H
7#define KISRESOURCESINTERFACE_H
9#include "kritaresources_export.h"
11#include <QScopedPointer>
66 KoResourceSP bestMatch(
const QString md5,
const QString filename,
const QString name);
74 KoResourceLoadResult bestMatchLoadResult(
const QString md5,
const QString filename,
const QString name);
95 Q_FOREACH(
KoResourceSP resource, m_source->resourcesForFilename(filename)) {
96 r << resource.dynamicCast<T>();
104 Q_FOREACH(
KoResourceSP resource, m_source->resourcesForName(name)) {
105 r << resource.dynamicCast<T>();
113 Q_FOREACH(
KoResourceSP resource, m_source->resourcesForMD5(md5)) {
114 r << resource.dynamicCast<T>();
131 return m_source->bestMatch(md5, filename, name).dynamicCast<T>();
141 return m_source->bestMatchLoadResult(md5, filename, name);
146 return m_source->fallbackResource().dynamicCast<T>();
188 QScopedPointer<KisResourcesInterfacePrivate>
d_ptr;
KisMagneticGraph::vertex_descriptor source(typename KisMagneticGraph::edge_descriptor e, KisMagneticGraph g)
virtual QVector< KoResourceSP > resourcesForFilename(const QString &filename) const =0
virtual QVector< KoResourceSP > resourcesForMD5(const QString &md5) const =0
Q_DISABLE_COPY(ResourceSourceAdapter)
virtual QVector< KoResourceSP > resourcesForName(const QString &name) const =0
virtual KoResourceSP fallbackResource() const =0
QSharedPointer< T > fallbackResource() const
TypedResourceSourceAdapter(ResourceSourceAdapter *adapter)
ResourceSourceAdapter * m_source
QSharedPointer< T > bestMatch(const QString md5, const QString filename, const QString name)
resource retrieves a resource, preferably by md5, but with filename and name as fallback for older fi...
QVector< QSharedPointer< T > > resourcesForFilename(const QString &filename) const
QVector< QSharedPointer< T > > resourcesForName(const QString &name) const
KoResourceLoadResult bestMatchLoadResult(const QString md5, const QString filename, const QString name)
QVector< QSharedPointer< T > > resourcesForMD5(const QString &md5) const
a provider-like interface class for accessing resource sources in Krita.
virtual ResourceSourceAdapter * createSourceImpl(const QString &type) const =0
QScopedPointer< KisResourcesInterfacePrivate > d_ptr
TypedResourceSourceAdapter< T > source(const QString &type) const