Use kdelibs coding style
This commit is contained in:
parent
0084798a2c
commit
d965371d23
31 changed files with 201 additions and 234 deletions
|
@ -20,7 +20,8 @@
|
|||
#include "blacklistpage.h"
|
||||
#include "danboorusettings.h"
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
BlacklistPage::BlacklistPage(DanbooruSettings *preferences, QWidget *parent): QWidget(parent)
|
||||
{
|
||||
|
@ -29,10 +30,8 @@ BlacklistPage::BlacklistPage(DanbooruSettings *preferences, QWidget *parent): QW
|
|||
|
||||
}
|
||||
|
||||
|
||||
BlacklistPage::~BlacklistPage()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
} // namespace Danbooru
|
|
@ -22,22 +22,22 @@
|
|||
|
||||
#include "ui_blacklistpage.h"
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruSettings;
|
||||
|
||||
class BlacklistPage: public QWidget, public Ui::BlacklistPage {
|
||||
class BlacklistPage: public QWidget, public Ui::BlacklistPage
|
||||
{
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit BlacklistPage(DanbooruSettings *preferences, QWidget* parent=0);
|
||||
explicit BlacklistPage(DanbooruSettings *preferences, QWidget *parent = 0);
|
||||
~BlacklistPage();
|
||||
|
||||
};
|
||||
|
||||
|
||||
} // namespace Danbooru
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -51,8 +51,8 @@ int main(int argc, char *argv[])
|
|||
);
|
||||
|
||||
aboutData.addAuthor(i18n("Luca Beltrame"), i18n("Developer"),
|
||||
QLatin1String("lbeltrame@kde.org")
|
||||
);
|
||||
QLatin1String("lbeltrame@kde.org")
|
||||
);
|
||||
|
||||
KAboutData::setApplicationData(aboutData);
|
||||
|
||||
|
@ -63,7 +63,7 @@ int main(int argc, char *argv[])
|
|||
cmdParser.process(app);
|
||||
aboutData.processCommandLine(&cmdParser);
|
||||
|
||||
Danbooru::DanbooruMainWindow* window = new Danbooru::DanbooruMainWindow();
|
||||
Danbooru::DanbooruMainWindow *window = new Danbooru::DanbooruMainWindow();
|
||||
window->setObjectName("danbooruMainWindow");
|
||||
window->show();
|
||||
|
||||
|
|
|
@ -20,4 +20,3 @@
|
|||
#include "danbooru_client_debug.h"
|
||||
Q_LOGGING_CATEGORY(DANBOORU_CLIENT, "org.dennogumi.danbooru_client")
|
||||
|
||||
|
||||
|
|
|
@ -89,7 +89,9 @@ DanbooruConnectWidget::DanbooruConnectWidget(QVector< QUrl > urlList,
|
|||
connect(anonCheckBox, &QCheckBox::stateChanged, this, &DanbooruConnectWidget::toggleLineEdits);
|
||||
|
||||
connect(buttonBox, &QDialogButtonBox::accepted, this, &DanbooruConnectWidget::accept);
|
||||
connect(closeButton, &QPushButton::clicked, [this]() {Q_EMIT(rejected());} );
|
||||
connect(closeButton, &QPushButton::clicked, [this]() {
|
||||
Q_EMIT(rejected());
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
@ -155,7 +157,8 @@ void DanbooruConnectWidget::toggleLineEdits(int state)
|
|||
}
|
||||
}
|
||||
|
||||
void DanbooruConnectWidget::setBoards(const QVector<QUrl> &urlList) {
|
||||
void DanbooruConnectWidget::setBoards(const QVector<QUrl> &urlList)
|
||||
{
|
||||
|
||||
danbooruUrlComboBox->clear();
|
||||
|
||||
|
@ -187,8 +190,8 @@ void DanbooruConnectWidget::accept()
|
|||
QString currentBoard = danbooruUrlComboBox->currentText();
|
||||
|
||||
if (!userLineEdit->text().isEmpty() &&
|
||||
!passwdLineEdit->text().isEmpty() &&
|
||||
!anonCheckBox->isChecked()) {
|
||||
!passwdLineEdit->text().isEmpty() &&
|
||||
!anonCheckBox->isChecked()) {
|
||||
|
||||
if (m_wallet && !m_wallet->hasEntry(currentBoard)) {
|
||||
QMap<QString, QString> dataMap;
|
||||
|
@ -203,7 +206,7 @@ void DanbooruConnectWidget::accept()
|
|||
QString hashedPassword = boardSalts.value(danbooruUrlComboBox->currentText());
|
||||
hashedPassword = hashedPassword.arg(currentBoard);
|
||||
hashedPassword = QCryptographicHash::hash(hashedPassword.toUtf8(),
|
||||
QCryptographicHash::Sha1).toHex();
|
||||
QCryptographicHash::Sha1).toHex();
|
||||
m_password = hashedPassword;
|
||||
}
|
||||
}
|
||||
|
@ -212,7 +215,8 @@ void DanbooruConnectWidget::accept()
|
|||
Q_EMIT(accepted());
|
||||
}
|
||||
|
||||
bool DanbooruConnectWidget::isAnonymous() const {
|
||||
bool DanbooruConnectWidget::isAnonymous() const
|
||||
{
|
||||
|
||||
return anonCheckBox->isChecked();
|
||||
|
||||
|
|
|
@ -22,15 +22,18 @@
|
|||
#include <QPushButton>
|
||||
#include <QLineEdit>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
DanbooruSearchWidget::DanbooruSearchWidget(QWidget* parent): QWidget(parent)
|
||||
DanbooruSearchWidget::DanbooruSearchWidget(QWidget *parent): QWidget(parent)
|
||||
{
|
||||
setupUi(this);
|
||||
|
||||
connect(searchButton, &QPushButton::clicked, this, &DanbooruSearchWidget::accept);
|
||||
connect(tagLineEdit, &QLineEdit::returnPressed, this, &DanbooruSearchWidget::accept);
|
||||
connect(closeButton, &QPushButton::clicked, [this]() { Q_EMIT(rejected()); });
|
||||
connect(closeButton, &QPushButton::clicked, [this]() {
|
||||
Q_EMIT(rejected());
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
@ -43,9 +46,10 @@ QStringList DanbooruSearchWidget::selectedTags() const
|
|||
return m_tags;
|
||||
}
|
||||
|
||||
void DanbooruSearchWidget::accept() {
|
||||
void DanbooruSearchWidget::accept()
|
||||
{
|
||||
|
||||
if(tagLineEdit->text().isEmpty()) {
|
||||
if (tagLineEdit->text().isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -53,5 +57,4 @@ void DanbooruSearchWidget::accept() {
|
|||
Q_EMIT(accepted());
|
||||
}
|
||||
|
||||
|
||||
} // namespace Danbooru
|
|
@ -22,30 +22,31 @@
|
|||
|
||||
#include "ui_searchwidget.h"
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruSearchWidget: public QWidget, Ui::SearchWidget {
|
||||
class DanbooruSearchWidget: public QWidget, Ui::SearchWidget
|
||||
{
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit DanbooruSearchWidget(QWidget *parent = 0);
|
||||
~DanbooruSearchWidget();
|
||||
QStringList selectedTags() const;
|
||||
public:
|
||||
explicit DanbooruSearchWidget(QWidget *parent = 0);
|
||||
~DanbooruSearchWidget();
|
||||
QStringList selectedTags() const;
|
||||
|
||||
private:
|
||||
QStringList m_tags;
|
||||
private:
|
||||
QStringList m_tags;
|
||||
|
||||
private Q_SLOTS:
|
||||
void accept();
|
||||
private Q_SLOTS:
|
||||
void accept();
|
||||
|
||||
Q_SIGNALS:
|
||||
void accepted();
|
||||
void rejected();
|
||||
Q_SIGNALS:
|
||||
void accepted();
|
||||
void rejected();
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
} // namespace Danbooru
|
||||
|
||||
|
||||
#endif
|
|
@ -21,7 +21,8 @@
|
|||
#include "model/danboorutagmodel.h"
|
||||
#include "libdanbooru/danboorutag.h"
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
DanbooruTagWidget::DanbooruTagWidget(QWidget *parent): QListView(parent)
|
||||
{
|
||||
|
@ -38,7 +39,7 @@ void DanbooruTagWidget::addTag(DanbooruTag *tag)
|
|||
return;
|
||||
}
|
||||
|
||||
qobject_cast<DanbooruTagModel*>(model())->addTag(tag);
|
||||
qobject_cast<DanbooruTagModel *>(model())->addTag(tag);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -23,22 +23,23 @@
|
|||
#include <QListView>
|
||||
#include <QStringList>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruTag;
|
||||
|
||||
class DanbooruTagWidget: public QListView
|
||||
{
|
||||
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
private:
|
||||
QStringList m_blacklist;
|
||||
|
||||
public:
|
||||
explicit DanbooruTagWidget(QWidget *parent=0);
|
||||
explicit DanbooruTagWidget(QWidget *parent = 0);
|
||||
~DanbooruTagWidget();
|
||||
void setBlackList(const QStringList& blacklist);
|
||||
void setBlackList(const QStringList &blacklist);
|
||||
|
||||
public Q_SLOTS:
|
||||
void addTag(DanbooruTag *tag);
|
||||
|
|
|
@ -27,14 +27,15 @@
|
|||
|
||||
static QLatin1String urlRegex("(http|https):\\/\\/[\\w\\-_]+(\\.[\\w\\-_]+)+([\\w\\-\\.,@?^=%&:/~\\+#]*[\\w\\-\\@?^=%&/~\\+#])?");
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
GeneralPage::GeneralPage(DanbooruSettings* preferences, QWidget* parent): QWidget(parent)
|
||||
GeneralPage::GeneralPage(DanbooruSettings *preferences, QWidget *parent): QWidget(parent)
|
||||
{
|
||||
setupUi(this);
|
||||
kcfg_Boards->insertStringList(preferences->boards());
|
||||
QRegularExpression regex(urlRegex);
|
||||
QRegularExpressionValidator* validator = new QRegularExpressionValidator(regex);
|
||||
QRegularExpressionValidator *validator = new QRegularExpressionValidator(regex);
|
||||
kcfg_Boards->lineEdit()->setValidator(validator);
|
||||
kcfg_MaxRating->setCurrentIndex(preferences->maxRating());
|
||||
|
||||
|
@ -44,5 +45,4 @@ GeneralPage::~GeneralPage()
|
|||
{
|
||||
}
|
||||
|
||||
|
||||
} // namespace Danbooru
|
||||
|
|
|
@ -22,16 +22,18 @@
|
|||
|
||||
#include "ui_generalpage.h"
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruSettings;
|
||||
|
||||
class GeneralPage: public QWidget, public Ui::GeneralPage {
|
||||
class GeneralPage: public QWidget, public Ui::GeneralPage
|
||||
{
|
||||
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit GeneralPage(DanbooruSettings* preferences, QWidget* parent=0);
|
||||
explicit GeneralPage(DanbooruSettings *preferences, QWidget *parent = 0);
|
||||
~GeneralPage();
|
||||
|
||||
};
|
||||
|
|
|
@ -17,13 +17,11 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORU_H
|
||||
#define DANBOORU_H
|
||||
|
||||
#include "libdanbooru_version.h"
|
||||
|
||||
|
||||
/**
|
||||
* @brief The Danbooru namespace.
|
||||
* @file danbooru.h
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#include "danboorupool.h"
|
||||
|
||||
namespace Danbooru
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORUPOOL_H
|
||||
#define DANBOORUPOOL_H
|
||||
|
||||
|
@ -104,6 +103,6 @@ public:
|
|||
|
||||
} // namespace Danbooru
|
||||
|
||||
Q_DECLARE_METATYPE(Danbooru::DanbooruPool*)
|
||||
Q_DECLARE_METATYPE(Danbooru::DanbooruPool *)
|
||||
|
||||
#endif // DANBOORUPOOL_H
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
// Qt
|
||||
|
||||
#include <QtCore/QString>
|
||||
|
@ -36,7 +35,7 @@ namespace Danbooru
|
|||
|
||||
const QMap<QString, DanbooruPost::Rating> DanbooruPost::RATING_MAP = initRatingMap();
|
||||
|
||||
DanbooruPost::DanbooruPost(QObject* parent): QObject(parent)
|
||||
DanbooruPost::DanbooruPost(QObject *parent): QObject(parent)
|
||||
{
|
||||
m_pixmap = QPixmap();
|
||||
m_tags = QSet<QString>();
|
||||
|
@ -48,7 +47,6 @@ DanbooruPost::DanbooruPost(QObject* parent): QObject(parent)
|
|||
m_rating = Questionable;
|
||||
}
|
||||
|
||||
|
||||
DanbooruPost::DanbooruPost(QVariantMap postData, QPixmap pixmap,
|
||||
QObject *parent):
|
||||
QObject(parent),
|
||||
|
@ -149,7 +147,6 @@ const QUrl DanbooruPost::sampleUrl() const
|
|||
return m_sampleUrl;
|
||||
}
|
||||
|
||||
|
||||
QPixmap DanbooruPost::pixmap() const
|
||||
{
|
||||
return m_pixmap;
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORUPOST_H
|
||||
#define DANBOORUPOST_H
|
||||
|
||||
|
@ -90,7 +89,6 @@ public:
|
|||
Q_DECLARE_FLAGS(Ratings, DanbooruPost::Rating)
|
||||
Q_ENUMS(Rating)
|
||||
|
||||
|
||||
private:
|
||||
|
||||
QPixmap m_pixmap;
|
||||
|
@ -133,7 +131,7 @@ public:
|
|||
explicit DanbooruPost(QVariantMap postData, QPixmap pixmap = QPixmap(),
|
||||
QObject *parent = 0);
|
||||
|
||||
explicit DanbooruPost(QObject* parent = 0);
|
||||
explicit DanbooruPost(QObject *parent = 0);
|
||||
|
||||
/**
|
||||
* @brief Construct a Danbooru post from XML attributes
|
||||
|
@ -227,6 +225,5 @@ Q_DECLARE_METATYPE(Danbooru::DanbooruPost *)
|
|||
Q_DECLARE_METATYPE(Danbooru::DanbooruPost::Rating)
|
||||
Q_DECLARE_METATYPE(QSet<QString>)
|
||||
|
||||
|
||||
#endif // DANBOORUPOST_H
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
// STL
|
||||
|
||||
#include <algorithm>
|
||||
|
@ -100,7 +99,6 @@ void DanbooruService::getPostList()
|
|||
|
||||
}
|
||||
|
||||
|
||||
void DanbooruService::getTagList(int limit, QString name)
|
||||
{
|
||||
QMap<QString, QString> parameters;
|
||||
|
@ -202,7 +200,7 @@ void DanbooruService::getPoolList()
|
|||
Q_EMIT(poolDownloadFinished());
|
||||
}
|
||||
|
||||
);
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
@ -237,7 +235,6 @@ void DanbooruService::getRelatedTags(const QStringList &tags,
|
|||
|
||||
// qCDebug(LIBDANBOORU) << "Final constructed related tag URL" << danbooruUrl;
|
||||
|
||||
|
||||
StoredTransferJob *job = KIO::storedGet(
|
||||
danbooruUrl, KIO::NoReload,
|
||||
KIO::HideProgressInfo
|
||||
|
@ -291,7 +288,6 @@ void DanbooruService::getRelatedTags(const QStringList &tags,
|
|||
|
||||
}
|
||||
|
||||
|
||||
const QSet< QString > DanbooruService::blacklist() const
|
||||
{
|
||||
return m_blacklist;
|
||||
|
@ -322,7 +318,6 @@ int DanbooruService::currentPage() const
|
|||
return m_currentPage;
|
||||
}
|
||||
|
||||
|
||||
const DanbooruPost::Ratings DanbooruService::maximumAllowedRating() const
|
||||
{
|
||||
|
||||
|
@ -347,7 +342,6 @@ void DanbooruService::nextPoolPage()
|
|||
getPoolList();
|
||||
}
|
||||
|
||||
|
||||
QStringList DanbooruService::postTags() const
|
||||
{
|
||||
return m_tags;
|
||||
|
@ -362,7 +356,8 @@ void DanbooruService::reset()
|
|||
|
||||
// Slots
|
||||
|
||||
void DanbooruService::processTagList(KJob *job) {
|
||||
void DanbooruService::processTagList(KJob *job)
|
||||
{
|
||||
|
||||
if (job->error()) {
|
||||
Q_EMIT(downloadError(job->errorString()));
|
||||
|
@ -387,7 +382,7 @@ void DanbooruService::processTagList(KJob *job) {
|
|||
QVariantMap map = element.toMap();
|
||||
DanbooruTag *tag = new DanbooruTag(map);
|
||||
|
||||
if(!tag) {
|
||||
if (!tag) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -437,7 +432,6 @@ void DanbooruService::processPostList(KJob *job)
|
|||
|
||||
for (auto element : postList) {
|
||||
|
||||
|
||||
QVariantMap map = element.toMap();
|
||||
DanbooruPost *post = new DanbooruPost(map);
|
||||
|
||||
|
@ -469,7 +463,6 @@ void DanbooruService::processPostList(KJob *job)
|
|||
StoredTransferJob *pixmapJob = KIO::storedGet(post->thumbnailUrl(),
|
||||
KIO::NoReload, KIO::HideProgressInfo);
|
||||
|
||||
|
||||
// We don't want to overload the servers, so set some rational
|
||||
// priority
|
||||
|
||||
|
@ -523,7 +516,6 @@ void DanbooruService::processPostList(KJob *job)
|
|||
|
||||
}
|
||||
|
||||
|
||||
void DanbooruService::downloadAllTags(KJob *job)
|
||||
{
|
||||
Q_UNUSED(job)
|
||||
|
@ -554,7 +546,7 @@ void DanbooruService::setBlacklist(const QStringList &blacklist)
|
|||
|
||||
}
|
||||
|
||||
void DanbooruService::setBoardUrl(const QUrl& url)
|
||||
void DanbooruService::setBoardUrl(const QUrl &url)
|
||||
{
|
||||
m_url = url;
|
||||
}
|
||||
|
@ -579,7 +571,7 @@ void DanbooruService::setMaximumAllowedRating(DanbooruPost::Rating rating)
|
|||
|
||||
}
|
||||
|
||||
void DanbooruService::setUserName(const QString& username)
|
||||
void DanbooruService::setUserName(const QString &username)
|
||||
{
|
||||
if (username.isEmpty()) {
|
||||
return;
|
||||
|
@ -587,34 +579,36 @@ void DanbooruService::setUserName(const QString& username)
|
|||
m_username = username;
|
||||
}
|
||||
|
||||
void DanbooruService::setPassword(const QString& password)
|
||||
void DanbooruService::setPassword(const QString &password)
|
||||
{
|
||||
if(password.isEmpty()) {
|
||||
if (password.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
m_password = password;
|
||||
}
|
||||
|
||||
void DanbooruService::setPostTags(const QStringList& tags)
|
||||
void DanbooruService::setPostTags(const QStringList &tags)
|
||||
{
|
||||
if (!tags.isEmpty()) {
|
||||
m_tags = tags;
|
||||
}
|
||||
}
|
||||
|
||||
void DanbooruService::setImageCache(KImageCache* cache)
|
||||
void DanbooruService::setImageCache(KImageCache *cache)
|
||||
{
|
||||
m_cache = cache;
|
||||
}
|
||||
|
||||
void DanbooruService::setMaxPosts(int number) {
|
||||
void DanbooruService::setMaxPosts(int number)
|
||||
{
|
||||
|
||||
m_maxPosts = number < 100 ? number : 100;
|
||||
|
||||
}
|
||||
|
||||
void DanbooruService::setCurrentPage(int page) {
|
||||
void DanbooruService::setCurrentPage(int page)
|
||||
{
|
||||
m_currentPage = page;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORUSERVICE_H
|
||||
#define DANBOORUSERVICE_H
|
||||
|
||||
|
@ -102,7 +101,6 @@ private:
|
|||
|
||||
public:
|
||||
|
||||
|
||||
/**
|
||||
* @brief Construct a default instance of the service.
|
||||
*
|
||||
|
@ -114,7 +112,7 @@ public:
|
|||
* @param parent The parent QObject
|
||||
*
|
||||
**/
|
||||
DanbooruService(QUrl boardUrl=QUrl(), QString username = QString(),
|
||||
DanbooruService(QUrl boardUrl = QUrl(), QString username = QString(),
|
||||
QString password = QString(), KImageCache *cache = 0,
|
||||
QObject *parent = 0);
|
||||
|
||||
|
@ -222,16 +220,16 @@ public:
|
|||
* @param blacklist A QSet<QString> including unwanted tags.
|
||||
*
|
||||
**/
|
||||
void setBlacklist(const QStringList& blacklist);
|
||||
void setBlacklist(const QStringList &blacklist);
|
||||
|
||||
/**
|
||||
* @brief Set the tag blacklist.
|
||||
*
|
||||
* If a tag is in the blacklist, posts tagged with it will not be downloaded.
|
||||
*
|
||||
**/
|
||||
/**
|
||||
* @brief Set the tag blacklist.
|
||||
*
|
||||
* If a tag is in the blacklist, posts tagged with it will not be downloaded.
|
||||
*
|
||||
**/
|
||||
|
||||
void setBlacklist(const QSet<QString>& blacklist);
|
||||
void setBlacklist(const QSet<QString> &blacklist);
|
||||
|
||||
/**
|
||||
* @brief Set the maximum allowed rating for the board.
|
||||
|
@ -248,7 +246,7 @@ public:
|
|||
* @param url The URL to connect to.
|
||||
* @return void
|
||||
*/
|
||||
void setBoardUrl(const QUrl& url);
|
||||
void setBoardUrl(const QUrl &url);
|
||||
|
||||
/**
|
||||
* @brief Set an image cache to use.
|
||||
|
@ -264,7 +262,7 @@ public:
|
|||
* @param username The username to use.
|
||||
*
|
||||
**/
|
||||
void setUserName(const QString& username);
|
||||
void setUserName(const QString &username);
|
||||
|
||||
/**
|
||||
* @brief Set the password used for login.
|
||||
|
@ -276,14 +274,13 @@ public:
|
|||
* @param password The salted password to use.
|
||||
*
|
||||
**/
|
||||
void setPassword(const QString& password);
|
||||
void setPassword(const QString &password);
|
||||
|
||||
void setMaxPosts(int number);
|
||||
|
||||
void setCurrentPage(int page);
|
||||
|
||||
void setPostTags(const QStringList& tags);
|
||||
|
||||
void setPostTags(const QStringList &tags);
|
||||
|
||||
private Q_SLOTS:
|
||||
void processPostList(KJob *job);
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#include "danboorutag.h"
|
||||
|
||||
namespace Danbooru
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORUTAG_H
|
||||
#define DANBOORUTAG_H
|
||||
|
||||
|
@ -78,5 +77,4 @@ Q_DECLARE_OPERATORS_FOR_FLAGS(TagTypes)
|
|||
|
||||
Q_DECLARE_METATYPE(Danbooru::DanbooruTag *)
|
||||
|
||||
|
||||
#endif // DANBOORUTAG_H
|
||||
|
|
|
@ -20,4 +20,3 @@
|
|||
#include "libdanbooru_debug.h"
|
||||
Q_LOGGING_CATEGORY(LIBDANBOORU, "org.dennogumi.libdanbooru")
|
||||
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
// Own
|
||||
|
||||
#include "utils.h"
|
||||
|
@ -69,7 +68,6 @@ QUrl requestUrl(QUrl &url, const QString &path,
|
|||
danbooruUrl.setPassword(password);
|
||||
}
|
||||
|
||||
|
||||
return danbooruUrl;
|
||||
}
|
||||
|
||||
|
@ -118,7 +116,7 @@ QUrl requestUrl(QUrl &url, const QString &path, const QString &username,
|
|||
return danbooruUrl;
|
||||
}
|
||||
|
||||
QList< QVariant > parseDanbooruResult(QByteArray data, QString xlmElement, bool* result)
|
||||
QList< QVariant > parseDanbooruResult(QByteArray data, QString xlmElement, bool *result)
|
||||
{
|
||||
|
||||
QXmlStreamReader reader;
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef UTILS_H
|
||||
#define UTILS_H
|
||||
|
||||
|
|
|
@ -108,7 +108,6 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
m_tableView->setModel(m_poolModel);
|
||||
m_tagWidget->setModel(m_proxyModel);
|
||||
|
||||
|
||||
// Set up declarative bindings for the QQuickWidget
|
||||
|
||||
m_view->setResizeMode(QQuickWidget::SizeRootObjectToView);
|
||||
|
@ -117,7 +116,7 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
declarative.setupBindings();
|
||||
|
||||
auto qmlViewPath = QStandardPaths::locate(QStandardPaths::GenericDataLocation,
|
||||
qApp->applicationName() + QLatin1String("/danbooruimageview.qml"));
|
||||
qApp->applicationName() + QLatin1String("/danbooruimageview.qml"));
|
||||
|
||||
QQmlContext *ctxt = m_view->rootContext();
|
||||
ctxt->setContextProperty("danbooruModel", m_model);
|
||||
|
@ -136,7 +135,7 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
|
||||
// then, setup our actions
|
||||
setupActions();
|
||||
setupGUI(KXmlGuiWindow::ToolBar|Keys|Save|Create, "danbooru-clientui.rc");
|
||||
setupGUI(KXmlGuiWindow::ToolBar | Keys | Save | Create, "danbooru-clientui.rc");
|
||||
|
||||
// connections
|
||||
|
||||
|
@ -144,7 +143,7 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
|
||||
m_service->setBoardUrl(m_connectWidget->boardUrl());
|
||||
if (!m_connectWidget->isAnonymous() && !m_connectWidget->username().isEmpty()
|
||||
&& !m_connectWidget->password().isEmpty()) {
|
||||
&& !m_connectWidget->password().isEmpty()) {
|
||||
|
||||
m_service->setUserName(m_connectWidget->username());
|
||||
m_service->setPassword(m_connectWidget->password());
|
||||
|
@ -178,8 +177,8 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
&DanbooruTagModel::addTag);
|
||||
connect(m_service, &Danbooru::DanbooruService::poolDownloadFinished, [this]() {
|
||||
m_tableView->resizeColumnsToContents();
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
connect(m_tableView, &QTableView::doubleClicked, [this](QModelIndex index) {
|
||||
auto pool = m_poolModel->poolAt(index.row());
|
||||
|
@ -192,15 +191,15 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
|
||||
connect(m_searchWidget, &DanbooruSearchWidget::accepted, [this]() {
|
||||
|
||||
QDockWidget* searchDockWidget = findChild<QDockWidget*>(QLatin1String("SearchView"));
|
||||
searchDockWidget->hide();
|
||||
QDockWidget *searchDockWidget = findChild<QDockWidget *>(QLatin1String("SearchView"));
|
||||
searchDockWidget->hide();
|
||||
|
||||
handlePostDownload(m_searchWidget->selectedTags(), true /* relatedTags */);
|
||||
handlePostDownload(m_searchWidget->selectedTags(), true /* relatedTags */);
|
||||
|
||||
});
|
||||
|
||||
connect(m_searchWidget, &DanbooruSearchWidget::rejected, [this]() {
|
||||
QDockWidget* searchDockWidget = findChild<QDockWidget*>(QLatin1String("SearchView"));
|
||||
QDockWidget *searchDockWidget = findChild<QDockWidget *>(QLatin1String("SearchView"));
|
||||
searchDockWidget->hide();
|
||||
});
|
||||
|
||||
|
@ -208,7 +207,7 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
|
||||
if (m_tagModel->rowCount() == 0) {
|
||||
// Only get tags if we don't have any already
|
||||
for (auto tag: m_model->postTags()) {
|
||||
for (auto tag : m_model->postTags()) {
|
||||
m_service->getTagList(1, tag);
|
||||
}
|
||||
}
|
||||
|
@ -216,8 +215,8 @@ DanbooruMainWindow::DanbooruMainWindow(QWidget *parent)
|
|||
|
||||
});
|
||||
|
||||
connect(m_view->rootObject(), SIGNAL(downloadRequested(const QUrl&, QVariant)), this,
|
||||
SLOT(slotHandleDownload(const QUrl&, QVariant)));
|
||||
connect(m_view->rootObject(), SIGNAL(downloadRequested(QUrl,QVariant)), this,
|
||||
SLOT(slotHandleDownload(QUrl,QVariant)));
|
||||
|
||||
connect(m_tagWidget, &QListView::doubleClicked, this, &DanbooruMainWindow::searchTag);
|
||||
|
||||
|
@ -240,9 +239,9 @@ void DanbooruMainWindow::loadSettings()
|
|||
|
||||
QStringList::const_iterator it;
|
||||
|
||||
for(it = DanbooruSettings::self()->boards().constBegin();
|
||||
it != DanbooruSettings::self()->boards().constEnd();
|
||||
++it) {
|
||||
for (it = DanbooruSettings::self()->boards().constBegin();
|
||||
it != DanbooruSettings::self()->boards().constEnd();
|
||||
++it) {
|
||||
|
||||
boardsList.append(QUrl::fromUserInput(*it));
|
||||
|
||||
|
@ -257,11 +256,10 @@ void DanbooruMainWindow::loadSettings()
|
|||
m_tagWidget->setBlackList(DanbooruSettings::self()->tagBlacklist());
|
||||
|
||||
m_view->rootContext()->setContextProperty("infiniteScroll",
|
||||
DanbooruSettings::self()->infiniteScrolling());
|
||||
DanbooruSettings::self()->infiniteScrolling());
|
||||
|
||||
}
|
||||
|
||||
|
||||
void DanbooruMainWindow::setupActions()
|
||||
{
|
||||
|
||||
|
@ -273,15 +271,15 @@ void DanbooruMainWindow::setupActions()
|
|||
QAction *fetchAction = new QAction(QIcon::fromTheme(QLatin1String("download")),
|
||||
i18n("Download"), this);
|
||||
KToggleAction *findAction = new KToggleAction(QIcon::fromTheme(QLatin1String("edit-find")),
|
||||
i18n("Search"), this);
|
||||
i18n("Search"), this);
|
||||
KToggleAction *poolAction = new KToggleAction(QIcon::fromTheme(QLatin1String("image-x-generic")),
|
||||
i18n("Pools"), this);
|
||||
i18n("Pools"), this);
|
||||
QAction *nextPageAction = new QAction(QIcon::fromTheme(QLatin1String("go-next")),
|
||||
i18n("More posts"), this);
|
||||
QAction *nextPoolAction = new QAction(QIcon::fromTheme(QLatin1String("go-next")),
|
||||
i18n("More pools"), this);
|
||||
|
||||
KDualAction* tagAction = new KDualAction(i18n("Show tags"), i18n("Hide tags"), this);
|
||||
KDualAction *tagAction = new KDualAction(i18n("Show tags"), i18n("Hide tags"), this);
|
||||
tagAction->setIconForStates(QIcon::fromTheme(QLatin1String("tag")));
|
||||
|
||||
fetchAction->setEnabled(false);
|
||||
|
@ -316,7 +314,7 @@ void DanbooruMainWindow::setupActions()
|
|||
return;
|
||||
}
|
||||
|
||||
QDockWidget* poolDockWidget = findChild<QDockWidget*>(QLatin1String("PoolView"));
|
||||
QDockWidget *poolDockWidget = findChild<QDockWidget *>(QLatin1String("PoolView"));
|
||||
|
||||
if (checked) {
|
||||
|
||||
|
@ -329,7 +327,6 @@ void DanbooruMainWindow::setupActions()
|
|||
actionCollection()->action(QLatin1String("morePools"))->setEnabled(true);
|
||||
m_tableView->show();
|
||||
|
||||
|
||||
} else {
|
||||
poolDockWidget->hide();
|
||||
actionCollection()->action(QLatin1String("morePools"))->setEnabled(false);
|
||||
|
@ -339,7 +336,7 @@ void DanbooruMainWindow::setupActions()
|
|||
|
||||
connect(findAction, &KToggleAction::toggled, [this](bool checked) {
|
||||
|
||||
QDockWidget* searchDockWidget = findChild<QDockWidget*>(QLatin1String("SearchView"));
|
||||
QDockWidget *searchDockWidget = findChild<QDockWidget *>(QLatin1String("SearchView"));
|
||||
|
||||
if (checked) {
|
||||
searchDockWidget->show();
|
||||
|
@ -353,7 +350,7 @@ void DanbooruMainWindow::setupActions()
|
|||
|
||||
connect(tagAction, &KDualAction::activeChanged, [this](bool checked) {
|
||||
|
||||
QDockWidget* tagDockWidget = findChild<QDockWidget*>(QLatin1String("TagView"));
|
||||
QDockWidget *tagDockWidget = findChild<QDockWidget *>(QLatin1String("TagView"));
|
||||
|
||||
if (checked) {
|
||||
tagDockWidget->show();
|
||||
|
@ -373,21 +370,21 @@ void DanbooruMainWindow::setupActions()
|
|||
|
||||
QMetaObject::invokeMethod(m_view->rootObject(), "downloadStarted");
|
||||
m_service->nextPostPage();
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
connect(nextPoolAction, &QAction::triggered, [this]() {
|
||||
m_service->nextPoolPage();
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
void DanbooruMainWindow::setupDockWidgets() {
|
||||
void DanbooruMainWindow::setupDockWidgets()
|
||||
{
|
||||
|
||||
// Set up PoolWidget
|
||||
|
||||
QDockWidget* poolDockWidget = new QDockWidget(i18n("Pools"), this);
|
||||
QDockWidget *poolDockWidget = new QDockWidget(i18n("Pools"), this);
|
||||
poolDockWidget->setAllowedAreas(Qt::BottomDockWidgetArea);
|
||||
poolDockWidget->setWidget(m_tableView);
|
||||
poolDockWidget->setObjectName("PoolView");
|
||||
|
@ -433,7 +430,7 @@ void DanbooruMainWindow::setupDockWidgets() {
|
|||
});
|
||||
|
||||
connect(tagDockWidget, &QDockWidget::visibilityChanged, [this](bool visible) {
|
||||
qobject_cast<KDualAction*>(actionCollection()->action(QLatin1String("tags")))->setActive(visible);
|
||||
qobject_cast<KDualAction *>(actionCollection()->action(QLatin1String("tags")))->setActive(visible);
|
||||
});
|
||||
|
||||
}
|
||||
|
@ -459,30 +456,29 @@ void DanbooruMainWindow::downloadPosts()
|
|||
return;
|
||||
}
|
||||
|
||||
|
||||
handlePostDownload(QStringList(), false);
|
||||
|
||||
}
|
||||
|
||||
void DanbooruMainWindow::optionsPreferences()
|
||||
{
|
||||
KConfigDialog* dialog = new KConfigDialog(this, "danboorusettings",
|
||||
DanbooruSettings::self());
|
||||
KConfigDialog *dialog = new KConfigDialog(this, "danboorusettings",
|
||||
DanbooruSettings::self());
|
||||
|
||||
dialog->addPage(new GeneralPage(DanbooruSettings::self(), this), i18n("General"),
|
||||
"table");
|
||||
"table");
|
||||
dialog->addPage(new BlacklistPage(DanbooruSettings::self(), this), i18n("Tag blacklist"),
|
||||
"configure");
|
||||
connect(dialog, &KConfigDialog::settingsChanged, this, &DanbooruMainWindow::loadSettings);
|
||||
dialog->show();
|
||||
}
|
||||
|
||||
void DanbooruMainWindow::slotHandleDownload(const QUrl &url, const QVariant tags) {
|
||||
|
||||
void DanbooruMainWindow::slotHandleDownload(const QUrl &url, const QVariant tags)
|
||||
{
|
||||
|
||||
QStringList tagList = tags.toStringList();
|
||||
|
||||
KIO::MimetypeJob* mimeJob = KIO::mimetype(url, KIO::HideProgressInfo);
|
||||
KIO::MimetypeJob *mimeJob = KIO::mimetype(url, KIO::HideProgressInfo);
|
||||
|
||||
QString filters;
|
||||
QString remoteFile = url.fileName();
|
||||
|
@ -498,14 +494,13 @@ void DanbooruMainWindow::slotHandleDownload(const QUrl &url, const QVariant tags
|
|||
remoteFile.replace(":", "_");
|
||||
}
|
||||
|
||||
QUrl localFile = QFileDialog::getSaveFileUrl(
|
||||
this,
|
||||
i18n("Save file"),
|
||||
QDir::homePath() + QLatin1Char('/') + remoteFile,
|
||||
filters
|
||||
|
||||
);
|
||||
QUrl localFile = QFileDialog::getSaveFileUrl(
|
||||
this,
|
||||
i18n("Save file"),
|
||||
QDir::homePath() + QLatin1Char('/') + remoteFile,
|
||||
filters
|
||||
|
||||
);
|
||||
|
||||
// TODO: Remember last user directory - settings?
|
||||
|
||||
|
@ -513,17 +508,17 @@ void DanbooruMainWindow::slotHandleDownload(const QUrl &url, const QVariant tags
|
|||
|
||||
KIO::FileCopyJob *job = KIO::file_copy(url, localFile, -1, KIO::DefaultFlags);
|
||||
|
||||
connect(job, &KIO::Job::result, [this, localFile, tagList](KJob *job) {
|
||||
connect(job, &KIO::Job::result, [this, localFile, tagList](KJob * job) {
|
||||
|
||||
if (job->error()) {
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef WITH_KFILEMETADATA
|
||||
#ifdef WITH_KFILEMETADATA
|
||||
qCDebug(DANBOORU_CLIENT) << "Local file" << localFile.toLocalFile();
|
||||
KFileMetaData::UserMetaData meta(localFile.toLocalFile());
|
||||
meta.setTags(tagList);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
});
|
||||
|
||||
|
@ -554,14 +549,13 @@ void DanbooruMainWindow::clearModels()
|
|||
|
||||
}
|
||||
|
||||
|
||||
void DanbooruMainWindow::handlePostDownload(const QStringList &tags, bool relatedTags)
|
||||
{
|
||||
clearModels();
|
||||
m_view->rootObject()->setProperty("poolMode", QVariant(false));
|
||||
m_service->setPostTags(tags);
|
||||
|
||||
if(relatedTags) {
|
||||
if (relatedTags) {
|
||||
m_service->getRelatedTags(tags);
|
||||
}
|
||||
|
||||
|
|
|
@ -32,12 +32,9 @@
|
|||
#include <KSharedDataCache>
|
||||
#include <KImageCache>
|
||||
|
||||
|
||||
|
||||
class QQuickWidget;
|
||||
class QSortFilterProxyModel;
|
||||
|
||||
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
|
@ -81,7 +78,7 @@ public:
|
|||
/**
|
||||
* Default Constructor
|
||||
*/
|
||||
DanbooruMainWindow(QWidget* parent=0);
|
||||
DanbooruMainWindow(QWidget *parent = 0);
|
||||
|
||||
/**
|
||||
* Default Destructor
|
||||
|
@ -93,7 +90,7 @@ private:
|
|||
void setupDockWidgets();
|
||||
void setupConnections();
|
||||
void clearModels();
|
||||
void handlePostDownload(const QStringList& tags = QStringList(), bool relatedTags = false);
|
||||
void handlePostDownload(const QStringList &tags = QStringList(), bool relatedTags = false);
|
||||
|
||||
private Q_SLOTS:
|
||||
void connectToBoard();
|
||||
|
|
|
@ -24,14 +24,16 @@
|
|||
|
||||
#include <KLocalizedString>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
DanbooruPoolModel::DanbooruPoolModel(QObject* parent): QAbstractTableModel(parent)
|
||||
DanbooruPoolModel::DanbooruPoolModel(QObject *parent): QAbstractTableModel(parent)
|
||||
{
|
||||
}
|
||||
|
||||
const QStringList DanbooruPoolModel::m_headerNames = { i18n("ID"),
|
||||
i18n("Name"), i18n("Posts"), i18n("Description") };
|
||||
i18n("Name"), i18n("Posts"), i18n("Description")
|
||||
};
|
||||
|
||||
DanbooruPoolModel::~DanbooruPoolModel()
|
||||
{
|
||||
|
@ -60,7 +62,7 @@ int DanbooruPoolModel::columnCount(const QModelIndex &parent) const
|
|||
return 4;
|
||||
}
|
||||
|
||||
QVariant DanbooruPoolModel::data(const QModelIndex& index, int role) const
|
||||
QVariant DanbooruPoolModel::data(const QModelIndex &index, int role) const
|
||||
{
|
||||
if (!index.isValid()) {
|
||||
return QVariant();
|
||||
|
@ -74,7 +76,7 @@ QVariant DanbooruPoolModel::data(const QModelIndex& index, int role) const
|
|||
return QVariant();
|
||||
}
|
||||
|
||||
DanbooruPool* pool = m_items.at(index.row());
|
||||
DanbooruPool *pool = m_items.at(index.row());
|
||||
|
||||
if (role == Qt::DisplayRole) {
|
||||
|
||||
|
@ -105,7 +107,7 @@ QVariant DanbooruPoolModel::headerData(int section, Qt::Orientation orientation,
|
|||
|
||||
void DanbooruPoolModel::clear()
|
||||
{
|
||||
if (m_items.isEmpty()) {
|
||||
if (m_items.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -115,11 +117,9 @@ void DanbooruPoolModel::clear()
|
|||
endResetModel();
|
||||
}
|
||||
|
||||
DanbooruPool* DanbooruPoolModel::poolAt(int index) const
|
||||
DanbooruPool *DanbooruPoolModel::poolAt(int index) const
|
||||
{
|
||||
return m_items.at(index);
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // namespace Danbooru
|
|
@ -23,7 +23,8 @@
|
|||
#include <QVector>
|
||||
#include <QAbstractTableModel>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruPool;
|
||||
|
||||
|
@ -32,7 +33,7 @@ class DanbooruPoolModel: public QAbstractTableModel
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
DanbooruPoolModel(QObject* parent=0);
|
||||
DanbooruPoolModel(QObject *parent = 0);
|
||||
~DanbooruPoolModel();
|
||||
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
|
@ -40,8 +41,7 @@ public:
|
|||
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
|
||||
QVariant headerData(int section, Qt::Orientation orientation, int role) const Q_DECL_OVERRIDE;
|
||||
void clear();
|
||||
DanbooruPool* poolAt(int index) const;
|
||||
|
||||
DanbooruPool *poolAt(int index) const;
|
||||
|
||||
private:
|
||||
QVector<DanbooruPool *> m_items;
|
||||
|
@ -52,9 +52,6 @@ public Q_SLOTS:
|
|||
|
||||
};
|
||||
|
||||
|
||||
} // namespace Danbooru
|
||||
|
||||
|
||||
|
||||
#endif
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
// Own
|
||||
|
||||
#include "danboorupostmodel.h"
|
||||
|
@ -80,41 +79,38 @@ QVariant DanbooruPostModel::data(const QModelIndex &index, int role) const
|
|||
return QVariant();
|
||||
}
|
||||
|
||||
switch(role) {
|
||||
case Qt::DisplayRole:
|
||||
{
|
||||
QVariant variant;
|
||||
variant.setValue(post);
|
||||
switch (role) {
|
||||
case Qt::DisplayRole: {
|
||||
QVariant variant;
|
||||
variant.setValue(post);
|
||||
|
||||
return variant;
|
||||
}
|
||||
return variant;
|
||||
}
|
||||
|
||||
case Qt::DecorationRole:
|
||||
{
|
||||
const QPixmap pixmap = post->pixmap();
|
||||
return pixmap;
|
||||
}
|
||||
case Qt::ToolTipRole:
|
||||
return post->fileUrl().fileName();
|
||||
case FileUrlRole:
|
||||
return post->fileUrl();
|
||||
case ThumbUrlRole:
|
||||
return post->thumbnailUrl();
|
||||
case SizeRole:
|
||||
return post->size();
|
||||
case ResolutionRole:
|
||||
return QSize(post->width(), post->height());
|
||||
case RatingRole:
|
||||
return post->rating();
|
||||
case TagRole:
|
||||
{
|
||||
QStringList tagList = post->tags().toList();
|
||||
return tagList;
|
||||
}
|
||||
case SampleUrlRole:
|
||||
return post->sampleUrl();
|
||||
default:
|
||||
return QVariant();
|
||||
case Qt::DecorationRole: {
|
||||
const QPixmap pixmap = post->pixmap();
|
||||
return pixmap;
|
||||
}
|
||||
case Qt::ToolTipRole:
|
||||
return post->fileUrl().fileName();
|
||||
case FileUrlRole:
|
||||
return post->fileUrl();
|
||||
case ThumbUrlRole:
|
||||
return post->thumbnailUrl();
|
||||
case SizeRole:
|
||||
return post->size();
|
||||
case ResolutionRole:
|
||||
return QSize(post->width(), post->height());
|
||||
case RatingRole:
|
||||
return post->rating();
|
||||
case TagRole: {
|
||||
QStringList tagList = post->tags().toList();
|
||||
return tagList;
|
||||
}
|
||||
case SampleUrlRole:
|
||||
return post->sampleUrl();
|
||||
default:
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
return QVariant();
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef DANBOORUPOSTMODEL_H
|
||||
#define DANBOORUPOSTMODEL_H
|
||||
|
||||
|
|
|
@ -17,14 +17,14 @@
|
|||
* along with Danbooru Client. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#include "danboorutagmodel.h"
|
||||
#include "libdanbooru/danboorutag.h"
|
||||
#include "danbooru_client_debug.h"
|
||||
|
||||
#include <KLocalizedString>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
DanbooruTagModel::DanbooruTagModel(QObject *parent): QAbstractListModel(parent)
|
||||
{
|
||||
|
@ -38,7 +38,6 @@ DanbooruTagModel::~DanbooruTagModel()
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int DanbooruTagModel::rowCount(const QModelIndex &parent) const
|
||||
{
|
||||
Q_UNUSED(parent);
|
||||
|
@ -51,7 +50,7 @@ QVariant DanbooruTagModel::data(const QModelIndex &index, int role) const
|
|||
return QVariant();
|
||||
}
|
||||
|
||||
DanbooruTag* tag = m_items.at(index.row());
|
||||
DanbooruTag *tag = m_items.at(index.row());
|
||||
|
||||
if (role == Qt::DisplayRole) {
|
||||
return i18np("%1 (%2 post)", "%1 (%2 posts)", tag->name(), tag->count());
|
||||
|
@ -66,18 +65,18 @@ QVariant DanbooruTagModel::data(const QModelIndex &index, int role) const
|
|||
return QVariant();
|
||||
}
|
||||
|
||||
DanbooruTag* DanbooruTagModel::itemAt(int index) const
|
||||
DanbooruTag *DanbooruTagModel::itemAt(int index) const
|
||||
{
|
||||
return m_items.at(index);
|
||||
}
|
||||
|
||||
void DanbooruTagModel::addTag(DanbooruTag* tag)
|
||||
void DanbooruTagModel::addTag(DanbooruTag *tag)
|
||||
{
|
||||
if (!tag) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(tag->count() == 0) {
|
||||
if (tag->count() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -86,9 +85,10 @@ void DanbooruTagModel::addTag(DanbooruTag* tag)
|
|||
endInsertRows();
|
||||
}
|
||||
|
||||
void DanbooruTagModel::clear() {
|
||||
void DanbooruTagModel::clear()
|
||||
{
|
||||
|
||||
if (m_items.isEmpty()) {
|
||||
if (m_items.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -23,22 +23,23 @@
|
|||
#include <QAbstractListModel>
|
||||
#include <QVector>
|
||||
|
||||
namespace Danbooru {
|
||||
namespace Danbooru
|
||||
{
|
||||
|
||||
class DanbooruTag;
|
||||
|
||||
class DanbooruTagModel: public QAbstractListModel
|
||||
{
|
||||
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit DanbooruTagModel(QObject* parent=0);
|
||||
explicit DanbooruTagModel(QObject *parent = 0);
|
||||
~DanbooruTagModel();
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
|
||||
void clear();
|
||||
DanbooruTag* itemAt(int index) const;
|
||||
DanbooruTag *itemAt(int index) const;
|
||||
|
||||
enum TagRoles {
|
||||
// Needed for sorting through the proxy model
|
||||
|
@ -46,14 +47,13 @@ public:
|
|||
};
|
||||
|
||||
private:
|
||||
QVector<DanbooruTag*> m_items;
|
||||
QVector<DanbooruTag *> m_items;
|
||||
|
||||
public Q_SLOTS:
|
||||
void addTag(Danbooru::DanbooruTag* tag);
|
||||
void addTag(Danbooru::DanbooruTag *tag);
|
||||
|
||||
};
|
||||
|
||||
|
||||
} // namespace Danbooru
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue