electrum

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

commit 1606bd310612a9626c0221f1fa322a10984097ea
parent 9b986f8cb6803c349a6baaa5490bb4c06df94a38
Author: thomasv <thomasv@gitorious>
Date:   Tue,  3 Sep 2013 11:37:19 +0200

update lite gui for 1.9

Diffstat:
Mgui/gui_classic.py | 2+-
Mgui/gui_lite.py | 48++++++++++++++++++++++++++++++++----------------
2 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/gui/gui_classic.py b/gui/gui_classic.py @@ -1444,7 +1444,7 @@ class ElectrumWindow(QMainWindow): if self.lite: self.lite.mini.show() else: - self.lite = gui_lite.ElectrumGui(self.wallet, self.config, self) + self.lite = gui_lite.ElectrumGui(self.config, None, None, self) self.lite.main(None) diff --git a/gui/gui_lite.py b/gui/gui_lite.py @@ -23,7 +23,7 @@ import os.path import random import re import time -from electrum import wallet +from electrum.wallet import Wallet, WalletStorage import webbrowser import history_widget import receiving_widget @@ -135,17 +135,17 @@ def csv_transaction(wallet): class ElectrumGui(QObject): - def __init__(self, wallet, config, expert=None): + def __init__(self, config, interface, blockchain, expert=None): super(QObject, self).__init__() - self.wallet = wallet self.config = config self.check_qt_version() self.expert = expert - if self.expert != None: - self.app = self.expert.app - else: - self.app = QApplication(sys.argv) + self.interface = interface + self.blockchain = blockchain + + + def check_qt_version(self): qtVersion = qVersion() @@ -157,7 +157,19 @@ class ElectrumGui(QObject): def main(self, url): - actuator = MiniActuator(self.wallet) + + if self.expert is None: + self.app = QApplication(sys.argv) + storage = WalletStorage(self.config) + if not storage.file_exists: + exit() + self.wallet = Wallet(storage) + self.wallet.start_threads(self.interface, self.blockchain) + else: + self.app = self.expert.app + self.wallet = self.expert.wallet + + actuator = MiniActuator(self.config, self.wallet) # Should probably not modify the current path but instead # change the behaviour of rsrc(...) old_path = QDir.currentPath() @@ -173,15 +185,18 @@ class ElectrumGui(QObject): if url: self.set_url(url) - if self.expert == None: + if self.expert is None: + self.expert = gui_classic.ElectrumWindow(self.config) + self.expert.load_wallet(self.wallet) + self.expert.app = self.app timer = Timer() timer.start() - self.expert = gui_classic.ElectrumWindow(self.wallet, self.config) - self.expert.app = self.app self.expert.connect_slots(timer) self.expert.update_wallet() + self.app.exec_() + def expand(self): """Hide the lite mode window and show pro-mode.""" self.config.set_key('gui', 'classic', True) @@ -748,10 +763,11 @@ class MiniActuator: sending/receiving bitcoins.""" - def __init__(self, wallet): + def __init__(self, config, wallet): """Retrieve the gui theme used in previous session.""" + self.config = config self.wallet = wallet - self.theme_name = self.wallet.config.get('litegui_theme','Cleanlook') + self.theme_name = self.config.get('litegui_theme','Cleanlook') self.themes = load_theme_paths() def load_theme(self): @@ -776,13 +792,13 @@ class MiniActuator: def change_theme(self, theme_name): """Change theme.""" self.theme_name = theme_name - self.wallet.config.set_key('litegui_theme',theme_name) + self.config.set_key('litegui_theme',theme_name) self.load_theme() def set_configured_currency(self, set_quote_currency): """Set the inital fiat currency conversion country (USD/EUR/GBP) in the GUI to what it was set to in the wallet.""" - currency = self.wallet.config.get('currency') + currency = self.config.get('currency') # currency can be none when Electrum is used for the first # time and no setting has been created yet. if currency is not None: @@ -790,7 +806,7 @@ class MiniActuator: def set_config_currency(self, conversion_currency): """Change the wallet fiat currency country.""" - self.wallet.config.set_key('conversion_currency',conversion_currency,True) + self.config.set_key('conversion_currency',conversion_currency,True) def copy_address(self, receive_popup): """Copy the wallet addresses into the client."""