mirror of
https://github.com/YACReader/yacreader
synced 2025-05-28 03:10:27 -04:00
158 lines
3.4 KiB
C++
158 lines
3.4 KiB
C++
#ifndef __COMICDB_H
|
|
#define __COMICDB_H
|
|
|
|
#include "library_item.h"
|
|
#include <QVariant>
|
|
#include <QList>
|
|
#include <QPixmap>
|
|
#include <QImage>
|
|
#include <QMetaType>
|
|
|
|
class ComicInfo
|
|
{
|
|
public:
|
|
ComicInfo();
|
|
ComicInfo(const ComicInfo & comicInfo);
|
|
~ComicInfo();
|
|
|
|
ComicInfo & operator=(const ComicInfo & comicInfo);
|
|
|
|
//mandatory fields
|
|
qulonglong id;
|
|
bool read;
|
|
bool edited;
|
|
QString hash;
|
|
bool existOnDb;
|
|
|
|
int rating;
|
|
|
|
bool hasBeenOpened;
|
|
|
|
//viewer
|
|
int currentPage;
|
|
int bookmark1;
|
|
int bookmark2;
|
|
int bookmark3;
|
|
int brightness;
|
|
int contrast;
|
|
int gamma;
|
|
//-----------------
|
|
|
|
|
|
QVariant title;//string
|
|
|
|
QVariant coverPage;//int
|
|
QVariant numPages;//int
|
|
|
|
QVariant number;//int
|
|
QVariant isBis;//bool
|
|
QVariant count;//int
|
|
|
|
QVariant volume;//string
|
|
QVariant storyArc;//string
|
|
QVariant arcNumber;//int
|
|
QVariant arcCount;//int
|
|
|
|
QVariant genere;//string
|
|
|
|
QVariant writer;//string
|
|
QVariant penciller;//string
|
|
QVariant inker;//string
|
|
QVariant colorist;//string
|
|
QVariant letterer;//string
|
|
QVariant coverArtist;//string
|
|
|
|
QVariant date;//string
|
|
QVariant publisher;//string
|
|
QVariant format;//string
|
|
QVariant color;//bool
|
|
QVariant ageRating;//string
|
|
|
|
QVariant synopsis;//string
|
|
QVariant characters;//string
|
|
QVariant notes;//string
|
|
|
|
QVariant comicVineID;//string
|
|
|
|
QImage cover;
|
|
|
|
/*void setTitle(QVariant value);
|
|
|
|
void setCoverPage(QVariant value);
|
|
void setNumPages(QVariant value);
|
|
|
|
void setNumber(QVariant value);
|
|
void setIsBis(QVariant value);
|
|
void setCount(QVariant value);
|
|
|
|
void setVolume(QVariant value);
|
|
void setStoryArc(QVariant value);
|
|
void setArcNumber(QVariant value);
|
|
void setArcCount(QVariant value);
|
|
|
|
void setGenere(QVariant value);
|
|
|
|
void setWriter(QVariant value);
|
|
void setPenciller(QVariant value);
|
|
void setInker(QVariant value);
|
|
void setColorist(QVariant value);
|
|
void setLetterer(QVariant value);
|
|
void setCoverArtist(QVariant value);
|
|
|
|
void setDate(QVariant value);
|
|
void setPublisher(QVariant value);
|
|
void setFormat(QVariant value);
|
|
void setColor(QVariant value);
|
|
void setAgeRating(QVariant value);
|
|
|
|
void setSynopsis(QVariant value);
|
|
void setCharacters(QVariant value);
|
|
void setNotes(QVariant value);*/
|
|
|
|
QPixmap getCover(const QString & basePath);
|
|
|
|
friend QDataStream &operator<<(QDataStream & stream, const ComicInfo & comicInfo);
|
|
|
|
friend QDataStream &operator>>(QDataStream & stream, ComicInfo & comicInfo);
|
|
|
|
private:
|
|
|
|
};
|
|
|
|
class ComicDB : public LibraryItem
|
|
{
|
|
public:
|
|
ComicDB();
|
|
|
|
bool isDir();
|
|
|
|
bool _hasCover;
|
|
|
|
bool hasCover() {return _hasCover;};
|
|
|
|
//return comic file name
|
|
QString getFileName() const;
|
|
|
|
//returns comic title if it isn't null or empty, in other case returns fileName
|
|
QString getTitleOrFileName() const;
|
|
|
|
//returns parent folder name
|
|
QString getParentFolderName() const;
|
|
|
|
//return the size of the file in bytes
|
|
qulonglong getFileSize() const;
|
|
|
|
QString toTXT();
|
|
|
|
ComicInfo info;
|
|
|
|
bool operator==(const ComicDB & other){return id == other.id;};
|
|
|
|
friend QDataStream &operator<<(QDataStream &, const ComicDB &);
|
|
friend QDataStream &operator>>(QDataStream &, ComicDB &);
|
|
};
|
|
|
|
Q_DECLARE_METATYPE(ComicDB);
|
|
|
|
#endif
|