File indexing completed on 2024-06-16 04:46:58
0001 /* 0002 SPDX-FileCopyrightText: 2014-2015 Christian Dávid <christian-david@web.de> 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 #ifndef IBANBICITEMEDIT_H 0007 #define IBANBICITEMEDIT_H 0008 0009 #include <QWidget> 0010 #include <payeeidentifier/payeeidentifier.h> 0011 0012 namespace Ui 0013 { 0014 class ibanBicItemEdit; 0015 } 0016 0017 class ibanBicItemEdit : public QWidget 0018 { 0019 Q_OBJECT 0020 Q_PROPERTY(payeeIdentifier identifier READ identifier WRITE setIdentifier NOTIFY identifierChanged STORED true) 0021 Q_PROPERTY(QString iban READ iban WRITE setIban NOTIFY ibanChanged STORED false DESIGNABLE true) 0022 Q_PROPERTY(QString bic READ bic WRITE setBic NOTIFY bicChanged STORED false DESIGNABLE true) 0023 0024 public: 0025 explicit ibanBicItemEdit(QWidget* parent = 0); 0026 0027 payeeIdentifier identifier() const; 0028 QString iban() const; 0029 QString bic() const; 0030 0031 public Q_SLOTS: 0032 void setIdentifier(const payeeIdentifier&); 0033 void setIban(const QString&); 0034 void setBic(const QString&); 0035 0036 Q_SIGNALS: 0037 void commitData(QWidget*); 0038 void closeEditor(QWidget* editor); 0039 void identifierChanged(payeeIdentifier); 0040 void ibanChanged(QString); 0041 void bicChanged(QString); 0042 0043 private Q_SLOTS: 0044 void updateIdentifier(); 0045 0046 /** @brief emits commitData(this) and closeEditor(this) */ 0047 void editFinished(); 0048 0049 private: 0050 struct Private; 0051 Private* d; 0052 }; 0053 0054 #endif // IBANBICITEMEDIT_H