| 390 | } |
| 391 | |
| 392 | void TransactionView::contextualMenu(const QPoint &point) |
| 393 | { |
| 394 | QModelIndex index = transactionView->indexAt(point); |
| 395 | QModelIndexList selection = transactionView->selectionModel()->selectedRows(0); |
| 396 | if (selection.empty()) |
| 397 | return; |
| 398 | |
| 399 | // check if transaction can be abandoned, disable context menu action in case it doesn't |
| 400 | uint256 hash; |
| 401 | hash.SetHex(selection.at(0).data(TransactionTableModel::TxHashRole).toString().toStdString()); |
| 402 | abandonAction->setEnabled(model->wallet().transactionCanBeAbandoned(hash)); |
| 403 | bumpFeeAction->setEnabled(model->wallet().transactionCanBeBumped(hash)); |
| 404 | copyAddressAction->setEnabled(GUIUtil::hasEntryData(transactionView, 0, TransactionTableModel::AddressRole)); |
| 405 | copyLabelAction->setEnabled(GUIUtil::hasEntryData(transactionView, 0, TransactionTableModel::LabelRole)); |
| 406 | |
| 407 | if (index.isValid()) { |
| 408 | GUIUtil::PopupMenu(contextMenu, transactionView->viewport()->mapToGlobal(point)); |
| 409 | } |
| 410 | } |
| 411 | |
| 412 | void TransactionView::abandonTx() |
| 413 | { |
nothing calls this directly
no test coverage detected