File indexing completed on 2024-05-12 15:58:49

0001 /*
0002  * SPDX-FileCopyrightText: 2018 Boudewijn Rempt <boud@valdyas.org>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 
0007 #ifndef KISASLSTORAGE_H
0008 #define KISASLSTORAGE_H
0009 
0010 #include <kritaimage_export.h>
0011 
0012 #include <KisStoragePlugin.h>
0013 #include <kis_asl_layer_style_serializer.h>
0014 
0015 class KRITAIMAGE_EXPORT KisAslStorage : public KisStoragePlugin
0016 {
0017 public:
0018     KisAslStorage(const QString &location);
0019     virtual ~KisAslStorage();
0020 
0021     KisResourceStorage::ResourceItem resourceItem(const QString &url) override;
0022     KoResourceSP resource(const QString &url) override;
0023     bool loadVersionedResource(KoResourceSP resource) override;
0024     bool supportsVersioning() const override;
0025     QSharedPointer<KisResourceStorage::ResourceIterator> resources(const QString &resourceType) override;
0026     QSharedPointer<KisResourceStorage::TagIterator> tags(const QString &resourceType) override;
0027 
0028     bool saveAsNewVersion(const QString &resourceType, KoResourceSP resource) override;
0029     bool addResource(const QString &resourceType, KoResourceSP resource) override;
0030 
0031     bool isValid() const override;
0032 
0033     QSharedPointer<KisAslLayerStyleSerializer> m_aslSerializer;
0034 };
0035 
0036 #endif // KISASLSTORAGE_H