2018-01-02 18:12:05 +01:00
|
|
|
// Copyright (c) 2011-2017 The Bitcoin Core developers
|
2014-12-13 05:09:33 +01:00
|
|
|
// Distributed under the MIT software license, see the accompanying
|
2013-11-04 16:20:43 +01:00
|
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
|
2014-11-03 16:16:40 +01:00
|
|
|
#ifndef BITCOIN_QT_OPTIONSDIALOG_H
|
|
|
|
#define BITCOIN_QT_OPTIONSDIALOG_H
|
2011-05-12 09:40:40 +02:00
|
|
|
|
|
|
|
#include <QDialog>
|
2015-11-16 10:43:36 +01:00
|
|
|
#include <QValidator>
|
2012-06-08 15:21:55 +02:00
|
|
|
|
2013-04-13 07:13:08 +02:00
|
|
|
class OptionsModel;
|
|
|
|
class QValidatedLineEdit;
|
|
|
|
|
2014-10-31 09:36:30 +01:00
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
class QDataWidgetMapper;
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
2012-06-08 15:21:55 +02:00
|
|
|
namespace Ui {
|
|
|
|
class OptionsDialog;
|
|
|
|
}
|
2011-05-12 09:40:40 +02:00
|
|
|
|
2015-11-16 10:43:36 +01:00
|
|
|
/** Proxy address widget validator, checks for a valid proxy address.
|
|
|
|
*/
|
|
|
|
class ProxyAddressValidator : public QValidator
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
explicit ProxyAddressValidator(QObject *parent);
|
|
|
|
|
|
|
|
State validate(QString &input, int &pos) const;
|
|
|
|
};
|
|
|
|
|
2011-11-13 13:19:52 +01:00
|
|
|
/** Preferences dialog. */
|
2011-05-12 09:40:40 +02:00
|
|
|
class OptionsDialog : public QDialog
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
2012-06-08 15:21:55 +02:00
|
|
|
|
2011-05-12 09:40:40 +02:00
|
|
|
public:
|
2014-11-08 19:48:35 +01:00
|
|
|
explicit OptionsDialog(QWidget *parent, bool enableWallet);
|
2012-06-08 15:21:55 +02:00
|
|
|
~OptionsDialog();
|
2011-05-31 22:24:53 +02:00
|
|
|
|
|
|
|
void setModel(OptionsModel *model);
|
2012-06-08 15:21:55 +02:00
|
|
|
void setMapper();
|
2011-05-12 09:40:40 +02:00
|
|
|
|
2015-07-14 13:59:05 +02:00
|
|
|
private Q_SLOTS:
|
2013-12-03 09:10:10 +01:00
|
|
|
/* set OK button state (enabled / disabled) */
|
|
|
|
void setOkButtonState(bool fState);
|
2012-08-18 15:54:39 +02:00
|
|
|
void on_resetButton_clicked();
|
2017-02-28 18:13:34 +01:00
|
|
|
void on_openBitcoinConfButton_clicked();
|
2012-06-08 15:21:55 +02:00
|
|
|
void on_okButton_clicked();
|
|
|
|
void on_cancelButton_clicked();
|
2016-05-12 04:28:02 +02:00
|
|
|
|
|
|
|
void on_hideTrayIcon_stateChanged(int fState);
|
2012-06-08 15:21:55 +02:00
|
|
|
|
2013-12-03 09:10:10 +01:00
|
|
|
void showRestartWarning(bool fPersistent = false);
|
|
|
|
void clearStatusLabel();
|
2015-11-18 14:02:14 +01:00
|
|
|
void updateProxyValidationState();
|
2014-07-25 18:20:40 +02:00
|
|
|
/* query the networks, for which the default proxy is used */
|
|
|
|
void updateDefaultProxyNets();
|
2012-06-08 15:21:55 +02:00
|
|
|
|
2015-07-14 13:59:05 +02:00
|
|
|
Q_SIGNALS:
|
2013-12-03 09:10:10 +01:00
|
|
|
void proxyIpChecks(QValidatedLineEdit *pUiProxyIp, int nProxyPort);
|
2011-11-13 13:19:52 +01:00
|
|
|
|
2011-05-12 14:44:52 +02:00
|
|
|
private:
|
2012-06-08 15:21:55 +02:00
|
|
|
Ui::OptionsDialog *ui;
|
2011-05-31 22:24:53 +02:00
|
|
|
OptionsModel *model;
|
2014-10-23 19:08:10 +02:00
|
|
|
QDataWidgetMapper *mapper;
|
2011-05-12 09:40:40 +02:00
|
|
|
};
|
|
|
|
|
2014-11-03 16:16:40 +01:00
|
|
|
#endif // BITCOIN_QT_OPTIONSDIALOG_H
|