5#ifndef BITCOIN_QT_ADDRESSTABLEMODEL_H
6#define BITCOIN_QT_ADDRESSTABLEMODEL_H
10#include <QAbstractTableModel>
60 int rowCount(
const QModelIndex &parent)
const override;
61 int columnCount(
const QModelIndex &parent)
const override;
62 QVariant
data(
const QModelIndex &
index,
int role)
const override;
63 bool setData(
const QModelIndex &
index,
const QVariant &value,
int role)
override;
64 QVariant
headerData(
int section, Qt::Orientation orientation,
int role)
const override;
65 QModelIndex
index(
int row,
int column,
const QModelIndex &parent)
const override;
66 bool removeRows(
int row,
int count,
const QModelIndex &parent = QModelIndex())
override;
67 Qt::ItemFlags
flags(
const QModelIndex &
index)
const override;
73 QString
addRow(
const QString& type,
const QString& label,
const QString& address,
OutputType address_type);
79 std::optional<wallet::AddressPurpose>
purposeForAddress(
const QString &address)
const;
bool removeRows(int row, int count, const QModelIndex &parent=QModelIndex()) override
@ TypeRole
Type of address (Send or Receive).
int lookupAddress(const QString &address) const
OutputType GetDefaultAddressType() const
EditStatus getEditStatus() const
EditStatus
Return status of edit/insert operation.
@ WALLET_UNLOCK_FAILURE
Wallet could not be unlocked to create new receiving address.
@ NO_CHANGES
No changes were made during edit operation.
@ INVALID_ADDRESS
Unparseable address.
@ KEY_GENERATION_FAILURE
Generating a new public key for a receiving address failed.
@ DUPLICATE_ADDRESS
Address already in address book.
void emitDataChanged(int index)
Notify listeners that data changed.
@ Address
Bitcoin address.
@ Label
User specified label.
QVariant data(const QModelIndex &index, int role) const override
QModelIndex index(int row, int column, const QModelIndex &parent) const override
std::optional< wallet::AddressPurpose > purposeForAddress(const QString &address) const
Look up purpose for address in address book, if not found return empty string.
AddressTableModel(WalletModel *parent=nullptr, bool pk_hash_only=false)
bool getAddressData(const QString &address, std::string *name, wallet::AddressPurpose *purpose) const
Look up address book data given an address string.
int columnCount(const QModelIndex &parent) const override
bool setData(const QModelIndex &index, const QVariant &value, int role) override
static const QString Send
Specifies send address.
QString addRow(const QString &type, const QString &label, const QString &address, OutputType address_type)
void updateEntry(const QString &address, const QString &label, bool isMine, wallet::AddressPurpose purpose, int status)
friend class AddressTablePriv
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
QString GetWalletDisplayName() const
static const QString Receive
Specifies receive address.
int rowCount(const QModelIndex &parent) const override
WalletModel *const walletModel
QString labelForAddress(const QString &address) const
Look up label for address in address book, if not found return empty string.
Interface to Bitcoin wallet from Qt view code.
Interface for accessing a wallet.
AddressPurpose
Address purpose field that has been been stored with wallet sending and receiving addresses since BIP...