tRevert "Plugins: remove init_qt hook; clean up" - electrum - Electrum Bitcoin wallet (HTM) git clone https://git.parazyd.org/electrum (DIR) Log (DIR) Files (DIR) Refs (DIR) Submodules --- (DIR) commit 08e5aecee244f0b8c52e5442b8f4519e86eed912 (DIR) parent a04b510395e956a81843200531acb7f2a6709b71 (HTM) Author: ThomasV <thomasv@electrum.org> Date: Thu, 28 Jan 2016 14:57:59 +0100 Revert "Plugins: remove init_qt hook; clean up" This reverts commit e20369bf94a2c2c8c22dd9472be3767e90c5774e. Diffstat: M gui/qt/__init__.py | 1 + M gui/qt/main_window.py | 1 + M plugins/exchange_rate/qt.py | 28 ++++++++++++++-------------- 3 files changed, 16 insertions(+), 14 deletions(-) --- (DIR) diff --git a/gui/qt/__init__.py b/gui/qt/__init__.py t@@ -92,6 +92,7 @@ class ElectrumGui: self.build_tray_menu() self.tray.show() self.app.connect(self.app, QtCore.SIGNAL('new_window'), self.start_new_window) + run_hook('init_qt', self) def build_tray_menu(self): # Avoid immediate GC of old menu when window closed via its action (DIR) diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py t@@ -2941,6 +2941,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError): p = plugins.toggle(name) cb.setChecked(bool(p)) enable_settings_widget(p, name, i) + run_hook('init_qt', self.gui_object) for i, descr in enumerate(plugins.descriptions.values()): name = descr['__name__'] (DIR) diff --git a/plugins/exchange_rate/qt.py b/plugins/exchange_rate/qt.py t@@ -11,11 +11,7 @@ from functools import partial from electrum.plugins import hook from exchange_rate import FxPlugin -class Plugin(FxPlugin, QObject): - - def __init__(self, parent, config, name): - FxPlugin.__init__(self, parent, config, name) - QObject.__init__(self) +class Plugin(FxPlugin): def connect_fields(self, window, btc_e, fiat_e, fee_e): t@@ -46,11 +42,15 @@ class Plugin(FxPlugin, QObject): fiat_e.is_last_edited = False @hook + def init_qt(self, gui): + self.app = gui.app + + @hook def do_clear(self, window): window.fiat_send_e.setText('') def on_close(self): - self.emit(SIGNAL('close_fx_plugin')) + self.app.emit(SIGNAL('close_fx_plugin')) def restore_window(self, window): window.update_status() t@@ -59,10 +59,10 @@ class Plugin(FxPlugin, QObject): window.fiat_receive_e.hide() def on_quotes(self): - self.emit(SIGNAL('new_fx_quotes')) + self.app.emit(SIGNAL('new_fx_quotes')) def on_history(self): - self.emit(SIGNAL('new_fx_history')) + self.app.emit(SIGNAL('new_fx_history')) def on_fx_history(self, window): '''Called when historical fx quotes are updated''' t@@ -86,7 +86,7 @@ class Plugin(FxPlugin, QObject): ccy = str(self.ccy_combo.currentText()) if ccy and ccy != self.ccy: self.set_currency(ccy) - self.emit(SIGNAL('new_fx_quotes')) + self.app.emit(SIGNAL('new_fx_quotes')) self.hist_checkbox_update() def hist_checkbox_update(self): t@@ -120,10 +120,10 @@ class Plugin(FxPlugin, QObject): self.connect_fields(window, window.receive_amount_e, receive_e, None) window.history_list.refresh_headers() window.update_status() - window.connect(self, SIGNAL('new_fx_quotes'), lambda: self.on_fx_quotes(window)) - window.connect(self, SIGNAL('new_fx_history'), lambda: self.on_fx_history(window)) - window.connect(self, SIGNAL('close_fx_plugin'), lambda: self.restore_window(window)) - window.connect(self, SIGNAL('refresh_headers'), window.history_list.refresh_headers) + window.connect(window.app, SIGNAL('new_fx_quotes'), lambda: self.on_fx_quotes(window)) + window.connect(window.app, SIGNAL('new_fx_history'), lambda: self.on_fx_history(window)) + window.connect(window.app, SIGNAL('close_fx_plugin'), lambda: self.restore_window(window)) + window.connect(window.app, SIGNAL('refresh_headers'), window.history_list.refresh_headers) def settings_widget(self, window): return EnterButton(_('Settings'), partial(self.settings_dialog, window)) t@@ -152,7 +152,7 @@ class Plugin(FxPlugin, QObject): self.get_historical_rates() else: self.config.set_key('history_rates', 'unchecked') - self.emit(SIGNAL('refresh_headers')) + self.app.emit(SIGNAL('refresh_headers')) def ok_clicked(): self.timeout = 0