mirror of
https://github.com/YACReader/yacreader
synced 2026-03-20 12:39:48 -04:00
fixed lots of warnings
This commit is contained in:
@ -34,7 +34,7 @@ private:
|
||||
QStringList imageFiles;
|
||||
QVector<bool> imagesLoaded;
|
||||
QVector<bool> imagesSetted;
|
||||
uint numImagesLoaded;
|
||||
int numImagesLoaded;
|
||||
QTimer* updateTimer;
|
||||
ImageLoader* worker;
|
||||
virtual void wheelEvent(QWheelEvent * event);
|
||||
|
||||
@ -247,6 +247,7 @@ void ComicFlowWidgetGL::keyPressEvent(QKeyEvent* event)
|
||||
void ComicFlowWidgetGL::paintEvent(QPaintEvent *event)
|
||||
{
|
||||
//flow->paintEvent(event);
|
||||
ComicFlowWidget::paintEvent(event);
|
||||
}
|
||||
void ComicFlowWidgetGL::mousePressEvent(QMouseEvent* event)
|
||||
{
|
||||
|
||||
@ -602,7 +602,9 @@ ComicsInfoExporter::ComicsInfoExporter()
|
||||
|
||||
void ComicsInfoExporter::exportComicsInfo(QSqlDatabase & source, QSqlDatabase & dest)
|
||||
{
|
||||
|
||||
Q_UNUSED(source)
|
||||
Q_UNUSED(dest)
|
||||
//TODO check this method
|
||||
}
|
||||
|
||||
void ComicsInfoExporter::run()
|
||||
@ -619,7 +621,9 @@ ComicsInfoImporter::ComicsInfoImporter()
|
||||
|
||||
void ComicsInfoImporter::importComicsInfo(QSqlDatabase & source, QSqlDatabase & dest)
|
||||
{
|
||||
|
||||
Q_UNUSED(source)
|
||||
Q_UNUSED(dest)
|
||||
//TODO check this method
|
||||
}
|
||||
|
||||
void ComicsInfoImporter::run()
|
||||
|
||||
@ -10,21 +10,7 @@
|
||||
#include "db_helper.h"
|
||||
|
||||
//ci.number,ci.title,c.fileName,ci.numPages,c.id,c.parentId,c.path,ci.hash,ci.read
|
||||
enum Columns {
|
||||
Number = 0,
|
||||
Title = 1,
|
||||
FileName = 2,
|
||||
NumPages = 3,
|
||||
Id = 4,
|
||||
Parent_Id = 5,
|
||||
Path = 6,
|
||||
Hash = 7,
|
||||
ReadColumn = 8,
|
||||
IsBis = 9,
|
||||
CurrentPage = 10,
|
||||
Rating = 11,
|
||||
HasBeenOpened = 12
|
||||
};
|
||||
|
||||
|
||||
|
||||
TableModel::TableModel(QObject *parent)
|
||||
@ -52,6 +38,7 @@ TableModel::~TableModel()
|
||||
//! [2]
|
||||
int TableModel::columnCount(const QModelIndex &parent) const
|
||||
{
|
||||
Q_UNUSED(parent)
|
||||
if(_data.isEmpty())
|
||||
return 0;
|
||||
return _data.first()->columnCount();
|
||||
@ -64,7 +51,7 @@ QVariant TableModel::data(const QModelIndex &index, int role) const
|
||||
if (!index.isValid())
|
||||
return QVariant();
|
||||
|
||||
/*if (index.column() == Columns::Rating && role == Qt::DecorationRole)
|
||||
/*if (index.column() == TableModel::Rating && role == Qt::DecorationRole)
|
||||
{
|
||||
TableItem *item = static_cast<TableItem*>(index.internalPointer());
|
||||
return QPixmap(QString(":/images/rating%1.png").arg(item->data(index.column()).toInt()));
|
||||
@ -79,13 +66,13 @@ QVariant TableModel::data(const QModelIndex &index, int role) const
|
||||
{
|
||||
switch(index.column())//TODO obtener esto de la query
|
||||
{
|
||||
case 0:
|
||||
case TableModel::Number:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case 3:
|
||||
case TableModel::NumPages:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case 7:
|
||||
case TableModel::Hash:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case Columns::CurrentPage:
|
||||
case TableModel::CurrentPage:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
default:
|
||||
return QVariant(Qt::AlignLeft | Qt::AlignVCenter);
|
||||
@ -97,14 +84,14 @@ QVariant TableModel::data(const QModelIndex &index, int role) const
|
||||
return QVariant();
|
||||
|
||||
TableItem *item = static_cast<TableItem*>(index.internalPointer());
|
||||
if(index.column() == Columns::Hash)
|
||||
if(index.column() == TableModel::Hash)
|
||||
return QString::number(item->data(index.column()).toString().right(item->data(index.column()).toString().length()-40).toInt()/1024.0/1024.0,'f',2)+"Mb";
|
||||
if(index.column() == Columns::ReadColumn)
|
||||
return (item->data(Columns::CurrentPage).toInt()==item->data(Columns::NumPages).toInt() || item->data(Columns::ReadColumn).toBool())?QVariant(tr("yes")):QVariant(tr("no"));
|
||||
if(index.column() == Columns::CurrentPage)
|
||||
return item->data(Columns::HasBeenOpened).toBool()?item->data(index.column()):QVariant("-");
|
||||
if(index.column() == TableModel::ReadColumn)
|
||||
return (item->data(TableModel::CurrentPage).toInt()==item->data(TableModel::NumPages).toInt() || item->data(TableModel::ReadColumn).toBool())?QVariant(tr("yes")):QVariant(tr("no"));
|
||||
if(index.column() == TableModel::CurrentPage)
|
||||
return item->data(TableModel::HasBeenOpened).toBool()?item->data(index.column()):QVariant("-");
|
||||
|
||||
if (index.column() == Columns::Rating)
|
||||
if (index.column() == TableModel::Rating)
|
||||
return QVariant();
|
||||
|
||||
return item->data(index.column());
|
||||
@ -116,7 +103,7 @@ Qt::ItemFlags TableModel::flags(const QModelIndex &index) const
|
||||
{
|
||||
if (!index.isValid())
|
||||
return 0;
|
||||
if(index.column() == Columns::Rating)
|
||||
if(index.column() == TableModel::Rating)
|
||||
return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable;
|
||||
return Qt::ItemIsEnabled | Qt::ItemIsSelectable;
|
||||
}
|
||||
@ -130,21 +117,21 @@ QVariant TableModel::headerData(int section, Qt::Orientation orientation,
|
||||
{
|
||||
switch(section)//TODO obtener esto de la query
|
||||
{
|
||||
case 0:
|
||||
case TableModel::Number:
|
||||
return QVariant(QString("#"));
|
||||
case 1:
|
||||
case TableModel::Title:
|
||||
return QVariant(QString(tr("Title")));
|
||||
case 2:
|
||||
case TableModel::FileName:
|
||||
return QVariant(QString(tr("File Name")));
|
||||
case 3:
|
||||
case TableModel::NumPages:
|
||||
return QVariant(QString(tr("Pages")));
|
||||
case 7:
|
||||
case TableModel::Hash:
|
||||
return QVariant(QString(tr("Size")));
|
||||
case 8:
|
||||
case TableModel::ReadColumn:
|
||||
return QVariant(QString(tr("Read")));
|
||||
case Columns::CurrentPage:
|
||||
case TableModel::CurrentPage:
|
||||
return QVariant(QString(tr("Current Page")));
|
||||
case Columns::Rating:
|
||||
case TableModel::Rating:
|
||||
return QVariant(QString(tr("Rating")));
|
||||
}
|
||||
}
|
||||
@ -153,13 +140,13 @@ QVariant TableModel::headerData(int section, Qt::Orientation orientation,
|
||||
{
|
||||
switch(section)//TODO obtener esto de la query
|
||||
{
|
||||
case 0:
|
||||
case TableModel::Number:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case 3:
|
||||
case TableModel::NumPages:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case 7:
|
||||
case TableModel::Hash:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case Columns::CurrentPage:
|
||||
case TableModel::CurrentPage:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
default:
|
||||
return QVariant(Qt::AlignLeft | Qt::AlignVCenter);
|
||||
@ -169,7 +156,7 @@ QVariant TableModel::headerData(int section, Qt::Orientation orientation,
|
||||
|
||||
if(orientation == Qt::Vertical && role == Qt::DecorationRole)
|
||||
{
|
||||
QString fileName = _data.value(section)->data(Columns::FileName).toString();
|
||||
QString fileName = _data.value(section)->data(TableModel::FileName).toString();
|
||||
QFileInfo fi(fileName);
|
||||
QString ext = fi.suffix();
|
||||
|
||||
@ -212,14 +199,14 @@ QModelIndex TableModel::index(int row, int column, const QModelIndex &parent)
|
||||
//! [7]
|
||||
QModelIndex TableModel::parent(const QModelIndex &index) const
|
||||
{
|
||||
return QModelIndex();
|
||||
Q_UNUSED(index)
|
||||
return QModelIndex();
|
||||
}
|
||||
//! [7]
|
||||
|
||||
//! [8]
|
||||
int TableModel::rowCount(const QModelIndex &parent) const
|
||||
{
|
||||
TreeItem *parentItem;
|
||||
if (parent.column() > 0)
|
||||
return 0;
|
||||
|
||||
@ -237,7 +224,7 @@ QStringList TableModel::getPaths(const QString & _source)
|
||||
QList<TableItem *>::ConstIterator itr;
|
||||
for(itr = _data.constBegin();itr != _data.constEnd();itr++)
|
||||
{
|
||||
QString hash = (*itr)->data(Columns::Hash).toString();
|
||||
QString hash = (*itr)->data(TableModel::Hash).toString();
|
||||
paths << source+ hash +".jpg";
|
||||
}
|
||||
|
||||
@ -280,7 +267,7 @@ void TableModel::setupModelData(unsigned long long int folderId,const QString &
|
||||
QString TableModel::getComicPath(QModelIndex mi)
|
||||
{
|
||||
if(mi.isValid())
|
||||
return _data.at(mi.row())->data(Columns::Path).toString();
|
||||
return _data.at(mi.row())->data(TableModel::Path).toString();
|
||||
return "";
|
||||
}
|
||||
#define NUMBER_MAX 99999999
|
||||
@ -301,16 +288,16 @@ void TableModel::setupModelData(QSqlQuery &sqlquery)
|
||||
else
|
||||
{
|
||||
TableItem * last = _data.back();
|
||||
QString nameLast = last->data(Columns::FileName).toString();
|
||||
QString nameCurrent = currentItem->data(Columns::FileName).toString();
|
||||
QString nameLast = last->data(TableModel::FileName).toString();
|
||||
QString nameCurrent = currentItem->data(TableModel::FileName).toString();
|
||||
int numberLast,numberCurrent;
|
||||
numberLast = numberCurrent = NUMBER_MAX; //TODO change by std limit
|
||||
|
||||
if(!last->data(Columns::Number).isNull())
|
||||
numberLast = last->data(Columns::Number).toInt();
|
||||
if(!last->data(TableModel::Number).isNull())
|
||||
numberLast = last->data(TableModel::Number).toInt();
|
||||
|
||||
if(!currentItem->data(Columns::Number).isNull())
|
||||
numberCurrent = currentItem->data(Columns::Number).toInt();
|
||||
if(!currentItem->data(TableModel::Number).isNull())
|
||||
numberCurrent = currentItem->data(TableModel::Number).toInt();
|
||||
|
||||
QList<TableItem *>::iterator i;
|
||||
i = _data.end();
|
||||
@ -323,8 +310,8 @@ void TableModel::setupModelData(QSqlQuery &sqlquery)
|
||||
i--;
|
||||
numberLast = NUMBER_MAX; //TODO change by std limit
|
||||
|
||||
if(!(*i)->data(Columns::Number).isNull())
|
||||
numberLast = (*i)->data(Columns::Number).toInt();
|
||||
if(!(*i)->data(TableModel::Number).isNull())
|
||||
numberLast = (*i)->data(TableModel::Number).toInt();
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -332,11 +319,11 @@ void TableModel::setupModelData(QSqlQuery &sqlquery)
|
||||
while ((lessThan = naturalSortLessThanCI(nameCurrent,nameLast)) && i != _data.begin() && numberLast == 99999999)
|
||||
{
|
||||
i--;
|
||||
nameLast = (*i)->data(Columns::FileName).toString();
|
||||
nameLast = (*i)->data(TableModel::FileName).toString();
|
||||
numberLast = NUMBER_MAX; //TODO change by std limit
|
||||
|
||||
if(!(*i)->data(Columns::Number).isNull())
|
||||
numberLast = (*i)->data(Columns::Number).toInt();
|
||||
if(!(*i)->data(TableModel::Number).isNull())
|
||||
numberLast = (*i)->data(TableModel::Number).toInt();
|
||||
}
|
||||
|
||||
}
|
||||
@ -345,7 +332,7 @@ void TableModel::setupModelData(QSqlQuery &sqlquery)
|
||||
if(numberCurrent != NUMBER_MAX)
|
||||
{
|
||||
if(numberCurrent == numberLast)
|
||||
if(currentItem->data(Columns::IsBis).toBool())
|
||||
if(currentItem->data(TableModel::IsBis).toBool())
|
||||
{
|
||||
_data.insert(++i,currentItem);
|
||||
}
|
||||
@ -369,7 +356,7 @@ void TableModel::setupModelData(QSqlQuery &sqlquery)
|
||||
ComicDB TableModel::getComic(const QModelIndex & mi)
|
||||
{
|
||||
QSqlDatabase db = DataBaseManagement::loadDatabase(_databasePath);
|
||||
ComicDB c = DBHelper::loadComic(_data.at(mi.row())->data(Columns::Id).toULongLong(),db);
|
||||
ComicDB c = DBHelper::loadComic(_data.at(mi.row())->data(TableModel::Id).toULongLong(),db);
|
||||
db.close();
|
||||
QSqlDatabase::removeDatabase(_databasePath);
|
||||
|
||||
@ -379,7 +366,7 @@ ComicDB TableModel::getComic(const QModelIndex & mi)
|
||||
ComicDB TableModel::_getComic(const QModelIndex & mi)
|
||||
{
|
||||
QSqlDatabase db = DataBaseManagement::loadDatabase(_databasePath);
|
||||
ComicDB c = DBHelper::loadComic(_data.at(mi.row())->data(Columns::Id).toULongLong(),db);
|
||||
ComicDB c = DBHelper::loadComic(_data.at(mi.row())->data(TableModel::Id).toULongLong(),db);
|
||||
db.close();
|
||||
QSqlDatabase::removeDatabase(_databasePath);
|
||||
|
||||
@ -393,14 +380,14 @@ QVector<YACReaderComicReadStatus> TableModel::getReadList()
|
||||
QVector<YACReaderComicReadStatus> readList(numComics);
|
||||
for(int i=0;i<numComics;i++)
|
||||
{
|
||||
if(_data.value(i)->data(Columns::ReadColumn).toBool())
|
||||
readList[i] = YACReaderComicReadStatus::Read;
|
||||
else if (_data.value(i)->data(Columns::CurrentPage).toInt() == _data.value(i)->data(Columns::NumPages).toInt())
|
||||
readList[i] = YACReaderComicReadStatus::Read;
|
||||
else if (_data.value(i)->data(Columns::HasBeenOpened).toBool())
|
||||
readList[i] = YACReaderComicReadStatus::Opened;
|
||||
if(_data.value(i)->data(TableModel::ReadColumn).toBool())
|
||||
readList[i] = YACReader::Read;
|
||||
else if (_data.value(i)->data(TableModel::CurrentPage).toInt() == _data.value(i)->data(TableModel::NumPages).toInt())
|
||||
readList[i] = YACReader::Read;
|
||||
else if (_data.value(i)->data(TableModel::HasBeenOpened).toBool())
|
||||
readList[i] = YACReader::Opened;
|
||||
else
|
||||
readList[i] = YACReaderComicReadStatus::Unread;
|
||||
readList[i] = YACReader::Unread;
|
||||
}
|
||||
return readList;
|
||||
}
|
||||
@ -414,17 +401,17 @@ QVector<YACReaderComicReadStatus> TableModel::setAllComicsRead(YACReaderComicRea
|
||||
for(int i=0;i<numComics;i++)
|
||||
{
|
||||
readList[i] = read;
|
||||
if(read == YACReaderComicReadStatus::Read)
|
||||
if(read == YACReader::Read)
|
||||
{
|
||||
_data.value(i)->setData(Columns::ReadColumn,QVariant(true));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(i)->data(Columns::Id).toULongLong(),db);
|
||||
_data.value(i)->setData(TableModel::ReadColumn,QVariant(true));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(i)->data(TableModel::Id).toULongLong(),db);
|
||||
c.info.read = true;
|
||||
DBHelper::update(&(c.info),db);
|
||||
}
|
||||
if(read == YACReaderComicReadStatus::Unread)
|
||||
if(read == YACReader::Unread)
|
||||
{
|
||||
_data.value(i)->setData(Columns::ReadColumn,QVariant(false));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(i)->data(Columns::Id).toULongLong(),db);
|
||||
_data.value(i)->setData(TableModel::ReadColumn,QVariant(false));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(i)->data(TableModel::Id).toULongLong(),db);
|
||||
c.info.read = false;
|
||||
DBHelper::update(&(c.info),db);
|
||||
}
|
||||
@ -433,7 +420,7 @@ QVector<YACReaderComicReadStatus> TableModel::setAllComicsRead(YACReaderComicRea
|
||||
db.close();
|
||||
QSqlDatabase::removeDatabase(_databasePath);
|
||||
|
||||
emit dataChanged(index(0,Columns::ReadColumn),index(numComics-1,Columns::ReadColumn));
|
||||
emit dataChanged(index(0,TableModel::ReadColumn),index(numComics-1,TableModel::ReadColumn));
|
||||
|
||||
return readList;
|
||||
}
|
||||
@ -447,7 +434,7 @@ QList<ComicDB> TableModel::getAllComics()
|
||||
int numComics = _data.count();
|
||||
for(int i=0;i<numComics;i++)
|
||||
{
|
||||
comics.append(DBHelper::loadComic(_data.value(i)->data(Columns::Id).toULongLong(),db));
|
||||
comics.append(DBHelper::loadComic(_data.value(i)->data(TableModel::Id).toULongLong(),db));
|
||||
}
|
||||
|
||||
db.commit();
|
||||
@ -480,17 +467,17 @@ QVector<YACReaderComicReadStatus> TableModel::setComicsRead(QList<QModelIndex> l
|
||||
db.transaction();
|
||||
foreach (QModelIndex mi, list)
|
||||
{
|
||||
if(read == YACReaderComicReadStatus::Read)
|
||||
if(read == YACReader::Read)
|
||||
{
|
||||
_data.value(mi.row())->setData(Columns::ReadColumn, QVariant(true));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(Columns::Id).toULongLong(),db);
|
||||
_data.value(mi.row())->setData(TableModel::ReadColumn, QVariant(true));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(TableModel::Id).toULongLong(),db);
|
||||
c.info.read = true;
|
||||
DBHelper::update(&(c.info),db);
|
||||
}
|
||||
if(read == YACReaderComicReadStatus::Unread)
|
||||
if(read == YACReader::Unread)
|
||||
{
|
||||
_data.value(mi.row())->setData(Columns::ReadColumn, QVariant(false));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(Columns::Id).toULongLong(),db);
|
||||
_data.value(mi.row())->setData(TableModel::ReadColumn, QVariant(false));
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(TableModel::Id).toULongLong(),db);
|
||||
c.info.read = false;
|
||||
DBHelper::update(&(c.info),db);
|
||||
}
|
||||
@ -499,7 +486,7 @@ QVector<YACReaderComicReadStatus> TableModel::setComicsRead(QList<QModelIndex> l
|
||||
db.close();
|
||||
QSqlDatabase::removeDatabase(_databasePath);
|
||||
|
||||
emit dataChanged(index(list.first().row(),Columns::ReadColumn),index(list.last().row(),Columns::ReadColumn));
|
||||
emit dataChanged(index(list.first().row(),TableModel::ReadColumn),index(list.last().row(),TableModel::ReadColumn));
|
||||
|
||||
return getReadList();
|
||||
}
|
||||
@ -507,11 +494,11 @@ qint64 TableModel::asignNumbers(QList<QModelIndex> list,int startingNumber)
|
||||
{
|
||||
QSqlDatabase db = DataBaseManagement::loadDatabase(_databasePath);
|
||||
db.transaction();
|
||||
qint64 idFirst = _data.value(list[0].row())->data(Columns::Id).toULongLong();
|
||||
qint64 idFirst = _data.value(list[0].row())->data(TableModel::Id).toULongLong();
|
||||
int i = 0;
|
||||
foreach (QModelIndex mi, list)
|
||||
{
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(Columns::Id).toULongLong(),db);
|
||||
ComicDB c = DBHelper::loadComic(_data.value(mi.row())->data(TableModel::Id).toULongLong(),db);
|
||||
c.info.setNumber(startingNumber+i);
|
||||
c.info.edited = true;
|
||||
DBHelper::update(&(c.info),db);
|
||||
@ -532,7 +519,7 @@ QModelIndex TableModel::getIndexFromId(quint64 id)
|
||||
int i=0;
|
||||
for(itr = _data.constBegin();itr != _data.constEnd();itr++)
|
||||
{
|
||||
if((*itr)->data(Columns::Id).toULongLong() == id)
|
||||
if((*itr)->data(TableModel::Id).toULongLong() == id)
|
||||
break;
|
||||
i++;
|
||||
}
|
||||
@ -558,7 +545,7 @@ void TableModel::finishTransaction()
|
||||
|
||||
void TableModel::removeInTransaction(int row)
|
||||
{
|
||||
ComicDB c = DBHelper::loadComic(_data.at(row)->data(Columns::Id).toULongLong(),dbTransaction);
|
||||
ComicDB c = DBHelper::loadComic(_data.at(row)->data(TableModel::Id).toULongLong(),dbTransaction);
|
||||
|
||||
DBHelper::removeFromDB(&c,dbTransaction);
|
||||
beginRemoveRows(QModelIndex(),row,row);
|
||||
@ -601,18 +588,18 @@ void TableModel::reload(const ComicDB & comic)
|
||||
bool found = false;
|
||||
foreach(TableItem * item,_data)
|
||||
{
|
||||
if(item->data(Columns::Id).toULongLong() == comic.id)
|
||||
if(item->data(TableModel::Id).toULongLong() == comic.id)
|
||||
{
|
||||
found = true;
|
||||
item->setData(Columns::CurrentPage,comic.info.currentPage);
|
||||
item->setData(Columns::HasBeenOpened,true);
|
||||
item->setData(TableModel::CurrentPage,comic.info.currentPage);
|
||||
item->setData(TableModel::HasBeenOpened,true);
|
||||
break;
|
||||
|
||||
}
|
||||
row++;
|
||||
}
|
||||
if(found)
|
||||
emit dataChanged(index(row,Columns::CurrentPage),index(row,Columns::CurrentPage));
|
||||
emit dataChanged(index(row,TableModel::CurrentPage),index(row,TableModel::CurrentPage));
|
||||
}
|
||||
|
||||
void TableModel::updateRating(int rating, QModelIndex mi)
|
||||
@ -623,7 +610,7 @@ void TableModel::updateRating(int rating, QModelIndex mi)
|
||||
//TODO optimize update
|
||||
|
||||
comic.info.rating = rating;
|
||||
_data[mi.row()]->setData(Columns::Rating,rating);
|
||||
_data[mi.row()]->setData(TableModel::Rating,rating);
|
||||
DBHelper::update(&(comic.info),db);
|
||||
|
||||
emit dataChanged(mi,mi);
|
||||
|
||||
@ -13,6 +13,8 @@ class ComicDB;
|
||||
|
||||
class TableItem;
|
||||
|
||||
using namespace YACReader;
|
||||
|
||||
//! [0]
|
||||
class TableModel : public QAbstractItemModel
|
||||
{
|
||||
@ -22,8 +24,7 @@ public:
|
||||
TableModel(QObject *parent = 0);
|
||||
TableModel( QSqlQuery &sqlquery, QObject *parent = 0);
|
||||
~TableModel();
|
||||
|
||||
|
||||
|
||||
QVariant data(const QModelIndex &index, int role) const;
|
||||
Qt::ItemFlags flags(const QModelIndex &index) const;
|
||||
QVariant headerData(int section, Qt::Orientation orientation,
|
||||
@ -54,6 +55,21 @@ public:
|
||||
void removeInTransaction(int row);
|
||||
void reload(const ComicDB & comic);
|
||||
|
||||
enum Columns {
|
||||
Number = 0,
|
||||
Title = 1,
|
||||
FileName = 2,
|
||||
NumPages = 3,
|
||||
Id = 4,
|
||||
Parent_Id = 5,
|
||||
Path = 6,
|
||||
Hash = 7,
|
||||
ReadColumn = 8,
|
||||
IsBis = 9,
|
||||
CurrentPage = 10,
|
||||
Rating = 11,
|
||||
HasBeenOpened = 12
|
||||
};
|
||||
public slots:
|
||||
void remove(int row);
|
||||
void startTransaction();
|
||||
|
||||
@ -184,6 +184,8 @@ void DBHelper::removeFromDB(ComicDB * comic, QSqlDatabase & db)
|
||||
//updates
|
||||
void DBHelper::update(ComicDB * comic, QSqlDatabase & db)
|
||||
{
|
||||
Q_UNUSED(comic)
|
||||
Q_UNUSED(db)
|
||||
//do nothing
|
||||
}
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
#include <QVBoxLayout>
|
||||
#include <QFileDialog>
|
||||
#include <QGridLayout>
|
||||
|
||||
#include <QCloseEvent>
|
||||
|
||||
ImportLibraryDialog::ImportLibraryDialog(QWidget * parent)
|
||||
:QDialog(parent),progressCount(0)
|
||||
@ -153,4 +153,5 @@ void ImportLibraryDialog::close()
|
||||
void ImportLibraryDialog::closeEvent ( QCloseEvent * e )
|
||||
{
|
||||
close();
|
||||
e->accept();
|
||||
}
|
||||
|
||||
@ -281,7 +281,7 @@ void ImportWidget::finishedUpdatingCover()
|
||||
|
||||
void ImportWidget::newCover(const QPixmap & image)
|
||||
{
|
||||
|
||||
Q_UNUSED(image)
|
||||
}
|
||||
static int i = 1;
|
||||
static int previousWidth = 10;
|
||||
@ -348,7 +348,7 @@ void ImportWidget::clear()
|
||||
|
||||
currentComicLabel->setText("<font color=\"#565959\">...</font>");
|
||||
|
||||
i = 0;
|
||||
this->i = 0;
|
||||
}
|
||||
|
||||
void ImportWidget::setImportLook()
|
||||
|
||||
@ -226,7 +226,6 @@ void LibraryCreator::update(QDir dirS)
|
||||
|
||||
int lenghtS = listS.size();
|
||||
int lenghtD = listD.size();
|
||||
int maxLenght = qMax(lenghtS,lenghtD);
|
||||
|
||||
bool updated;
|
||||
int i,j;
|
||||
|
||||
@ -1035,7 +1035,7 @@ void LibraryWindow::setCurrentComicsStatusReaded(YACReaderComicReadStatus readSt
|
||||
|
||||
void LibraryWindow::setCurrentComicReaded()
|
||||
{
|
||||
this->setCurrentComicsStatusReaded(YACReaderComicReadStatus::Read);
|
||||
this->setCurrentComicsStatusReaded(YACReader::Read);
|
||||
}
|
||||
|
||||
void LibraryWindow::setCurrentComicOpened()
|
||||
@ -1045,18 +1045,18 @@ void LibraryWindow::setCurrentComicOpened()
|
||||
|
||||
void LibraryWindow::setComicsReaded()
|
||||
{
|
||||
comicFlow->setMarks(dmCV->setAllComicsRead(YACReaderComicReadStatus::Read));
|
||||
comicFlow->setMarks(dmCV->setAllComicsRead(YACReader::Read));
|
||||
comicFlow->updateMarks();
|
||||
}
|
||||
|
||||
void LibraryWindow::setCurrentComicUnreaded()
|
||||
{
|
||||
this->setCurrentComicsStatusReaded(YACReaderComicReadStatus::Unread);
|
||||
this->setCurrentComicsStatusReaded(YACReader::Unread);
|
||||
}
|
||||
|
||||
void LibraryWindow::setComicsUnreaded()
|
||||
{
|
||||
comicFlow->setMarks(dmCV->setAllComicsRead(YACReaderComicReadStatus::Unread));
|
||||
comicFlow->setMarks(dmCV->setAllComicsRead(YACReader::Unread));
|
||||
comicFlow->updateMarks();
|
||||
}
|
||||
|
||||
@ -1523,6 +1523,7 @@ void LibraryWindow::closeEvent ( QCloseEvent * event )
|
||||
{
|
||||
settings->setValue(MAIN_WINDOW_GEOMETRY, saveGeometry());
|
||||
settings->setValue(COMICS_VIEW_HEADERS,comicView->horizontalHeader()->saveState());
|
||||
event->accept();
|
||||
//settings->setValue(COMICS_VIEW_HEADERS_GEOMETRY,comicView->horizontalHeader()->saveGeometry());
|
||||
}
|
||||
|
||||
|
||||
@ -50,6 +50,8 @@ class YACReaderTreeView;
|
||||
class YACReaderMainToolBar;
|
||||
#include "comic_db.h"
|
||||
|
||||
using namespace YACReader;
|
||||
|
||||
class LibraryWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
|
||||
#include "yacreader_global.h"
|
||||
|
||||
extern FlowType flowType;
|
||||
using namespace YACReader;
|
||||
|
||||
class OptionsDialog : public YACReaderOptionsDialog
|
||||
{
|
||||
|
||||
@ -10,6 +10,7 @@ ErrorController::ErrorController(int errorCode)
|
||||
|
||||
void ErrorController::service(HttpRequest& request, HttpResponse& response)
|
||||
{
|
||||
Q_UNUSED(request)
|
||||
switch(error)
|
||||
{
|
||||
case 300:
|
||||
|
||||
@ -119,10 +119,10 @@ void FolderController::service(HttpRequest& request, HttpResponse& response)
|
||||
int elementsPerPage = 18;
|
||||
|
||||
int numFolders = folderContent.length();
|
||||
int numComics = folderComics.length();
|
||||
//int numComics = folderComics.length();
|
||||
int totalLength = folderContent.length() + folderComics.length();
|
||||
|
||||
int numFolderPages = numFolders / elementsPerPage + ((numFolders%elementsPerPage)>0?1:0);
|
||||
// int numFolderPages = numFolders / elementsPerPage + ((numFolders%elementsPerPage)>0?1:0);
|
||||
int numPages = totalLength / elementsPerPage + ((totalLength%elementsPerPage)>0?1:0);
|
||||
|
||||
//response.writeText(QString("Number of pages : %1 <br/>").arg(numPages));
|
||||
@ -237,7 +237,7 @@ void FolderController::service(HttpRequest& request, HttpResponse& response)
|
||||
firstChar = QString((*itr)->name[0]).toUpper();
|
||||
firstChar = firstChar.normalized(QString::NormalizationForm_D).at(0);//TODO _D or _KD??
|
||||
bool ok;
|
||||
int dec = firstChar.toInt(&ok, 10);
|
||||
/*int dec = */firstChar.toInt(&ok, 10);
|
||||
if(ok)
|
||||
firstChar = "#";
|
||||
//response.writeText(QString("%1 - %2 <br />").arg((*itr)->name).arg(xyz));
|
||||
|
||||
@ -9,154 +9,154 @@
|
||||
|
||||
|
||||
HttpSession::HttpSession(bool canStore) {
|
||||
if (canStore) {
|
||||
dataPtr=new HttpSessionData();
|
||||
dataPtr->refCount=1;
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->id=QUuid::createUuid().toString().toAscii();
|
||||
if (canStore) {
|
||||
dataPtr=new HttpSessionData();
|
||||
dataPtr->refCount=1;
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->id=QUuid::createUuid().toString().toAscii();
|
||||
dataPtr->yacreaderSessionData.comic = 0;
|
||||
dataPtr->yacreaderSessionData.comicId = 0;
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpSession: created new session data with id %s",dataPtr->id.data());
|
||||
qDebug("HttpSession: created new session data with id %s",dataPtr->id.data());
|
||||
#endif
|
||||
}
|
||||
else {
|
||||
dataPtr=0;
|
||||
}
|
||||
}
|
||||
else {
|
||||
dataPtr=0;
|
||||
}
|
||||
}
|
||||
|
||||
HttpSession::HttpSession(const HttpSession& other) {
|
||||
dataPtr=other.dataPtr;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->refCount++;
|
||||
dataPtr=other.dataPtr;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->refCount++;
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
#endif
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
HttpSession& HttpSession::operator= (const HttpSession& other) {
|
||||
HttpSessionData* oldPtr=dataPtr;
|
||||
dataPtr=other.dataPtr;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->refCount++;
|
||||
HttpSessionData* oldPtr=dataPtr;
|
||||
dataPtr=other.dataPtr;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->refCount++;
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
#endif
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
if (oldPtr) {
|
||||
int refCount;
|
||||
oldPtr->lock.lockForRead();
|
||||
refCount=oldPtr->refCount--;
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
if (oldPtr) {
|
||||
int refCount;
|
||||
oldPtr->lock.lockForRead();
|
||||
refCount=oldPtr->refCount--;
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpSession: refCount of %s is %i",oldPtr->id.data(),oldPtr->refCount);
|
||||
qDebug("HttpSession: refCount of %s is %i",oldPtr->id.data(),oldPtr->refCount);
|
||||
#endif
|
||||
oldPtr->lock.unlock();
|
||||
if (refCount==0) {
|
||||
delete oldPtr;
|
||||
}
|
||||
}
|
||||
return *this;
|
||||
oldPtr->lock.unlock();
|
||||
if (refCount==0) {
|
||||
delete oldPtr;
|
||||
}
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
HttpSession::~HttpSession() {
|
||||
if (dataPtr) {
|
||||
int refCount;
|
||||
dataPtr->lock.lockForRead();
|
||||
refCount=--dataPtr->refCount;
|
||||
if (dataPtr) {
|
||||
int refCount;
|
||||
dataPtr->lock.lockForRead();
|
||||
refCount=--dataPtr->refCount;
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
qDebug("HttpSession: refCount of %s is %i",dataPtr->id.data(),dataPtr->refCount);
|
||||
#endif
|
||||
dataPtr->lock.unlock();
|
||||
if (refCount==0) {
|
||||
qDebug("HttpSession: deleting data");
|
||||
delete dataPtr;
|
||||
}
|
||||
}
|
||||
dataPtr->lock.unlock();
|
||||
if (refCount==0) {
|
||||
qDebug("HttpSession: deleting data");
|
||||
delete dataPtr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
QByteArray HttpSession::getId() const {
|
||||
if (dataPtr) {
|
||||
return dataPtr->id;
|
||||
}
|
||||
else {
|
||||
return QByteArray();
|
||||
}
|
||||
if (dataPtr) {
|
||||
return dataPtr->id;
|
||||
}
|
||||
else {
|
||||
return QByteArray();
|
||||
}
|
||||
}
|
||||
|
||||
bool HttpSession::isNull() const {
|
||||
return dataPtr==0;
|
||||
return dataPtr==0;
|
||||
}
|
||||
|
||||
void HttpSession::set(const QByteArray& key, const QVariant& value) {
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->values.insert(key,value);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->values.insert(key,value);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
void HttpSession::remove(const QByteArray& key) {
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->values.remove(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForWrite();
|
||||
dataPtr->values.remove(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
QVariant HttpSession::get(const QByteArray& key) const {
|
||||
QVariant value;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
value=dataPtr->values.value(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return value;
|
||||
QVariant value;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
value=dataPtr->values.value(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
bool HttpSession::contains(const QByteArray& key) const {
|
||||
bool found=false;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
found=dataPtr->values.contains(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return found;
|
||||
bool found=false;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
found=dataPtr->values.contains(key);
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return found;
|
||||
}
|
||||
|
||||
QMap<QByteArray,QVariant> HttpSession::getAll() const {
|
||||
QMap<QByteArray,QVariant> values;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
values=dataPtr->values;
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return values;
|
||||
QMap<QByteArray,QVariant> values;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
values=dataPtr->values;
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return values;
|
||||
}
|
||||
|
||||
qint64 HttpSession::getLastAccess() const {
|
||||
qint64 value=0;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
value=dataPtr->lastAccess;
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return value;
|
||||
qint64 value=0;
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
value=dataPtr->lastAccess;
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
void HttpSession::setLastAccess() {
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
if (dataPtr) {
|
||||
dataPtr->lock.lockForRead();
|
||||
dataPtr->lastAccess=QDateTime::currentMSecsSinceEpoch();
|
||||
dataPtr->lock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
//A<>ADIDO
|
||||
@ -292,6 +292,7 @@ int HttpSession::popPage()
|
||||
{
|
||||
if(dataPtr && !(dataPtr->yacreaderSessionData.navigationPath.isEmpty()))
|
||||
return dataPtr->yacreaderSessionData.navigationPath.pop();
|
||||
return 0;
|
||||
}
|
||||
|
||||
void HttpSession::pushPage(int page)
|
||||
@ -304,4 +305,5 @@ int HttpSession::topPage()
|
||||
{
|
||||
if(dataPtr)
|
||||
return dataPtr->yacreaderSessionData.navigationPath.top();
|
||||
return 0;
|
||||
}
|
||||
@ -8,6 +8,8 @@
|
||||
|
||||
#include "comic_db.h"
|
||||
|
||||
using namespace YACReader;
|
||||
|
||||
YACReaderLocalServer::YACReaderLocalServer(QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
@ -90,7 +92,7 @@ void YACReaderClientConnectionWorker::run()
|
||||
|
||||
switch (msgType)
|
||||
{
|
||||
case YACReaderIPCMessages::RequestComicInfo:
|
||||
case YACReader::RequestComicInfo:
|
||||
{
|
||||
QList<ComicDB> siblings;
|
||||
getComicInfo(libraryId,comic,siblings);
|
||||
@ -119,7 +121,7 @@ void YACReaderClientConnectionWorker::run()
|
||||
}
|
||||
break;
|
||||
}
|
||||
case YACReaderIPCMessages::SendComicInfo:
|
||||
case YACReader::SendComicInfo:
|
||||
{
|
||||
updateComic(libraryId,comic);
|
||||
//clientConnection->disconnectFromServer();
|
||||
|
||||
Reference in New Issue
Block a user