Browse Source

qt chan details dlg: add onchain feerate, to_self_delay

master
SomberNight 2 years ago
parent
commit
d4f31929af
No known key found for this signature in database
GPG Key ID: B33B5F232C6271E9
  1. 16
      electrum/gui/qt/channel_details.py
  2. 3
      electrum/gui/qt/main_window.py
  3. 3
      electrum/simple_config.py

16
electrum/gui/qt/channel_details.py

@ -159,12 +159,14 @@ class ChannelDetailsDialog(QtWidgets.QDialog, MessageBoxMixin, QtEventListener):
def update(self):
if self.chan.is_closed() or self.chan.is_backup():
return
assert isinstance(self.chan, Channel), type(self.chan)
self.can_send_label.setText(self.format_msat(self.chan.available_to_spend(LOCAL)))
self.can_receive_label.setText(self.format_msat(self.chan.available_to_spend(REMOTE)))
self.sent_label.setText(self.format_msat(self.chan.total_msat(Direction.SENT)))
self.received_label.setText(self.format_msat(self.chan.total_msat(Direction.RECEIVED)))
self.local_balance_label.setText(self.format_msat(self.chan.balance(LOCAL)))
self.remote_balance_label.setText(self.format_msat(self.chan.balance(REMOTE)))
self.current_feerate.setText(self.window.format_fee_rate(4 * self.chan.get_latest_feerate(LOCAL)))
@QtCore.pyqtSlot(str)
def show_tx(self, link_text: str):
@ -205,7 +207,7 @@ class ChannelDetailsDialog(QtWidgets.QDialog, MessageBoxMixin, QtEventListener):
form.addRow(QLabel(_('Closing Transaction') + ':'), LinkedLabel(closing_label_text, self.show_tx))
return form
def get_hbox_stats(self, chan):
def get_hbox_stats(self, chan: Channel):
hbox_stats = QHBoxLayout()
form_layout_left = QtWidgets.QFormLayout(None)
form_layout_right = QtWidgets.QFormLayout(None)
@ -239,6 +241,18 @@ class ChannelDetailsDialog(QtWidgets.QDialog, MessageBoxMixin, QtEventListener):
self.sent_label = SelectableLabel()
form_layout_left.addRow(_('Total sent') + ':', self.sent_label)
form_layout_right.addRow(_('Total received') + ':', self.received_label)
# to-self-delay
csv_local_header = SelectableLabel(_("Remote force-close CSV delay") + ":")
csv_local_header.setToolTip(_("Force-close CSV delay imposed on them"))
csv_remote_header = SelectableLabel(_("Local force-close CSV delay") + ":")
csv_remote_header.setToolTip(_("Force-close CSV delay imposed on us"))
csv_local_label = SelectableLabel(_("{} blocks").format(chan.config[LOCAL].to_self_delay))
csv_remote_label = SelectableLabel(_("{} blocks").format(chan.config[REMOTE].to_self_delay))
form_layout_left.addRow(csv_local_header, csv_local_label)
form_layout_right.addRow(csv_remote_header, csv_remote_label)
# onchain feerate
self.current_feerate = SelectableLabel()
form_layout_left.addRow(_('Current feerate') + ':', self.current_feerate)
# channel stats left column
hbox_stats.addLayout(form_layout_left, 50)
# vertical line separator

3
electrum/gui/qt/main_window.py

@ -919,7 +919,8 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger, QtEventListener):
"""
return self.fx.format_amount_and_units(amount_sat) if self.fx else ''
def format_fee_rate(self, fee_rate):
def format_fee_rate(self, fee_rate) -> str:
"""fee_rate is in sat/kvByte."""
return self.config.format_fee_rate(fee_rate)
def get_decimal_point(self):

3
electrum/simple_config.py

@ -872,7 +872,8 @@ class SimpleConfig(Logger):
def format_amount_and_units(self, *args, **kwargs) -> str:
return self.format_amount(*args, **kwargs) + ' ' + self.get_base_unit()
def format_fee_rate(self, fee_rate):
def format_fee_rate(self, fee_rate) -> str:
"""fee_rate is in sat/kvByte."""
return format_fee_satoshis(fee_rate/1000, num_zeros=self.num_zeros) + ' sat/byte'
def get_base_unit(self):

Loading…
Cancel
Save