mirror of
https://github.com/YACReader/yacreader
synced 2025-07-18 21:14:33 -04:00
Add new fields to the DB and make then available to be used in the apps
This commit is contained in:
@ -118,6 +118,51 @@ QString ComicDB::toTXT()
|
||||
if (!info.lastTimeOpened.isNull())
|
||||
txt.append(QString("lastTimeOpened:%1\r\n").arg(info.lastTimeOpened.toULongLong()));
|
||||
|
||||
if (!info.added.isNull())
|
||||
txt.append(QString("added:%1\r\n").arg(info.added.toULongLong()));
|
||||
|
||||
if (!info.type.isNull())
|
||||
txt.append(QString("type:%1\r\n").arg(info.type.toInt()));
|
||||
|
||||
if (!info.editor.isNull())
|
||||
txt.append(QString("editor:%1\r\n").arg(info.editor.toString()));
|
||||
|
||||
if (!info.imprint.isNull())
|
||||
txt.append(QString("imprint:%1\r\n").arg(info.imprint.toString()));
|
||||
|
||||
if (!info.teams.isNull())
|
||||
txt.append(QString("teams:%1\r\n").arg(info.teams.toString()));
|
||||
|
||||
if (!info.locations.isNull())
|
||||
txt.append(QString("locations:%1\r\n").arg(info.locations.toString()));
|
||||
|
||||
if (!info.series.isNull())
|
||||
txt.append(QString("series:%1\r\n").arg(info.series.toString()));
|
||||
|
||||
if (!info.alternateSeries.isNull())
|
||||
txt.append(QString("alternateSeries:%1\r\n").arg(info.alternateSeries.toString()));
|
||||
|
||||
if (!info.alternateNumber.isNull())
|
||||
txt.append(QString("alternateNumber:%1\r\n").arg(info.alternateNumber.toString()));
|
||||
|
||||
if (!info.alternateCount.isNull())
|
||||
txt.append(QString("alternateCount:%1\r\n").arg(info.alternateCount.toString()));
|
||||
|
||||
if (!info.languageISO.isNull())
|
||||
txt.append(QString("languageISO:%1\r\n").arg(info.languageISO.toString()));
|
||||
|
||||
if (!info.seriesGroup.isNull())
|
||||
txt.append(QString("seriesGroup:%1\r\n").arg(info.seriesGroup.toString()));
|
||||
|
||||
if (!info.mainCharacterOrTeam.isNull())
|
||||
txt.append(QString("mainCharacterOrTeam:%1\r\n").arg(info.mainCharacterOrTeam.toString()));
|
||||
|
||||
if (!info.review.isNull())
|
||||
txt.append(QString("review:%1\r\n").arg(info.review.toString()));
|
||||
|
||||
if (!info.tags.isNull())
|
||||
txt.append(QString("tags:%1\r\n").arg(info.tags.toString()));
|
||||
|
||||
return txt;
|
||||
}
|
||||
|
||||
@ -238,6 +283,22 @@ void ComicInfo::deleteMetadata()
|
||||
characters = QVariant();
|
||||
notes = QVariant();
|
||||
|
||||
// type = QVariant(); reset or not???
|
||||
editor = QVariant();
|
||||
imprint = QVariant();
|
||||
teams = QVariant();
|
||||
locations = QVariant();
|
||||
series = QVariant();
|
||||
alternateSeries = QVariant();
|
||||
alternateNumber = QVariant();
|
||||
alternateCount = QVariant();
|
||||
languageISO = QVariant();
|
||||
seriesGroup = QVariant();
|
||||
mainCharacterOrTeam = QVariant();
|
||||
review = QVariant();
|
||||
|
||||
// tags = QVariant(); reset or not???
|
||||
|
||||
comicVineID = QVariant();
|
||||
}
|
||||
// the default operator= should work
|
||||
@ -292,135 +353,25 @@ ComicInfo &ComicInfo::operator=(const ComicInfo &comicInfo)
|
||||
coverSizeRatio = comicInfo.coverSizeRatio;
|
||||
originalCoverSize = comicInfo.originalCoverSize;
|
||||
|
||||
added = comicInfo.added;
|
||||
type = comicInfo.type;
|
||||
editor = comicInfo.editor;
|
||||
imprint = comicInfo.imprint;
|
||||
teams = comicInfo.teams;
|
||||
locations = comicInfo.locations;
|
||||
series = comicInfo.series;
|
||||
alternateSeries = comicInfo.alternateSeries;
|
||||
alternateNumber = comicInfo.alternateNumber;
|
||||
alternateCount = comicInfo.alternateCount;
|
||||
languageISO = comicInfo.languageISO;
|
||||
seriesGroup = comicInfo.seriesGroup;
|
||||
mainCharacterOrTeam = comicInfo.mainCharacterOrTeam;
|
||||
review = comicInfo.review;
|
||||
tags = comicInfo.tags;
|
||||
|
||||
return *this;
|
||||
}
|
||||
|
||||
// set fields
|
||||
/*
|
||||
void ComicInfo::setTitle(QString value)
|
||||
{
|
||||
setValue(title,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setCoverPage(int value)
|
||||
{
|
||||
setValue(coverPage,value);
|
||||
}
|
||||
void ComicInfo::setNumPages(int value)
|
||||
{
|
||||
setValue(numPages,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setNumber(int value)
|
||||
{
|
||||
setValue(number,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setIsBis(bool value)
|
||||
{
|
||||
setValue(isBis,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setCount(int value)
|
||||
{
|
||||
setValue(count,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setVolume(QString value)
|
||||
{
|
||||
setValue(volume,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setStoryArc(QString value)
|
||||
{
|
||||
setValue(storyArc,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setArcNumber(int value)
|
||||
{
|
||||
setValue(arcNumber,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setArcCount(int value)
|
||||
{
|
||||
setValue(arcCount,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setGenere(QString value)
|
||||
{
|
||||
setValue(genere,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setWriter(QString value)
|
||||
{
|
||||
setValue(writer,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setPenciller(QString value)
|
||||
{
|
||||
setValue(penciller,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setInker(QString value)
|
||||
{
|
||||
setValue(inker,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setColorist(QString value)
|
||||
{
|
||||
setValue(colorist,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setLetterer(QString value)
|
||||
{
|
||||
setValue(letterer,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setCoverArtist(QString value)
|
||||
{
|
||||
setValue(coverArtist,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setDate(QString value)
|
||||
{
|
||||
setValue(date,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setPublisher(QString value)
|
||||
{
|
||||
setValue(publisher,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setFormat(QString value)
|
||||
{
|
||||
setValue(format,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setColor(bool value)
|
||||
{
|
||||
setValue(color,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setAgeRating(QString value)
|
||||
{
|
||||
setValue(ageRating,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setSynopsis(QString value)
|
||||
{
|
||||
setValue(synopsis,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setCharacters(QString value)
|
||||
{
|
||||
setValue(characters,value);
|
||||
}
|
||||
|
||||
void ComicInfo::setNotes(QString value)
|
||||
{
|
||||
setValue(notes,value);
|
||||
}*/
|
||||
|
||||
QPixmap ComicInfo::getCover(const QString &basePath)
|
||||
{
|
||||
if (cover.isNull()) {
|
||||
@ -494,6 +445,33 @@ QStringList ComicInfo::getCharacters()
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
QStringList ComicInfo::getTeams()
|
||||
{
|
||||
if (teams.toString().length() > 0) {
|
||||
return teams.toString().split("\n");
|
||||
}
|
||||
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
QStringList ComicInfo::getLocations()
|
||||
{
|
||||
if (locations.toString().length() > 0) {
|
||||
return locations.toString().split("\n");
|
||||
}
|
||||
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
QStringList ComicInfo::getTags()
|
||||
{
|
||||
if (tags.toString().length() > 0) {
|
||||
return tags.toString().split("\n");
|
||||
}
|
||||
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
void ComicInfo::setRead(bool r)
|
||||
{
|
||||
if (r != read) {
|
||||
@ -599,6 +577,24 @@ QDataStream &operator<<(QDataStream &stream, const ComicInfo &comicInfo)
|
||||
stream << comicInfo.coverSizeRatio;
|
||||
stream << comicInfo.originalCoverSize;
|
||||
|
||||
stream << comicInfo.added;
|
||||
stream << comicInfo.type;
|
||||
stream << comicInfo.added;
|
||||
stream << comicInfo.type;
|
||||
stream << comicInfo.editor;
|
||||
stream << comicInfo.imprint;
|
||||
stream << comicInfo.teams;
|
||||
stream << comicInfo.locations;
|
||||
stream << comicInfo.series;
|
||||
stream << comicInfo.alternateSeries;
|
||||
stream << comicInfo.alternateNumber;
|
||||
stream << comicInfo.alternateCount;
|
||||
stream << comicInfo.languageISO;
|
||||
stream << comicInfo.seriesGroup;
|
||||
stream << comicInfo.mainCharacterOrTeam;
|
||||
stream << comicInfo.review;
|
||||
stream << comicInfo.tags;
|
||||
|
||||
return stream;
|
||||
}
|
||||
|
||||
@ -661,5 +657,23 @@ QDataStream &operator>>(QDataStream &stream, ComicInfo &comicInfo)
|
||||
stream >> comicInfo.coverSizeRatio;
|
||||
stream >> comicInfo.originalCoverSize;
|
||||
|
||||
stream >> comicInfo.added;
|
||||
stream >> comicInfo.type;
|
||||
stream >> comicInfo.added;
|
||||
stream >> comicInfo.type;
|
||||
stream >> comicInfo.editor;
|
||||
stream >> comicInfo.imprint;
|
||||
stream >> comicInfo.teams;
|
||||
stream >> comicInfo.locations;
|
||||
stream >> comicInfo.series;
|
||||
stream >> comicInfo.alternateSeries;
|
||||
stream >> comicInfo.alternateNumber;
|
||||
stream >> comicInfo.alternateCount;
|
||||
stream >> comicInfo.languageISO;
|
||||
stream >> comicInfo.seriesGroup;
|
||||
stream >> comicInfo.mainCharacterOrTeam;
|
||||
stream >> comicInfo.review;
|
||||
stream >> comicInfo.tags;
|
||||
|
||||
return stream;
|
||||
}
|
||||
|
@ -33,7 +33,7 @@ public:
|
||||
QString hash;
|
||||
bool existOnDb;
|
||||
|
||||
int rating;
|
||||
int rating; // TODO_METADATA: change to float
|
||||
|
||||
bool hasBeenOpened;
|
||||
|
||||
@ -52,13 +52,13 @@ public:
|
||||
QVariant coverPage; // int
|
||||
QVariant numPages; // int
|
||||
|
||||
QVariant number; // int
|
||||
QVariant number; // string (changed in 9.13 from int)
|
||||
QVariant isBis; // bool
|
||||
QVariant count; // int
|
||||
|
||||
QVariant volume; // string
|
||||
QVariant storyArc; // string
|
||||
QVariant arcNumber; // int
|
||||
QVariant arcNumber; // string (changed in 9.13 from int)
|
||||
QVariant arcCount; // int
|
||||
|
||||
QVariant genere; // string
|
||||
@ -80,7 +80,7 @@ public:
|
||||
QVariant format; // string
|
||||
QVariant color; // bool
|
||||
QVariant ageRating; // string
|
||||
QVariant manga; // bool
|
||||
[[deprecated("use type instead")]] QVariant manga; // bool
|
||||
|
||||
QVariant synopsis; // string
|
||||
QVariant characters; // string
|
||||
@ -94,38 +94,21 @@ public:
|
||||
QVariant coverSizeRatio; // h/w
|
||||
QVariant originalCoverSize; // string "WxH"
|
||||
|
||||
/*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);*/
|
||||
QVariant added; // integer/date
|
||||
QVariant type; // enum
|
||||
QVariant editor; // string
|
||||
QVariant imprint; // string
|
||||
QVariant teams; // string/list
|
||||
QVariant locations; // string/list
|
||||
QVariant series; // string
|
||||
QVariant alternateSeries; // string
|
||||
QVariant alternateNumber; // string
|
||||
QVariant alternateCount; // int
|
||||
QVariant languageISO; // string
|
||||
QVariant seriesGroup; // string
|
||||
QVariant mainCharacterOrTeam; // string
|
||||
QVariant review; // string
|
||||
QVariant tags; // string/list
|
||||
|
||||
QPixmap getCover(const QString &basePath);
|
||||
|
||||
@ -138,6 +121,11 @@ public:
|
||||
|
||||
Q_INVOKABLE QStringList getCharacters();
|
||||
|
||||
Q_INVOKABLE QStringList getTeams();
|
||||
Q_INVOKABLE QStringList getLocations();
|
||||
|
||||
Q_INVOKABLE QStringList getTags();
|
||||
|
||||
friend QDataStream &operator<<(QDataStream &stream, const ComicInfo &comicInfo);
|
||||
|
||||
friend QDataStream &operator>>(QDataStream &stream, ComicInfo &comicInfo);
|
||||
@ -206,11 +194,27 @@ public:
|
||||
Q_PROPERTY(QVariant coverSizeRatio MEMBER coverSizeRatio CONSTANT)
|
||||
Q_PROPERTY(QVariant originalCoverSize MEMBER originalCoverSize CONSTANT)
|
||||
|
||||
Q_PROPERTY(QVariant added MEMBER added CONSTANT)
|
||||
Q_PROPERTY(QVariant type MEMBER type CONSTANT)
|
||||
Q_PROPERTY(QVariant editor MEMBER editor CONSTANT)
|
||||
Q_PROPERTY(QVariant imprint MEMBER imprint CONSTANT)
|
||||
Q_PROPERTY(QVariant teams MEMBER teams CONSTANT)
|
||||
Q_PROPERTY(QVariant locations MEMBER locations CONSTANT)
|
||||
Q_PROPERTY(QVariant series MEMBER series CONSTANT)
|
||||
Q_PROPERTY(QVariant alternateSeries MEMBER alternateSeries CONSTANT)
|
||||
Q_PROPERTY(QVariant alternateNumber MEMBER alternateNumber CONSTANT)
|
||||
Q_PROPERTY(QVariant alternateCount MEMBER alternateCount CONSTANT)
|
||||
Q_PROPERTY(QVariant languageISO MEMBER languageISO CONSTANT)
|
||||
Q_PROPERTY(QVariant seriesGroup MEMBER seriesGroup CONSTANT)
|
||||
Q_PROPERTY(QVariant mainCharacterOrTeam MEMBER mainCharacterOrTeam CONSTANT)
|
||||
Q_PROPERTY(QVariant review MEMBER review CONSTANT)
|
||||
Q_PROPERTY(QVariant tags MEMBER tags CONSTANT)
|
||||
|
||||
//-new properties, not loaded from the DB automatically
|
||||
bool isFavorite;
|
||||
Q_PROPERTY(bool isFavorite MEMBER isFavorite WRITE setFavorite NOTIFY favoriteChanged)
|
||||
|
||||
// setters, used in QML only by now
|
||||
// setters, used in QML only for now
|
||||
void setRead(bool r);
|
||||
void setRating(int r);
|
||||
void setFavorite(bool f);
|
||||
|
@ -20,7 +20,19 @@ Folder::Folder(qulonglong folderId, qulonglong parentId, const QString &folderNa
|
||||
this->path = folderPath;
|
||||
}
|
||||
|
||||
Folder::Folder(qulonglong folderId, qulonglong parentId, const QString &folderName, const QString &folderPath, bool completed, bool finished, bool manga)
|
||||
Folder::Folder(qulonglong folderId,
|
||||
qulonglong parentId,
|
||||
const QString &folderName,
|
||||
const QString &folderPath,
|
||||
bool completed,
|
||||
bool finished,
|
||||
bool manga,
|
||||
int numChildren,
|
||||
const QString &firstChildHash,
|
||||
const QString &customImage,
|
||||
YACReader::FileType type,
|
||||
qint64 added,
|
||||
qint64 updated)
|
||||
: knownParent(true),
|
||||
knownId(true),
|
||||
numChildren(-1)
|
||||
@ -32,6 +44,12 @@ Folder::Folder(qulonglong folderId, qulonglong parentId, const QString &folderNa
|
||||
this->completed = completed;
|
||||
this->finished = finished;
|
||||
this->manga = manga;
|
||||
this->numChildren = numChildren;
|
||||
this->firstChildHash = firstChildHash;
|
||||
this->customImage = customImage;
|
||||
this->type = type;
|
||||
this->added = added;
|
||||
this->updated = updated;
|
||||
}
|
||||
|
||||
Folder::Folder(const Folder &folder)
|
||||
@ -51,6 +69,9 @@ Folder &Folder::operator=(const Folder &other)
|
||||
this->numChildren = other.numChildren;
|
||||
this->firstChildHash = other.firstChildHash;
|
||||
this->customImage = other.customImage;
|
||||
this->type = other.type;
|
||||
this->added = other.added;
|
||||
this->updated = other.updated;
|
||||
|
||||
return *this;
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
#define __FOLDER_H
|
||||
|
||||
#include "library_item.h"
|
||||
#include "yacreader_global.h"
|
||||
|
||||
#include <QList>
|
||||
|
||||
@ -11,9 +12,33 @@ public:
|
||||
bool knownParent;
|
||||
bool knownId;
|
||||
|
||||
bool finished; // finished means read, the user has read all the content in this folder
|
||||
bool completed; // completed means the folder has all the content, e.g. a series got its final issue and the user has collected all of them
|
||||
[[deprecated("use type instead")]] bool manga;
|
||||
|
||||
qint32 numChildren; //-1 for unknown number of children
|
||||
QString firstChildHash; // empty for unknown first child
|
||||
QString customImage; // empty for none custom image
|
||||
|
||||
YACReader::FileType type;
|
||||
qint64 added; // epoch in seconds
|
||||
qint64 updated; // epoch in seconds
|
||||
|
||||
Folder();
|
||||
Folder(qulonglong folderId, qulonglong parentId, const QString &folderName, const QString &folderPath);
|
||||
Folder(qulonglong folderId, qulonglong parentId, const QString &folderName, const QString &folderPath, bool completed, bool finished, bool manga);
|
||||
Folder(qulonglong folderId,
|
||||
qulonglong parentId,
|
||||
const QString &folderName,
|
||||
const QString &folderPath,
|
||||
bool completed,
|
||||
bool finished,
|
||||
bool manga,
|
||||
int numChildren,
|
||||
const QString &firstChildHash,
|
||||
const QString &customImage,
|
||||
YACReader::FileType type,
|
||||
qint64 added,
|
||||
qint64 updated);
|
||||
Folder(const QString &folderName, const QString &folderPath);
|
||||
Folder(const Folder &folder);
|
||||
Folder &operator=(const Folder &other);
|
||||
@ -33,75 +58,6 @@ public:
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
inline bool isFinished() const
|
||||
{
|
||||
return finished;
|
||||
}
|
||||
|
||||
inline bool isCompleted() const
|
||||
{
|
||||
return completed;
|
||||
}
|
||||
|
||||
inline bool isManga() const
|
||||
{
|
||||
return manga;
|
||||
}
|
||||
|
||||
inline void setFinished(bool b)
|
||||
{
|
||||
finished = b;
|
||||
}
|
||||
|
||||
inline void setCompleted(bool b)
|
||||
{
|
||||
completed = b;
|
||||
}
|
||||
|
||||
inline void setManga(bool b)
|
||||
{
|
||||
manga = b;
|
||||
}
|
||||
|
||||
inline qint32 getNumChildren() const
|
||||
{
|
||||
return numChildren;
|
||||
}
|
||||
|
||||
inline void setNumChildren(const qint32 v)
|
||||
{
|
||||
numChildren = v;
|
||||
}
|
||||
|
||||
inline QString getFirstChildHash() const
|
||||
{
|
||||
return firstChildHash;
|
||||
}
|
||||
|
||||
inline void setFirstChildHash(const QString &v)
|
||||
{
|
||||
firstChildHash = v;
|
||||
}
|
||||
|
||||
inline QString getCustomImage() const
|
||||
{
|
||||
return customImage;
|
||||
}
|
||||
|
||||
inline void setCustomImage(const QString &s)
|
||||
{
|
||||
customImage = s;
|
||||
}
|
||||
|
||||
private:
|
||||
bool finished; // finished means read, the user has read all the content in this folder
|
||||
bool completed; // completed means the folder has all the content, e.g. a series got its final issue and the user has collected all of them
|
||||
bool manga;
|
||||
|
||||
qint32 numChildren; //-1 for unknown number of children
|
||||
QString firstChildHash; // empty for unknown first child
|
||||
QString customImage; // empty for none custom image
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -7,6 +7,7 @@ int naturalCompare(const QString &s1, const QString &s2, Qt::CaseSensitivity cas
|
||||
QCollator c;
|
||||
c.setCaseSensitivity(caseSensitivity);
|
||||
c.setNumericMode(true);
|
||||
c.setIgnorePunctuation(false);
|
||||
return c.compare(s1, s2);
|
||||
}
|
||||
bool naturalSortLessThanCS(const QString &left, const QString &right)
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QMetaType>
|
||||
#include <QAbstractItemModel>
|
||||
|
||||
#define VERSION "9.12.0"
|
||||
#define VERSION "9.13.0"
|
||||
|
||||
#define IMPORT_COMIC_INFO_XML_METADATA "IMPORT_COMIC_INFO_XML_METADATA"
|
||||
|
||||
@ -51,6 +51,14 @@ enum LabelColors {
|
||||
YDark
|
||||
};
|
||||
|
||||
enum class FileType : int {
|
||||
Comic = 0,
|
||||
Manga,
|
||||
WesternManga,
|
||||
WebComic, // continuous vertical reading
|
||||
Yonkoma, // 4Koma
|
||||
};
|
||||
|
||||
struct OpenComicSource {
|
||||
enum Source {
|
||||
Folder = 0,
|
||||
@ -76,5 +84,6 @@ void iterate(const QModelIndex &index,
|
||||
|
||||
Q_DECLARE_METATYPE(YACReader::OpenComicSource::Source)
|
||||
Q_DECLARE_METATYPE(YACReader::OpenComicSource)
|
||||
Q_DECLARE_METATYPE(YACReader::FileType)
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user