Get tags related to the posts we are actuallly seeing.

TODO: Sort by size
This commit is contained in:
Luca Beltrame 2015-02-20 23:36:08 +01:00
parent 942d1ffd1e
commit fc20d57708

View file

@ -137,7 +137,6 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
m_view->rootObject()->setProperty("poolMode", QVariant(false)); m_view->rootObject()->setProperty("poolMode", QVariant(false));
m_service->setPostTags(QStringList()); m_service->setPostTags(QStringList());
m_service->getPostList(); m_service->getPostList();
m_service->getTagList(30);
} }
m_connectWidget->hide(); m_connectWidget->hide();
statusBar()->hide(); statusBar()->hide();
@ -193,6 +192,7 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
DanbooruMainWindow::~DanbooruMainWindow() DanbooruMainWindow::~DanbooruMainWindow()
{ {
disconnect(m_service, &DanbooruService::postDownloadFinished, this, 0);
} }
void DanbooruMainWindow::loadSettings() void DanbooruMainWindow::loadSettings()
@ -375,6 +375,17 @@ void DanbooruMainWindow::setupDockWidgets() {
qobject_cast<KDualAction*>(actionCollection()->action(QLatin1String("tags")))->setActive(visible); qobject_cast<KDualAction*>(actionCollection()->action(QLatin1String("tags")))->setActive(visible);
}); });
connect(m_service, &DanbooruService::postDownloadFinished, [this]() {
if (m_tagModel->rowCount() == 0) {
// Only get tags if we don't have any already
for (auto tag: m_model->postTags()) {
m_service->getTagList(1, tag);
}
}
});
} }
void DanbooruMainWindow::connectToBoard() void DanbooruMainWindow::connectToBoard()
@ -384,7 +395,6 @@ void DanbooruMainWindow::connectToBoard()
return; return;
} }
clearModels(); clearModels();
m_poolModel->clear(); m_poolModel->clear();
m_service->reset(); m_service->reset();
@ -399,13 +409,11 @@ void DanbooruMainWindow::downloadPosts()
return; return;
} }
qDebug() << "In download!";
clearModels(); clearModels();
m_service->setPostTags(QStringList()); m_service->setPostTags(QStringList());
m_view->rootObject()->setProperty("poolMode", QVariant(false)); m_view->rootObject()->setProperty("poolMode", QVariant(false));
m_service->getPostList(); m_service->getPostList();
m_service->getTagList(30); // m_service->getRelatedTags(m_model->postTags(), DanbooruTag::General);
} }