diff --git a/saoriconfiguredialog.cpp b/saoriconfiguredialog.cpp index 815ff39..aee96db 100644 --- a/saoriconfiguredialog.cpp +++ b/saoriconfiguredialog.cpp @@ -58,6 +58,7 @@ ui->spinBox_limit->setValue(SaoriApplication::saori()->setting()->value(SAORI_SETTING_GETLIMIT,SAORI_SETTING_GETLIMIT_DEFAULT).toInt()); ui->spinBox_reloadInterval->setValue(SaoriApplication::saori()->setting()->value(SAORI_SETTING_RELOADINT,SAORI_SETTING_RELOADINT_DEFAULT).toInt()); ui->checkBox_nsfw->setChecked(SaoriApplication::saori()->setting()->value(SAORI_SETTING_NSFWBLUR,SAORI_SETTING_NSFWBLUR_DEFAULT).toBool()); + ui->spinBox_entriesCount->setValue(SaoriApplication::saori()->setting()->value(SAORI_SETTING_SHOWENTRIES,SAORI_SETTING_SHOWENTRIES_DEFAULT).toInt()); } void SaoriConfigureDialog::setAccounts() @@ -73,6 +74,7 @@ SaoriApplication::saori()->setting()->setValue(SAORI_SETTING_GETLIMIT,ui->spinBox_limit->value()); SaoriApplication::saori()->setting()->setValue(SAORI_SETTING_RELOADINT,ui->spinBox_reloadInterval->value()); SaoriApplication::saori()->setting()->setValue(SAORI_SETTING_NSFWBLUR,ui->checkBox_nsfw->isChecked()); + SaoriApplication::saori()->setting()->setValue(SAORI_SETTING_SHOWENTRIES,ui->spinBox_entriesCount->value()); hide(); } diff --git a/saoriview.cpp b/saoriview.cpp index 9b3b065..525a79c 100644 --- a/saoriview.cpp +++ b/saoriview.cpp @@ -401,6 +401,7 @@ if (m_entries.count()) { if (m_entries.first()->id() > m_maxid) reload(); } + viewEntriesAdjustment(); } void SaoriView::linkClicked(const QUrl &url) @@ -429,8 +430,21 @@ QTimer::singleShot(60000,this,&SaoriView::timerUpdate); } +void SaoriView::viewEntriesAdjustment() +{ + int showentries = SaoriApplication::saori()->setting()->value(SAORI_SETTING_SHOWENTRIES, + SAORI_SETTING_SHOWENTRIES_DEFAULT).toInt(); + int e = m_entries.count() - showentries; + if (e <= 0) return; + while (showentries < m_entries.count()) { + delete m_entries.takeLast(); + } + return; +} + void SaoriView::on_pushButton_newest_clicked() { + viewEntriesAdjustment(); ui->scrollArea->verticalScrollBar()->setValue(0); } diff --git a/saoriview.h b/saoriview.h index 2e66871..f79bb82 100644 --- a/saoriview.h +++ b/saoriview.h @@ -81,6 +81,7 @@ protected slots: void timerUpdate(); + void viewEntriesAdjustment(); private: Ui::SaoriView *ui;