mirror of
https://github.com/YACReader/yacreader
synced 2025-06-04 01:28:55 -04:00
completada la b?squeda con el soporte para incluir el nombre de los archivos, aunque falta por a?adir el scroll autom?tico arreglada la actualizaci?n de las librer?as, ahora se a?ade el nodo ra?z a la tabla folder, el nodo ra?z ahora tiene id=1 y padre 1, se debe excluir de todas las b?squedas
77 lines
2.0 KiB
C++
77 lines
2.0 KiB
C++
#ifndef __LIBRARY_CREATOR_H
|
|
#define __LIBRARY_CREATOR_H
|
|
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QDir>
|
|
#include <QFile>
|
|
#include <QByteArray>
|
|
#include <QRegExp>
|
|
#include <QProcess>
|
|
#include <QtCore>
|
|
#include <QtGui>
|
|
#include <QMutex>
|
|
#include <QThread>
|
|
#include <QSqlDatabase>
|
|
|
|
#include "folder.h"
|
|
#include "comic.h"
|
|
|
|
|
|
class LibraryCreator : public QThread
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
LibraryCreator();
|
|
void createLibrary(const QString & source, const QString & target);
|
|
void updateLibrary(const QString & source, const QString & target);
|
|
void stop();
|
|
private:
|
|
enum Mode {CREATOR,UPDATER};
|
|
//atributos "globales" durante el proceso de creación y actualización
|
|
enum Mode _mode;
|
|
QString _source;
|
|
QString _target;
|
|
QStringList _nameFilter;
|
|
QSqlDatabase _database;
|
|
QList<Folder> _currentPathFolders; //lista de folders en el orden en el que están siendo explorados, el último es el folder actual
|
|
//recursive method
|
|
void create(QDir currentDirectory);
|
|
void update(QDir currentDirectory);
|
|
void run();
|
|
qulonglong insertFolders();//devuelve el id del último folder añadido (último en la ruta)
|
|
void insertComic(const QString & relativePath,const QFileInfo & fileInfo);
|
|
//qulonglong insertFolder(qulonglong parentId,const Folder & folder);
|
|
//qulonglong insertComic(const Comic & comic);
|
|
bool stopRunning;
|
|
signals:
|
|
void finished();
|
|
void coverExtracted(QString);
|
|
void folderUpdated(QString);
|
|
};
|
|
|
|
class ThumbnailCreator : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
ThumbnailCreator(QString fileSource, QString target);
|
|
private:
|
|
QProcess * _7z;
|
|
QString _fileSource;
|
|
QString _target;
|
|
QString _currentName;
|
|
int _numPages;
|
|
QPixmap _cover;
|
|
|
|
public slots:
|
|
void create();
|
|
int getNumPages(){return _numPages;};
|
|
QPixmap getCover(){return _cover;};
|
|
signals:
|
|
void openingError(QProcess::ProcessError error);
|
|
|
|
};
|
|
|
|
#endif
|