Merge #10114: [tests] sync_with_ping should assert that ping hasn't timed out
[bitcoinplatinum.git] / src / qt / qvalidatedlineedit.h
blob66734cc9d4f974148a232daa6b16258928cfe2a3
1 // Copyright (c) 2011-2015 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.
5 #ifndef BITCOIN_QT_QVALIDATEDLINEEDIT_H
6 #define BITCOIN_QT_QVALIDATEDLINEEDIT_H
8 #include <QLineEdit>
10 /** Line edit that can be marked as "invalid" to show input validation feedback. When marked as invalid,
11 it will get a red background until it is focused.
13 class QValidatedLineEdit : public QLineEdit
15 Q_OBJECT
17 public:
18 explicit QValidatedLineEdit(QWidget *parent);
19 void clear();
20 void setCheckValidator(const QValidator *v);
21 bool isValid();
23 protected:
24 void focusInEvent(QFocusEvent *evt);
25 void focusOutEvent(QFocusEvent *evt);
27 private:
28 bool valid;
29 const QValidator *checkValidator;
31 public Q_SLOTS:
32 void setValid(bool valid);
33 void setEnabled(bool enabled);
35 Q_SIGNALS:
36 void validationDidChange(QValidatedLineEdit *validatedLineEdit);
38 private Q_SLOTS:
39 void markValid();
40 void checkValidity();
43 #endif // BITCOIN_QT_QVALIDATEDLINEEDIT_H