20 #include <QLatin1Char> 21 #include <QLatin1String> 24 QAbstractTableModel(parent), walletModel(parent)
44 if (parent.isValid()) {
52 if (parent.isValid()) {
63 if(role == Qt::DisplayRole || role == Qt::EditRole)
66 switch(
index.column())
73 return tr(
"(no label)");
82 return tr(
"(no message)");
90 return tr(
"(no amount requested)");
91 else if (role == Qt::EditRole)
97 else if (role == Qt::TextAlignmentRole)
100 return (
int)(Qt::AlignRight|Qt::AlignVCenter);
112 if(orientation == Qt::Horizontal)
114 if(role == Qt::DisplayRole && section <
columns.size())
133 return tr(
"Requested") +
134 QLatin1String(
" (") +
143 return createIndex(row, column);
152 for (
int i = 0; i <
count; ++i)
159 beginRemoveRows(parent, row, row +
count - 1);
170 return Qt::ItemIsSelectable | Qt::ItemIsEnabled;
178 newEntry.
date = QDateTime::currentDateTime();
193 std::vector<uint8_t>
data(recipient.begin(), recipient.end());
211 beginInsertRows(QModelIndex(), 0, 0);
212 list.prepend(recipient);
231 if (
order == Qt::DescendingOrder)
232 std::swap(pLeft, pRight);
237 return pLeft->
date.toTime_t() < pRight->
date.toTime_t();
245 return pLeft->
id < pRight->
id;
void addNewRequest(const SendCoinsRecipient &recipient)
interfaces::Wallet & wallet() const
bool setData(const QModelIndex &index, const QVariant &value, int role) override
int64_t nReceiveRequestsMaxId
~RecentRequestsTableModel()
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
Qt::ItemFlags flags(const QModelIndex &index) const override
static QString format(int unit, const CAmount &amount, bool plussign=false, SeparatorStyle separators=SeparatorStyle::STANDARD, bool justify=false)
Format as string.
QString dateTimeStr(const QDateTime &date)
CTxDestination DecodeDestination(const std::string &str, std::string &error_msg)
Double ended buffer combining vector and stream-like interfaces.
int getDisplayUnit() const
void sort(int column, Qt::SortOrder order=Qt::AscendingOrder) override
QVariant data(const QModelIndex &index, int role) const override
std::string ToString(const T &t)
Locale-independent version of std::to_string.
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
QList< RecentRequestEntry > list
virtual bool setAddressReceiveRequest(const CTxDestination &dest, const std::string &id, const std::string &value)=0
Save or remove receive request.
static QString shortName(int unit)
Short name.
SendCoinsRecipient recipient
const RecentRequestEntry & entry(int row) const
void displayUnitChanged(int unit)
int columnCount(const QModelIndex &parent) const override
int rowCount(const QModelIndex &parent) const override
WalletModel * walletModel
Interface to Bitcoin wallet from Qt view code.
void updateAmountColumnTitle()
Updates the column title to "Amount (DisplayUnit)" and emits headerDataChanged() signal for table hea...
bool removeRows(int row, int count, const QModelIndex &parent=QModelIndex()) override
virtual std::vector< std::string > getAddressReceiveRequests()=0
Get receive requests.
bool operator()(const RecentRequestEntry &left, const RecentRequestEntry &right) const
RecentRequestsTableModel(WalletModel *parent)
QString getAmountTitle()
Gets title for amount column including current display unit if optionsModel reference available...
static const int CLIENT_VERSION
bitcoind-res.rc includes this file, but it cannot cope with real c++ code.
OptionsModel * getOptionsModel()