Fixed data base info retrieving through DBHelper, value(QString) should never be used because it is really slow. All items sorting should be done at db level or using std::sort.

This commit is contained in:
Luis Ángel San Martín
2017-08-26 16:16:11 +02:00
commit d6898e9a4e
1040 changed files with 102444 additions and 0 deletions

View File

@ -0,0 +1,37 @@
#ifndef COMIC_FILES_MANAGER_H
#define COMIC_FILES_MANAGER_H
#include <QObject>
#include <QList>
#include <QPair>
#include <QModelIndex>
//this class is intended to work in background, just use moveToThread and process to start working
class ComicFilesManager : public QObject
{
Q_OBJECT
public:
explicit ComicFilesManager(QObject *parent = 0);
void copyComicsTo(const QList<QPair<QString,QString> > & sourceComics, const QString & folderDest, const QModelIndex &dest);
void moveComicsTo(const QList<QPair<QString,QString> > & comics, const QString & folderDest, const QModelIndex &dest);
static QList<QPair<QString, QString> > getDroppedFiles(const QList<QUrl> & urls);
signals:
void currentComic(QString);
void progress(int);
void finished();
void success(QModelIndex); //at least one comics has been copied or moved
public slots:
void process();
void cancel();
protected:
bool move;
bool canceled;
QList<QPair<QString,QString> > comics;
QString folder;
QModelIndex folderDestinationModelIndex;
};
#endif // COMIC_FILES_MANAGER_H