limenkaaddressvalidator.h raw

   1  // Copyright (c) 2011-2020 The Limenka 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 LIMENKA_QT_LIMENKAADDRESSVALIDATOR_H
   6  #define LIMENKA_QT_LIMENKAADDRESSVALIDATOR_H
   7  
   8  #include <QValidator>
   9  
  10  #include <vector>
  11  
  12  /** Base58 entry widget validator, checks for valid characters and
  13   * removes some whitespace.
  14   */
  15  class LimenkaAddressEntryValidator : public QValidator
  16  {
  17      Q_OBJECT
  18  
  19  public:
  20      explicit LimenkaAddressEntryValidator(QObject *parent);
  21  
  22      virtual State validate(QString &input, std::vector<int>&error_locations) const;
  23      virtual State validate(QString &input, int &pos) const override;
  24  };
  25  
  26  /** Limenka address widget validator, checks for a valid limenka address.
  27   */
  28  class LimenkaAddressCheckValidator : public LimenkaAddressEntryValidator
  29  {
  30      Q_OBJECT
  31  
  32  public:
  33      explicit LimenkaAddressCheckValidator(QObject *parent);
  34  
  35      using LimenkaAddressEntryValidator::validate;
  36      State validate(QString &input, std::vector<int>&error_locations) const override;
  37  };
  38  
  39  #endif // LIMENKA_QT_LIMENKAADDRESSVALIDATOR_H
  40