commit 1fb8af40c529c8767d6d0807aaa88bea16b380b4
parent 265d74c5426bbf109fa372197eb5adc9384c6e45
Author: ThomasV <thomasv@gitorious>
Date: Tue, 9 Sep 2014 14:30:57 +0200
disable privkey export menu in trezor wallets
Diffstat:
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
@@ -224,6 +224,7 @@ class ElectrumWindow(QMainWindow):
self.seed_menu.setEnabled(self.wallet.has_seed())
self.mpk_menu.setEnabled(self.wallet.is_deterministic())
self.import_menu.setEnabled(self.wallet.can_import())
+ self.export_menu.setEnabled(self.wallet.can_export())
self.update_lock_icon()
self.update_buttons_on_seed()
@@ -338,7 +339,7 @@ class ElectrumWindow(QMainWindow):
self.private_keys_menu = wallet_menu.addMenu(_("&Private keys"))
self.private_keys_menu.addAction(_("&Sweep"), self.sweep_key_dialog)
self.import_menu = self.private_keys_menu.addAction(_("&Import"), self.do_import_privkey)
- self.private_keys_menu.addAction(_("&Export"), self.export_privkeys_dialog)
+ self.export_menu = self.private_keys_menu.addAction(_("&Export"), self.export_privkeys_dialog)
wallet_menu.addAction(_("&Export History"), self.export_history_dialog)
tools_menu = menubar.addMenu(_("&Tools"))
@@ -1451,8 +1452,9 @@ class ElectrumWindow(QMainWindow):
menu.addAction(_("Request payment"), lambda: self.receive_at(addr))
menu.addAction(_("Edit label"), lambda: self.edit_label(True))
menu.addAction(_("Public keys"), lambda: self.show_public_keys(addr))
- if not self.wallet.is_watching_only():
+ if self.wallet.can_export():
menu.addAction(_("Private key"), lambda: self.show_private_key(addr))
+ if not self.wallet.is_watching_only():
menu.addAction(_("Sign/verify message"), lambda: self.sign_verify_message(addr))
menu.addAction(_("Encrypt/decrypt message"), lambda: self.encrypt_message(addr))
if self.wallet.is_imported(addr):
diff --git a/lib/wallet.py b/lib/wallet.py
@@ -1009,6 +1009,9 @@ class Abstract_Wallet(object):
def can_import(self):
return not self.is_watching_only()
+ def can_export(self):
+ return not self.is_watching_only()
+
def is_used(self, address):
h = self.history.get(address,[])
c, u = self.get_addr_balance(address)
diff --git a/plugins/trezor.py b/plugins/trezor.py
@@ -154,6 +154,9 @@ class TrezorWallet(NewWallet):
def can_import(self):
return False
+ def can_export(self):
+ return False
+
def can_create_accounts(self):
return True