forked from ciphrex/mSIGNA
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtxactions.h
108 lines (85 loc) · 2.44 KB
/
txactions.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
///////////////////////////////////////////////////////////////////////////////
//
// mSIGNA
//
// txactions.h
//
// Copyright (c) 2013-2014 Eric Lombrozo
//
// All Rights Reserved.
#pragma once
#include <QObject>
class QWidget;
class QAction;
class QMenu;
class QString;
class TxModel;
class TxView;
class AccountModel;
class KeychainModel;
namespace CoinDB
{
class SynchedVault;
}
class TxActions : public QObject
{
Q_OBJECT
public:
TxActions(TxModel* txModel, TxView* txView, AccountModel* accountModel, KeychainModel* keychainModel, CoinDB::SynchedVault* synchedVault = nullptr, QWidget* parent = nullptr); // model and view must be valid, non-null.
void setNetworkSync(CoinDB::SynchedVault* synchedVault) { m_synchedVault = synchedVault; }
QMenu* getMenu() const { return menu; }
void updateVaultStatus();
signals:
void error(const QString& message);
void setCurrentWidget(QWidget* widget);
void txsChanged();
private slots:
void updateCurrentTx(const QModelIndex& current, const QModelIndex& previous);
void searchTx();
void showSignatureDialog();
void signTx();
void sendTx();
void exportTxToFile();
void importTxFromFile();
void importTxFromClipboard();
void exportAllTxsToFile();
void importTxsFromFile();
void viewRawTx();
void copyAddressToClipboard();
void copyTxHashToClipboard();
void copyRawTxToClipboard();
void insertRawTxFromClipboard();
void saveRawTxToFile();
void insertRawTxFromFile();
void viewTxOnWeb();
void deleteTx();
private:
QWidget* m_parent;
void createActions();
void createMenus();
TxModel* m_txModel;
TxView* m_txView;
AccountModel* m_accountModel;
KeychainModel* m_keychainModel;
CoinDB::SynchedVault* m_synchedVault;
int currentRow;
QAction* searchTxAction;
QAction* signaturesAction;
QAction* signTxAction;
QAction* sendTxAction;
QAction* exportTxToFileAction;
QAction* importTxFromFileAction;
QAction* importTxFromClipboardAction;
QAction* exportAllTxsToFileAction;
QAction* importTxsFromFileAction;
QAction* viewRawTxAction;
QAction* copyAddressToClipboardAction;
QAction* copyTxHashToClipboardAction;
QAction* copyRawTxToClipboardAction;
QAction* insertRawTxFromClipboardAction;
QAction* saveRawTxToFileAction;
QAction* insertRawTxFromFileAction;
QAction* viewTxOnWebAction;
QAction* deleteTxAction;
QMenu* menu;
};