mirror of
https://github.com/YACReader/yacreader
synced 2025-06-04 01:28:55 -04:00
added "set finished/unfinished" actions
This commit is contained in:
parent
2df465e3e5
commit
7e68a34d7e
@ -315,7 +315,7 @@ void TreeModel::setupFilteredModelData()
|
|||||||
db.close();
|
db.close();
|
||||||
QSqlDatabase::removeDatabase(_databasePath);
|
QSqlDatabase::removeDatabase(_databasePath);
|
||||||
|
|
||||||
endResetModel();
|
endResetModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TreeModel::setupFilteredModelData(QSqlQuery &sqlquery, TreeItem *parent)
|
void TreeModel::setupFilteredModelData(QSqlQuery &sqlquery, TreeItem *parent)
|
||||||
@ -453,3 +453,23 @@ void TreeModel::updateFolderCompletedStatus(const QModelIndexList &list, bool st
|
|||||||
|
|
||||||
emit dataChanged(index(list.first().row(),TreeModel::Name),index(list.last().row(),TreeModel::Completed));
|
emit dataChanged(index(list.first().row(),TreeModel::Name),index(list.last().row(),TreeModel::Completed));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TreeModel::updateFolderFinishedStatus(const QModelIndexList &list, bool status)
|
||||||
|
{
|
||||||
|
QSqlDatabase db = DataBaseManagement::loadDatabase(_databasePath);
|
||||||
|
db.transaction();
|
||||||
|
foreach (QModelIndex mi, list)
|
||||||
|
{
|
||||||
|
TreeItem * item = static_cast<TreeItem*>(mi.internalPointer());
|
||||||
|
item->setData(TreeModel::Finished,status);
|
||||||
|
|
||||||
|
Folder f = DBHelper::loadFolder(item->id,db);
|
||||||
|
f.setFinished(status);
|
||||||
|
DBHelper::update(f,db);
|
||||||
|
}
|
||||||
|
db.commit();
|
||||||
|
db.close();
|
||||||
|
QSqlDatabase::removeDatabase(_databasePath);
|
||||||
|
|
||||||
|
emit dataChanged(index(list.first().row(),TreeModel::Name),index(list.last().row(),TreeModel::Completed));
|
||||||
|
}
|
||||||
|
@ -83,6 +83,7 @@ public:
|
|||||||
bool isFilterEnabled(){return filterEnabled;};
|
bool isFilterEnabled(){return filterEnabled;};
|
||||||
|
|
||||||
void updateFolderCompletedStatus(const QModelIndexList & list, bool status);
|
void updateFolderCompletedStatus(const QModelIndexList & list, bool status);
|
||||||
|
void updateFolderFinishedStatus(const QModelIndexList & list, bool status);
|
||||||
|
|
||||||
enum Columns {
|
enum Columns {
|
||||||
Name = 0,
|
Name = 0,
|
||||||
|
@ -442,11 +442,16 @@ void LibraryWindow::createActions()
|
|||||||
openContainingFolderAction->setIcon(QIcon(":/images/open.png"));
|
openContainingFolderAction->setIcon(QIcon(":/images/open.png"));
|
||||||
|
|
||||||
setFolderAsNotCompletedAction = new QAction(this);
|
setFolderAsNotCompletedAction = new QAction(this);
|
||||||
setFolderAsNotCompletedAction->setText(tr("Set as not completed"));
|
setFolderAsNotCompletedAction->setText(tr("Set as uncompleted"));
|
||||||
|
|
||||||
setFolderAsCompletedAction = new QAction(this);
|
setFolderAsCompletedAction = new QAction(this);
|
||||||
setFolderAsCompletedAction->setText(tr("Set as completed"));
|
setFolderAsCompletedAction->setText(tr("Set as completed"));
|
||||||
|
|
||||||
|
setFolderAsFinishedAction = new QAction(this);
|
||||||
|
setFolderAsFinishedAction->setText(tr("Set as finished"));
|
||||||
|
|
||||||
|
setFolderAsNotFinishedAction = new QAction(this);
|
||||||
|
setFolderAsNotFinishedAction->setText(tr("Set as unfinished"));
|
||||||
|
|
||||||
openContainingFolderComicAction = new QAction(this);
|
openContainingFolderComicAction = new QAction(this);
|
||||||
openContainingFolderComicAction->setText(tr("Open containing folder..."));
|
openContainingFolderComicAction->setText(tr("Open containing folder..."));
|
||||||
@ -636,6 +641,13 @@ void LibraryWindow::createMenus()
|
|||||||
}
|
}
|
||||||
foldersView->addAction(setFolderAsNotCompletedAction);
|
foldersView->addAction(setFolderAsNotCompletedAction);
|
||||||
foldersView->addAction(setFolderAsCompletedAction);
|
foldersView->addAction(setFolderAsCompletedAction);
|
||||||
|
{
|
||||||
|
QAction *act = new QAction(this);
|
||||||
|
act->setSeparator(true);
|
||||||
|
foldersView->addAction(act);
|
||||||
|
}
|
||||||
|
foldersView->addAction(setFolderAsFinishedAction);
|
||||||
|
foldersView->addAction(setFolderAsNotFinishedAction);
|
||||||
|
|
||||||
selectedLibrary->addAction(updateLibraryAction);
|
selectedLibrary->addAction(updateLibraryAction);
|
||||||
selectedLibrary->addAction(renameLibraryAction);
|
selectedLibrary->addAction(renameLibraryAction);
|
||||||
@ -768,6 +780,8 @@ void LibraryWindow::createConnections()
|
|||||||
connect(openContainingFolderComicAction,SIGNAL(triggered()),this,SLOT(openContainingFolderComic()));
|
connect(openContainingFolderComicAction,SIGNAL(triggered()),this,SLOT(openContainingFolderComic()));
|
||||||
connect(setFolderAsNotCompletedAction,SIGNAL(triggered()),this,SLOT(setFolderAsNotCompleted()));
|
connect(setFolderAsNotCompletedAction,SIGNAL(triggered()),this,SLOT(setFolderAsNotCompleted()));
|
||||||
connect(setFolderAsCompletedAction,SIGNAL(triggered()),this,SLOT(setFolderAsCompleted()));
|
connect(setFolderAsCompletedAction,SIGNAL(triggered()),this,SLOT(setFolderAsCompleted()));
|
||||||
|
connect(setFolderAsFinishedAction,SIGNAL(triggered()),this,SLOT(setFolderAsFinished()));
|
||||||
|
connect(setFolderAsNotFinishedAction,SIGNAL(triggered()),this,SLOT(setFolderAsNotFinished()));
|
||||||
connect(openContainingFolderAction,SIGNAL(triggered()),this,SLOT(openContainingFolder()));
|
connect(openContainingFolderAction,SIGNAL(triggered()),this,SLOT(openContainingFolder()));
|
||||||
connect(resetComicRatingAction,SIGNAL(triggered()),this,SLOT(resetComicRating()));
|
connect(resetComicRatingAction,SIGNAL(triggered()),this,SLOT(resetComicRating()));
|
||||||
|
|
||||||
@ -1557,6 +1571,16 @@ void LibraryWindow::setFolderAsCompleted()
|
|||||||
dm->updateFolderCompletedStatus(foldersView->selectionModel()->selectedRows(),true);
|
dm->updateFolderCompletedStatus(foldersView->selectionModel()->selectedRows(),true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void LibraryWindow::setFolderAsFinished()
|
||||||
|
{
|
||||||
|
dm->updateFolderFinishedStatus(foldersView->selectionModel()->selectedRows(),true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void LibraryWindow::setFolderAsNotFinished()
|
||||||
|
{
|
||||||
|
dm->updateFolderFinishedStatus(foldersView->selectionModel()->selectedRows(),false);
|
||||||
|
}
|
||||||
|
|
||||||
void LibraryWindow::exportLibrary(QString destPath)
|
void LibraryWindow::exportLibrary(QString destPath)
|
||||||
{
|
{
|
||||||
QString currentLibrary = selectedLibrary->currentText();
|
QString currentLibrary = selectedLibrary->currentText();
|
||||||
|
@ -137,8 +137,12 @@ private:
|
|||||||
QAction * colapseAllNodesAction;
|
QAction * colapseAllNodesAction;
|
||||||
|
|
||||||
QAction * openContainingFolderAction;
|
QAction * openContainingFolderAction;
|
||||||
|
//--
|
||||||
QAction * setFolderAsNotCompletedAction;
|
QAction * setFolderAsNotCompletedAction;
|
||||||
QAction * setFolderAsCompletedAction;
|
QAction * setFolderAsCompletedAction;
|
||||||
|
//--
|
||||||
|
QAction * setFolderAsFinishedAction;
|
||||||
|
QAction * setFolderAsNotFinishedAction;
|
||||||
|
|
||||||
QAction * openContainingFolderComicAction;
|
QAction * openContainingFolderComicAction;
|
||||||
QAction * setAsReadAction;
|
QAction * setAsReadAction;
|
||||||
@ -236,6 +240,8 @@ public:
|
|||||||
void openContainingFolder();
|
void openContainingFolder();
|
||||||
void setFolderAsNotCompleted();
|
void setFolderAsNotCompleted();
|
||||||
void setFolderAsCompleted();
|
void setFolderAsCompleted();
|
||||||
|
void setFolderAsFinished();
|
||||||
|
void setFolderAsNotFinished();
|
||||||
void openContainingFolderComic();
|
void openContainingFolderComic();
|
||||||
void deleteCurrentLibrary();
|
void deleteCurrentLibrary();
|
||||||
void removeLibrary();
|
void removeLibrary();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user