/
githubmirror
/
bitcoin
Обзор
Документация
Войти
/
githubmirror
/
bitcoin
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/qt/transactionview.h
129 строк
3 KB
MarcoFalke
scripted-diff: [doc] Unify stale copyright headers
17 дек 2025, 00:21
17 дек 2025, 00:21
fa5f297
Код
Авторство
О чём код?
// Copyright (c) 2011-present The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #ifndef BITCOIN_QT_TRANSACTIONVIEW_H #define BITCOIN_QT_TRANSACTIONVIEW_H #include <qt/guiutil.h> #include <primitives/transaction_identifier.h> #include <uint256.h> #include <QWidget> #include <QKeyEvent> class PlatformStyle; class TransactionDescDialog; class TransactionFilterProxy; class WalletModel; QT_BEGIN_NAMESPACE class QComboBox; class QDateTimeEdit; class QFrame; class QLineEdit; class QMenu; class QModelIndex; class QTableView; QT_END_NAMESPACE /** Widget showing the transaction list for a wallet, including a filter row. Using the filter row, the user can view or export a subset of the transactions. */ class TransactionView : public QWidget { Q_OBJECT public: explicit TransactionView(const PlatformStyle *platformStyle, QWidget *parent = nullptr); ~TransactionView(); void setModel(WalletModel *model); // Date ranges for filter enum DateEnum { All, Today, ThisWeek, ThisMonth, LastMonth, ThisYear, Range }; enum ColumnWidths { STATUS_COLUMN_WIDTH = 30, DATE_COLUMN_WIDTH = 120, TYPE_COLUMN_WIDTH = 113, AMOUNT_MINIMUM_COLUMN_WIDTH = 120, MINIMUM_COLUMN_WIDTH = 23 }; protected: void changeEvent(QEvent* e) override; private: WalletModel *model{nullptr}; TransactionFilterProxy *transactionProxyModel{nullptr}; QTableView *transactionView{nullptr}; QComboBox *dateWidget; QComboBox *typeWidget; QLineEdit *search_widget; QLineEdit *amountWidget; QMenu *contextMenu; QFrame *dateRangeWidget; QDateTimeEdit *dateFrom; QDateTimeEdit *dateTo; QAction *abandonAction{nullptr}; QAction *bumpFeeAction{nullptr}; QAction *copyAddressAction{nullptr}; QAction *copyLabelAction{nullptr}; QWidget *createDateRangeWidget(); bool eventFilter(QObject *obj, QEvent *event) override; const PlatformStyle* m_platform_style; QList<TransactionDescDialog*> m_opened_dialogs; private Q_SLOTS: void contextualMenu(const QPoint &); void dateRangeChanged(); void showDetails(); void copyAddress(); void editLabel(); void copyLabel(); void copyAmount(); void copyTxID(); void copyTxHex(); void copyTxPlainText(); void openThirdPartyTxUrl(QString url); void abandonTx(); void bumpFee(bool checked); Q_SIGNALS: void doubleClicked(const QModelIndex&); /** Fired when a message should be reported to the user */ void message(const QString &title, const QString &message, unsigned int style); void bumpedFee(const Txid& txid); public Q_SLOTS: void chooseDate(int idx); void chooseType(int idx); void changedAmount(); void changedSearch(); void exportClicked(); void closeOpenedDialogs(); void focusTransaction(const QModelIndex&); void focusTransaction(const Txid& txid); }; #endif // BITCOIN_QT_TRANSACTIONVIEW_H