Skip to content
This repository has been archived by the owner on Jun 20, 2022. It is now read-only.

Commit

Permalink
[GUI] Add action to hide orphans in overview and txlist
Browse files Browse the repository at this point in the history
  • Loading branch information
random-zebra committed Oct 8, 2018
1 parent 960137a commit b3ff4a1
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 2 deletions.
9 changes: 9 additions & 0 deletions src/qt/optionsdialog.cpp
Expand Up @@ -161,6 +161,9 @@ void OptionsDialog::setModel(OptionsModel* model)
mapper->setModel(model);
setMapper();
mapper->toFirst();

/* keep consistency for action triggered elsewhere */
connect(model, SIGNAL(hideOrphansChanged(bool)), this, SLOT(updateHideOrphans(bool)));
}

/* warn when one of the following settings changes by user action (placed here so init via mapper doesn't trigger them) */
Expand Down Expand Up @@ -293,6 +296,12 @@ void OptionsDialog::clearStatusLabel()
ui->statusLabel->clear();
}

void OptionsDialog::updateHideOrphans(bool fHide)
{
if(ui->checkBoxHideOrphans->isChecked() != fHide)
ui->checkBoxHideOrphans->setChecked(fHide);
}

void OptionsDialog::doProxyIpChecks(QValidatedLineEdit* pUiProxyIp, QLineEdit* pUiProxyPort)
{
const std::string strAddrProxy = pUiProxyIp->text().toStdString();
Expand Down
2 changes: 2 additions & 0 deletions src/qt/optionsdialog.h
Expand Up @@ -47,6 +47,8 @@ private slots:
void on_okButton_clicked();
void on_cancelButton_clicked();

void updateHideOrphans(bool fHide);

void showRestartWarning(bool fPersistent = false);
void clearStatusLabel();
void doProxyIpChecks(QValidatedLineEdit* pUiProxyIp, QLineEdit* pUiProxyPort);
Expand Down
3 changes: 2 additions & 1 deletion src/qt/overviewpage.cpp
Expand Up @@ -413,5 +413,6 @@ void OverviewPage::showOutOfSyncWarning(bool fShow)

void OverviewPage::hideOrphans(bool fHide)
{
filter->setHideOrphans(fHide);
if (filter)
filter->setHideOrphans(fHide);
}
25 changes: 24 additions & 1 deletion src/qt/transactionview.cpp
Expand Up @@ -157,6 +157,10 @@ TransactionView::TransactionView(QWidget* parent) : QWidget(parent), model(0), t
QAction* copyTxIDAction = new QAction(tr("Copy transaction ID"), this);
QAction* editLabelAction = new QAction(tr("Edit label"), this);
QAction* showDetailsAction = new QAction(tr("Show transaction details"), this);
hideOrphansAction = new QAction(tr("Hide orphan stakes"), this);

hideOrphansAction->setCheckable(true);
hideOrphansAction->setChecked(settings.value("fHideOrphans", false).toBool());

contextMenu = new QMenu();
contextMenu->addAction(copyAddressAction);
Expand All @@ -165,6 +169,7 @@ TransactionView::TransactionView(QWidget* parent) : QWidget(parent), model(0), t
contextMenu->addAction(copyTxIDAction);
contextMenu->addAction(editLabelAction);
contextMenu->addAction(showDetailsAction);
contextMenu->addAction(hideOrphansAction);

mapperThirdPartyTxUrls = new QSignalMapper(this);

Expand All @@ -187,6 +192,7 @@ TransactionView::TransactionView(QWidget* parent) : QWidget(parent), model(0), t
connect(copyTxIDAction, SIGNAL(triggered()), this, SLOT(copyTxID()));
connect(editLabelAction, SIGNAL(triggered()), this, SLOT(editLabel()));
connect(showDetailsAction, SIGNAL(triggered()), this, SLOT(showDetails()));
connect(hideOrphansAction, SIGNAL(toggled(bool)), this, SLOT(updateHideOrphans(bool)));
}

void TransactionView::setModel(WalletModel* model)
Expand Down Expand Up @@ -236,7 +242,8 @@ void TransactionView::setModel(WalletModel* model)
mapperThirdPartyTxUrls->setMapping(thirdPartyTxUrlAction, listUrls[i].trimmed());
}
}
connect(model->getOptionsModel(), SIGNAL(hideOrphansChanged(bool)), this, SLOT(hideOrphans(bool)));

connect(model->getOptionsModel(), SIGNAL(hideOrphansChanged(bool)), this, SLOT(updateHideOrphans(bool)));
}

// show/hide column Watch-only
Expand Down Expand Up @@ -324,6 +331,22 @@ void TransactionView::hideOrphans(bool fHide)
transactionProxyModel->setHideOrphans(fHide);
}

void TransactionView::updateHideOrphans(bool fHide)
{
QSettings settings;
if (settings.value("fHideOrphans", false).toBool() != fHide) {
settings.setValue("fHideOrphans", fHide);
if (model && model->getOptionsModel())
emit model->getOptionsModel()->hideOrphansChanged(fHide);
}
hideOrphans(fHide);
// retain consistency with other checkboxes
if (hideOrphansAction->isChecked() != fHide)
hideOrphansAction->setChecked(fHide);

}


void TransactionView::chooseWatchonly(int idx)
{
if (!transactionProxyModel)
Expand Down
3 changes: 3 additions & 0 deletions src/qt/transactionview.h
Expand Up @@ -10,6 +10,7 @@

#include <QKeyEvent>
#include <QWidget>
#include <QAction>

class TransactionFilterProxy;
class WalletModel;
Expand Down Expand Up @@ -67,6 +68,7 @@ class TransactionView : public QWidget
QComboBox* watchOnlyWidget;
QLineEdit* addressWidget;
QLineEdit* amountWidget;
QAction* hideOrphansAction;

QMenu* contextMenu;
QSignalMapper* mapperThirdPartyTxUrls;
Expand Down Expand Up @@ -108,6 +110,7 @@ public slots:
void chooseDate(int idx);
void chooseType(int idx);
void hideOrphans(bool fHide);
void updateHideOrphans(bool fHide);
void chooseWatchonly(int idx);
void changedPrefix(const QString& prefix);
void changedAmount(const QString& amount);
Expand Down

0 comments on commit b3ff4a1

Please sign in to comment.