electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit 6d12ebabbb686bcd028b659c6a6ce2cb4782bc14
parent 53dea824a4d58b817365d54fd3de99f736d875ad
Author: ghost43 <somber.night@protonmail.com>
Date:   Mon,  4 Nov 2019 16:24:55 +0000

qt tx dialog: show dropdown for "export", instead of separate buttons (#5739)


Diffstat:
Melectrum/gui/qt/transaction_dialog.py | 26++++++++++++++++----------
1 file changed, 16 insertions(+), 10 deletions(-)

diff --git a/electrum/gui/qt/transaction_dialog.py b/electrum/gui/qt/transaction_dialog.py @@ -33,7 +33,7 @@ from typing import TYPE_CHECKING from PyQt5.QtCore import QSize, Qt from PyQt5.QtGui import QTextCharFormat, QBrush, QFont from PyQt5.QtWidgets import (QDialog, QLabel, QPushButton, QHBoxLayout, QVBoxLayout, - QTextEdit, QFrame) + QTextEdit, QFrame, QAction, QToolButton, QMenu) import qrcode from qrcode import exceptions @@ -132,23 +132,29 @@ class TxDialog(QDialog, MessageBoxMixin): b.setToolTip(SAVE_BUTTON_ENABLED_TOOLTIP) b.clicked.connect(self.save) - self.export_button = b = QPushButton(_("Export")) - b.clicked.connect(self.export) - self.cancel_button = b = QPushButton(_("Close")) b.clicked.connect(self.close) b.setDefault(True) - self.qr_button = b = QPushButton() - b.setIcon(read_QIcon(qr_icon)) - b.clicked.connect(self.show_qr) - - self.copy_button = CopyButton(lambda: str(self.tx), parent.app) + export_actions_menu = QMenu() + action = QAction(_("Copy to clipboard"), self) + action.triggered.connect(lambda: parent.app.clipboard().setText((lambda: str(self.tx))())) + export_actions_menu.addAction(action) + action = QAction(read_QIcon(qr_icon), _("Show as QR code"), self) + action.triggered.connect(self.show_qr) + export_actions_menu.addAction(action) + action = QAction(_("Export to file"), self) + action.triggered.connect(self.export) + export_actions_menu.addAction(action) + self.export_actions_button = QToolButton() + self.export_actions_button.setText(_("Export")) + self.export_actions_button.setMenu(export_actions_menu) + self.export_actions_button.setPopupMode(QToolButton.InstantPopup) # Action buttons self.buttons = [self.sign_button, self.broadcast_button, self.cancel_button] # Transaction sharing buttons - self.sharing_buttons = [self.copy_button, self.qr_button, self.export_button, self.save_button] + self.sharing_buttons = [self.export_actions_button, self.save_button] run_hook('transaction_dialog', self)