#include "darksendconfig.h" #include "ui_darksendconfig.h" #include "bitcoinunits.h" #include "guiconstants.h" #include "optionsmodel.h" #include "privatesend-client.h" #include "walletmodel.h" #include #include #include #include DarksendConfig::DarksendConfig(QWidget *parent) : QDialog(parent), ui(new Ui::DarksendConfig), model(0) { ui->setupUi(this); connect(ui->buttonBasic, SIGNAL(clicked()), this, SLOT(clickBasic())); connect(ui->buttonHigh, SIGNAL(clicked()), this, SLOT(clickHigh())); connect(ui->buttonMax, SIGNAL(clicked()), this, SLOT(clickMax())); } DarksendConfig::~DarksendConfig() { delete ui; } void DarksendConfig::setModel(WalletModel *model) { this->model = model; } void DarksendConfig::clickBasic() { configure(true, 1000, 2); QString strAmount(BitcoinUnits::formatWithUnit( model->getOptionsModel()->getDisplayUnit(), 1000 * COIN)); QMessageBox::information(this, tr("PrivateSend Configuration"), tr( "PrivateSend was successfully set to basic (%1 and 2 rounds). You can change this at any time by opening Dash's configuration screen." ).arg(strAmount) ); close(); } void DarksendConfig::clickHigh() { configure(true, 1000, 8); QString strAmount(BitcoinUnits::formatWithUnit( model->getOptionsModel()->getDisplayUnit(), 1000 * COIN)); QMessageBox::information(this, tr("PrivateSend Configuration"), tr( "PrivateSend was successfully set to high (%1 and 8 rounds). You can change this at any time by opening Dash's configuration screen." ).arg(strAmount) ); close(); } void DarksendConfig::clickMax() { configure(true, 1000, 16); QString strAmount(BitcoinUnits::formatWithUnit( model->getOptionsModel()->getDisplayUnit(), 1000 * COIN)); QMessageBox::information(this, tr("PrivateSend Configuration"), tr( "PrivateSend was successfully set to maximum (%1 and 16 rounds). You can change this at any time by opening Dash's configuration screen." ).arg(strAmount) ); close(); } void DarksendConfig::configure(bool enabled, int coins, int rounds) { QSettings settings; settings.setValue("nPrivateSendRounds", rounds); settings.setValue("nPrivateSendAmount", coins); privateSendClient.nPrivateSendRounds = rounds; privateSendClient.nPrivateSendAmount = coins; }