Bitcoin
Public Types | Public Slots | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Friends | List of all members
AddressTableModel Class Reference

#include <addresstablemodel.h>

Inheritance diagram for AddressTableModel:

Public Types

enum  ColumnIndex { Label = 0, Address = 1 }
 
enum  RoleIndex { TypeRole = Qt::UserRole }
 
enum  EditStatus {
  OK, NO_CHANGES, INVALID_ADDRESS, DUPLICATE_ADDRESS,
  WALLET_UNLOCK_FAILURE, KEY_GENERATION_FAILURE
}
 

Public Slots

void updateEntry (const QString &address, const QString &label, bool isMine, const QString &purpose, int status)
 

Public Member Functions

 AddressTableModel (WalletModel *parent=nullptr)
 
 ~AddressTableModel ()
 
QString addRow (const QString &type, const QString &label, const QString &address, const OutputType address_type)
 
QString labelForAddress (const QString &address) const
 
QString purposeForAddress (const QString &address) const
 
int lookupAddress (const QString &address) const
 
EditStatus getEditStatus () const
 
OutputType GetDefaultAddressType () const
 
Methods overridden from QAbstractTableModel
int rowCount (const QModelIndex &parent) const
 
int columnCount (const QModelIndex &parent) const
 
QVariant data (const QModelIndex &index, int role) const
 
bool setData (const QModelIndex &index, const QVariant &value, int role)
 
QVariant headerData (int section, Qt::Orientation orientation, int role) const
 
QModelIndex index (int row, int column, const QModelIndex &parent) const
 
bool removeRows (int row, int count, const QModelIndex &parent=QModelIndex())
 
Qt::ItemFlags flags (const QModelIndex &index) const
 

Static Public Attributes

static const QString Send = "S"
 
static const QString Receive = "R"
 

Private Member Functions

bool getAddressData (const QString &address, std::string *name, std::string *purpose) const
 
void emitDataChanged (int index)
 

Private Attributes

WalletModel *const walletModel
 
AddressTablePrivpriv = nullptr
 
QStringList columns
 
EditStatus editStatus = OK
 

Friends

class AddressTablePriv
 

Detailed Description

Qt model of the address book in the core. This allows views to access and modify the address book.

Member Enumeration Documentation

◆ ColumnIndex

Enumerator
Label 

User specified label

Address 

Bitcoin address

◆ EditStatus

Return status of edit/insert operation

Enumerator
OK 

Everything ok

NO_CHANGES 

No changes were made during edit operation

INVALID_ADDRESS 

Unparseable address

DUPLICATE_ADDRESS 

Address already in address book

WALLET_UNLOCK_FAILURE 

Wallet could not be unlocked to create new receiving address

KEY_GENERATION_FAILURE 

Generating a new public key for a receiving address failed

◆ RoleIndex

Enumerator
TypeRole 

Type of address (Send or Receive)

Constructor & Destructor Documentation

◆ AddressTableModel()

AddressTableModel::AddressTableModel ( WalletModel parent = nullptr)
explicit

◆ ~AddressTableModel()

AddressTableModel::~AddressTableModel ( )

Member Function Documentation

◆ addRow()

QString AddressTableModel::addRow ( const QString &  type,
const QString &  label,
const QString &  address,
const OutputType  address_type 
)

◆ columnCount()

int AddressTableModel::columnCount ( const QModelIndex &  parent) const

◆ data()

QVariant AddressTableModel::data ( const QModelIndex &  index,
int  role 
) const

◆ emitDataChanged()

void AddressTableModel::emitDataChanged ( int  index)
private

Notify listeners that data changed.

◆ flags()

Qt::ItemFlags AddressTableModel::flags ( const QModelIndex &  index) const

◆ getAddressData()

bool AddressTableModel::getAddressData ( const QString &  address,
std::string *  name,
std::string *  purpose 
) const
private

Look up address book data given an address string.

◆ GetDefaultAddressType()

OutputType AddressTableModel::GetDefaultAddressType ( ) const

◆ getEditStatus()

EditStatus AddressTableModel::getEditStatus ( ) const
inline

◆ headerData()

QVariant AddressTableModel::headerData ( int  section,
Qt::Orientation  orientation,
int  role 
) const

◆ index()

QModelIndex AddressTableModel::index ( int  row,
int  column,
const QModelIndex &  parent 
) const

◆ labelForAddress()

QString AddressTableModel::labelForAddress ( const QString &  address) const

Look up label for address in address book, if not found return empty string.

◆ lookupAddress()

int AddressTableModel::lookupAddress ( const QString &  address) const

◆ purposeForAddress()

QString AddressTableModel::purposeForAddress ( const QString &  address) const

Look up purpose for address in address book, if not found return empty string.

◆ removeRows()

bool AddressTableModel::removeRows ( int  row,
int  count,
const QModelIndex &  parent = QModelIndex() 
)

◆ rowCount()

int AddressTableModel::rowCount ( const QModelIndex &  parent) const

◆ setData()

bool AddressTableModel::setData ( const QModelIndex &  index,
const QVariant &  value,
int  role 
)

◆ updateEntry

void AddressTableModel::updateEntry ( const QString &  address,
const QString &  label,
bool  isMine,
const QString &  purpose,
int  status 
)
slot

Friends And Related Function Documentation

◆ AddressTablePriv

friend class AddressTablePriv
friend

Member Data Documentation

◆ columns

QStringList AddressTableModel::columns
private

◆ editStatus

EditStatus AddressTableModel::editStatus = OK
private

◆ priv

AddressTablePriv* AddressTableModel::priv = nullptr
private

◆ Receive

const QString AddressTableModel::Receive = "R"
static

Specifies receive address

◆ Send

const QString AddressTableModel::Send = "S"
static

Specifies send address

◆ walletModel

WalletModel* const AddressTableModel::walletModel
private

The documentation for this class was generated from the following files: