2011-07-16 19:01:05 +02:00
# ifndef SENDCOINSENTRY_H
# define SENDCOINSENTRY_H
2013-07-22 08:50:39 +02:00
# include <QStackedWidget>
# include "walletmodel.h"
2011-07-16 19:01:05 +02:00
namespace Ui {
class SendCoinsEntry ;
}
class WalletModel ;
2013-07-22 08:50:39 +02:00
/**
* A single entry in the dialog for sending bitcoins .
* Stacked widget , with different UIs for payment requests
* with a strong payee identity .
*/
class SendCoinsEntry : public QStackedWidget
2011-07-16 19:01:05 +02:00
{
Q_OBJECT
public :
explicit SendCoinsEntry ( QWidget * parent = 0 ) ;
~ SendCoinsEntry ( ) ;
void setModel ( WalletModel * model ) ;
bool validate ( ) ;
SendCoinsRecipient getValue ( ) ;
2011-08-07 16:04:48 +02:00
2011-11-13 13:19:52 +01:00
/** Return whether the entry is still empty and unedited */
2011-08-07 16:04:48 +02:00
bool isClear ( ) ;
void setValue ( const SendCoinsRecipient & value ) ;
2013-01-25 18:46:53 +01:00
void setAddress ( const QString & address ) ;
2011-08-07 16:04:48 +02:00
2012-09-22 07:32:28 +02:00
/** Set up the tab chain manually, as Qt messes up the tab chain by default in some cases (issue https://bugreports.qt-project.org/browse/QTBUG-10907).
2011-11-13 13:19:52 +01:00
*/
2011-07-16 19:01:05 +02:00
QWidget * setupTabChain ( QWidget * prev ) ;
2011-12-07 06:00:04 +01:00
void setFocus ( ) ;
2011-07-16 19:01:05 +02:00
public slots :
void setRemoveEnabled ( bool enabled ) ;
void clear ( ) ;
signals :
void removeEntry ( SendCoinsEntry * entry ) ;
private slots :
void on_deleteButton_clicked ( ) ;
void on_payTo_textChanged ( const QString & address ) ;
void on_addressBookButton_clicked ( ) ;
void on_pasteButton_clicked ( ) ;
2012-06-09 15:41:21 +02:00
void updateDisplayUnit ( ) ;
2011-07-16 19:01:05 +02:00
private :
2013-07-22 08:50:39 +02:00
SendCoinsRecipient recipient ;
2011-07-16 19:01:05 +02:00
Ui : : SendCoinsEntry * ui ;
WalletModel * model ;
} ;
# endif // SENDCOINSENTRY_H