diff options
author | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2018-12-02 14:39:55 +0100 |
---|---|---|
committer | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2018-12-17 19:50:23 +0000 |
commit | b8720e3e7a93121cd2e6dc081d872e8000ce81c9 (patch) | |
tree | 3549d54bbcac23b9e1d35f03de3ed99607724997 /examples/widgets/widgets/validators/main.cpp | |
parent | 7ec7f338bc7c14cfd68be7d743bbffeb70c5e239 (diff) |
Cleanup Widgets examples - Validator example
Cleanup the widgets examples - move the ValidatorWidget class into its
own source/header file instead of implementing it in main.cpp
Change-Id: I2b74ca4f2491168453dc31e0631f31e3ac83123c
Reviewed-by: Konstantin Shegunov <kshegunov@gmail.com>
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Diffstat (limited to 'examples/widgets/widgets/validators/main.cpp')
-rw-r--r-- | examples/widgets/widgets/validators/main.cpp | 85 |
1 files changed, 2 insertions, 83 deletions
diff --git a/examples/widgets/widgets/validators/main.cpp b/examples/widgets/widgets/validators/main.cpp index d8ba2943d0..1fbf12410d 100644 --- a/examples/widgets/widgets/validators/main.cpp +++ b/examples/widgets/widgets/validators/main.cpp @@ -48,88 +48,9 @@ ** ****************************************************************************/ -#include <qdebug.h> -#include <QApplication> -#include <QLineEdit> -#include <QValidator> - -#include "ui_validators.h" - -class ValidatorWidget : public QWidget, public Ui::ValidatorsForm -{ - Q_OBJECT -public: - ValidatorWidget(QWidget *parent = 0); - -private slots: - void updateValidator(); - void updateDoubleValidator(); - void _setLocale(const QLocale &l) { setLocale(l); updateValidator(); updateDoubleValidator(); } - -private: - QIntValidator *validator; - QDoubleValidator *doubleValidator; -}; - -ValidatorWidget::ValidatorWidget(QWidget *parent) - : QWidget(parent) -{ - setupUi(this); - - connect(localeSelector, SIGNAL(localeSelected(QLocale)), this, SLOT(_setLocale(QLocale))); - - connect(minVal, SIGNAL(editingFinished()), this, SLOT(updateValidator())); - connect(maxVal, SIGNAL(editingFinished()), this, SLOT(updateValidator())); - connect(editor, SIGNAL(editingFinished()), ledWidget, SLOT(flash())); - - connect(doubleMaxVal, SIGNAL(editingFinished()), this, SLOT(updateDoubleValidator())); - connect(doubleMinVal, SIGNAL(editingFinished()), this, SLOT(updateDoubleValidator())); - connect(doubleDecimals, SIGNAL(valueChanged(int)), this, SLOT(updateDoubleValidator())); - connect(doubleFormat, SIGNAL(activated(int)), this, SLOT(updateDoubleValidator())); - connect(doubleEditor, SIGNAL(editingFinished()), doubleLedWidget, SLOT(flash())); +#include "validatorwidget.h" - validator = 0; - doubleValidator = 0; - updateValidator(); - updateDoubleValidator(); -}; - -void ValidatorWidget::updateValidator() -{ - QIntValidator *v = new QIntValidator(minVal->value(), maxVal->value(), this); - v->setLocale(locale()); - editor->setValidator(v); - delete validator; - validator = v; - - QString s = editor->text(); - int i = 0; - if (validator->validate(s, i) == QValidator::Invalid) { - editor->clear(); - } else { - editor->setText(s); - } -} - -void ValidatorWidget::updateDoubleValidator() -{ - QDoubleValidator *v - = new QDoubleValidator(doubleMinVal->value(), doubleMaxVal->value(), - doubleDecimals->value(), this); - v->setNotation(static_cast<QDoubleValidator::Notation>(doubleFormat->currentIndex())); - v->setLocale(locale()); - doubleEditor->setValidator(v); - delete doubleValidator; - doubleValidator = v; - - QString s = doubleEditor->text(); - int i = 0; - if (doubleValidator->validate(s, i) == QValidator::Invalid) { - doubleEditor->clear(); - } else { - doubleEditor->setText(s); - } -} +#include <QApplication> int main(int argc, char **argv) { @@ -142,5 +63,3 @@ int main(int argc, char **argv) return app.exec(); } - -#include "main.moc" |