Bitcoin ABC  0.26.3
P2P Digital Currency
optionsdialog.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2016 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_QT_OPTIONSDIALOG_H
6 #define BITCOIN_QT_OPTIONSDIALOG_H
7 
8 #include <QDialog>
9 #include <QValidator>
10 
11 class OptionsModel;
12 class QValidatedLineEdit;
13 
14 QT_BEGIN_NAMESPACE
15 class QDataWidgetMapper;
16 QT_END_NAMESPACE
17 
18 namespace Ui {
19 class OptionsDialog;
20 }
21 
23 class ProxyAddressValidator : public QValidator {
24  Q_OBJECT
25 
26 public:
27  explicit ProxyAddressValidator(QObject *parent);
28 
29  State validate(QString &input, int &pos) const override;
30 };
31 
33 class ThirdPartyTxUrlsValidator : public QValidator {
34  Q_OBJECT
35 
36 public:
37  explicit ThirdPartyTxUrlsValidator(QObject *parent);
38 
39  State validate(QString &input, int &pos) const override;
40 };
41 
43 class OptionsDialog : public QDialog {
44  Q_OBJECT
45 
46 public:
47  explicit OptionsDialog(QWidget *parent, bool enableWallet);
49 
50  enum Tab {
53  };
54 
56  void setMapper();
58 
59 private Q_SLOTS:
60  /* set OK button state (enabled / disabled) */
61  void setOkButtonState(bool fState);
64  void on_okButton_clicked();
66 
67  void on_hideTrayIcon_stateChanged(int fState);
68 
69  void togglePruneWarning(bool enabled);
70  void showRestartWarning(bool fPersistent = false);
71  void clearStatusLabel();
73  /* query the networks, for which the default proxy is used */
76 
77 Q_SIGNALS:
78  void proxyIpChecks(QValidatedLineEdit *pUiProxyIp, uint16_t nProxyPort);
79 
80 private:
81  Ui::OptionsDialog *ui;
83  QDataWidgetMapper *mapper;
84 };
85 
86 #endif // BITCOIN_QT_OPTIONSDIALOG_H
Preferences dialog.
Definition: optionsdialog.h:43
void setModel(OptionsModel *model)
OptionsModel * model
Definition: optionsdialog.h:82
void setCurrentTab(OptionsDialog::Tab tab)
void on_okButton_clicked()
void on_openBitcoinConfButton_clicked()
void updateDefaultProxyNets()
void updateProxyValidationState()
void togglePruneWarning(bool enabled)
void proxyIpChecks(QValidatedLineEdit *pUiProxyIp, uint16_t nProxyPort)
void on_hideTrayIcon_stateChanged(int fState)
void showRestartWarning(bool fPersistent=false)
void updateThirdPartyTxUrlsState()
void on_resetButton_clicked()
Ui::OptionsDialog * ui
Definition: optionsdialog.h:81
OptionsDialog(QWidget *parent, bool enableWallet)
QDataWidgetMapper * mapper
Definition: optionsdialog.h:83
void clearStatusLabel()
void on_cancelButton_clicked()
void setOkButtonState(bool fState)
Interface from Qt to configuration data structure for Bitcoin client.
Definition: optionsmodel.h:48
Proxy address widget validator, checks for a valid proxy address.
Definition: optionsdialog.h:23
ProxyAddressValidator(QObject *parent)
State validate(QString &input, int &pos) const override
Line edit that can be marked as "invalid" to show input validation feedback.
Third party tx URL validator, checks for an https link.
Definition: optionsdialog.h:33
ThirdPartyTxUrlsValidator(QObject *parent)
State validate(QString &input, int &pos) const override