1 /*
2  *   SPDX-FileCopyrightText: 2008 Petri Damstén <damu@iki.fi>
3  *
4  *   SPDX-License-Identifier: LGPL-2.0-only
5  */
6 
7 #ifndef COMICPROVIDERKROSS_H
8 #define COMICPROVIDERKROSS_H
9 
10 #include "comicprovider.h"
11 #include "comicproviderwrapper.h"
12 
13 #include <KPackage/PackageStructure>
14 #include <QImage>
15 #include <QUrl>
16 
17 class ComicProviderKross : public ComicProvider
18 {
19     friend class ComicProviderWrapper;
20     Q_OBJECT
21 
22 public:
23     ComicProviderKross(QObject *parent, const QVariantList &args);
24     ~ComicProviderKross() override;
25 
26     static KPackage::PackageStructure *packageStructure();
27 
28     bool isLeftToRight() const override;
29     bool isTopToBottom() const override;
30     IdentifierType identifierType() const override;
31     QUrl websiteUrl() const override;
32     QUrl shopUrl() const override;
33     QImage image() const override;
34     QString identifier() const override;
35     QString nextIdentifier() const override;
36     QString previousIdentifier() const override;
37     QString firstStripIdentifier() const override;
38     QString stripTitle() const override;
39     QString additionalText() const override;
40 
41 protected:
42     void pageRetrieved(int id, const QByteArray &data) override;
43     void pageError(int id, const QString &message) override;
44     void redirected(int id, const QUrl &newUrl) override;
45     QString identifierToString(const QVariant &identifier) const;
46 
47 private:
48     mutable ComicProviderWrapper m_wrapper;
49     static KPackage::PackageStructure *m_packageStructure;
50 };
51 
52 #endif
53