From 8cbf49fec985432d7f83a9b294e967e18506c689 Mon Sep 17 00:00:00 2001 From: SomberNight Date: Wed, 24 Aug 2022 14:05:35 +0000 Subject: [PATCH] Qt balance dialog: use monospace font for btc amounts --- electrum/gui/qt/balance_dialog.py | 26 +++++++++++++------------- electrum/gui/qt/util.py | 7 +++++++ 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/electrum/gui/qt/balance_dialog.py b/electrum/gui/qt/balance_dialog.py index 1b187e22f..ab30e3a68 100644 --- a/electrum/gui/qt/balance_dialog.py +++ b/electrum/gui/qt/balance_dialog.py @@ -34,7 +34,7 @@ from PyQt5.QtGui import QPalette, QPen, QPainter, QPixmap from electrum.i18n import _ -from .util import Buttons, CloseButton, WindowModalDialog, ColorScheme, font_height +from .util import Buttons, CloseButton, WindowModalDialog, ColorScheme, font_height, AmountLabel if TYPE_CHECKING: from .main_window import ElectrumWindow @@ -186,33 +186,33 @@ class BalanceDialog(WindowModalDialog): if frozen: grid.addWidget(LegendWidget(COLOR_FROZEN), 0, 0) grid.addWidget(QLabel(_("Frozen") + ':'), 0, 1) - grid.addWidget(QLabel(frozen_str), 0, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(frozen_fiat_str), 0, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(frozen_str), 0, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(frozen_fiat_str), 0, 3, alignment=Qt.AlignRight) if unconfirmed: grid.addWidget(LegendWidget(COLOR_UNCONFIRMED), 2, 0) grid.addWidget(QLabel(_("Unconfirmed") + ':'), 2, 1) - grid.addWidget(QLabel(unconfirmed_str), 2, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(unconfirmed_fiat_str), 2, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(unconfirmed_str), 2, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(unconfirmed_fiat_str), 2, 3, alignment=Qt.AlignRight) if unmatured: grid.addWidget(LegendWidget(COLOR_UNMATURED), 3, 0) grid.addWidget(QLabel(_("Unmatured") + ':'), 3, 1) - grid.addWidget(QLabel(unmatured_str), 3, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(unmatured_fiat_str), 3, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(unmatured_str), 3, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(unmatured_fiat_str), 3, 3, alignment=Qt.AlignRight) if confirmed: grid.addWidget(LegendWidget(COLOR_CONFIRMED), 1, 0) grid.addWidget(QLabel(_("On-chain") + ':'), 1, 1) - grid.addWidget(QLabel(confirmed_str), 1, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(confirmed_fiat_str), 1, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(confirmed_str), 1, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(confirmed_fiat_str), 1, 3, alignment=Qt.AlignRight) if lightning: grid.addWidget(LegendWidget(COLOR_LIGHTNING), 4, 0) grid.addWidget(QLabel(_("Lightning") + ':'), 4, 1) - grid.addWidget(QLabel(lightning_str), 4, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(lightning_fiat_str), 4, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(lightning_str), 4, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(lightning_fiat_str), 4, 3, alignment=Qt.AlignRight) if f_lightning: grid.addWidget(LegendWidget(COLOR_FROZEN_LIGHTNING), 5, 0) grid.addWidget(QLabel(_("Lightning (frozen)") + ':'), 5, 1) - grid.addWidget(QLabel(f_lightning_str), 5, 2, alignment=Qt.AlignRight) - grid.addWidget(QLabel(f_lightning_fiat_str), 5, 3, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(f_lightning_str), 5, 2, alignment=Qt.AlignRight) + grid.addWidget(AmountLabel(f_lightning_fiat_str), 5, 3, alignment=Qt.AlignRight) vbox.addLayout(grid) vbox.addStretch(1) diff --git a/electrum/gui/qt/util.py b/electrum/gui/qt/util.py index 41d8ec6e1..8d1e54c13 100644 --- a/electrum/gui/qt/util.py +++ b/electrum/gui/qt/util.py @@ -111,6 +111,13 @@ class WWLabel(QLabel): self.setTextInteractionFlags(Qt.TextSelectableByMouse) +class AmountLabel(QLabel): + def __init__(self, *args, **kwargs): + QLabel.__init__(self, *args, **kwargs) + self.setFont(QFont(MONOSPACE_FONT)) + self.setTextInteractionFlags(Qt.TextSelectableByMouse) + + class HelpMixin: def __init__(self, help_text: str, *, help_title: str = None): assert isinstance(self, QWidget), "HelpMixin must be a QWidget instance!"