commit 2f7c2f982dd5cac0377056a613204b987ce6593f
parent 4fd05b8f706d585f4e2b1e4df476738dd6078316
Author: thomasv <thomasv@gitorious>
Date: Wed, 11 Sep 2013 13:43:37 +0200
add __init__.py to classic, fix a few imports
Diffstat:
6 files changed, 115 insertions(+), 6 deletions(-)
diff --git a/gui/gui_classic/__init__.py b/gui/gui_classic/__init__.py
@@ -0,0 +1,109 @@
+#!/usr/bin/env python
+#
+# Electrum - lightweight Bitcoin client
+# Copyright (C) 2012 thomasv@gitorious
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+import sys, time, datetime, re, threading
+from electrum.i18n import _, set_language
+from electrum.util import print_error, print_msg
+import os.path, json, ast, traceback
+import shutil
+
+
+try:
+ import PyQt4
+except:
+ sys.exit("Error: Could not import PyQt4 on Linux systems, you may try 'sudo apt-get install python-qt4'")
+
+from PyQt4.QtGui import *
+from PyQt4.QtCore import *
+import PyQt4.QtCore as QtCore
+
+from electrum import WalletStorage, Wallet
+from electrum.i18n import _
+from electrum.bitcoin import MIN_RELAY_TX_FEE
+
+try:
+ import icons_rc
+except:
+ sys.exit("Error: Could not import icons_rc.py, please generate it with: 'pyrcc4 icons.qrc -o gui/gui_classic/icons_rc.py'")
+
+from qt_util import *
+from main_window import ElectrumWindow
+
+
+class Timer(QtCore.QThread):
+ def run(self):
+ while True:
+ self.emit(QtCore.SIGNAL('timersignal'))
+ time.sleep(0.5)
+
+class OpenFileEventFilter(QObject):
+ def __init__(self, windows):
+ self.windows = windows
+ super(OpenFileEventFilter, self).__init__()
+
+ def eventFilter(self, obj, event):
+ if event.type() == QtCore.QEvent.FileOpen:
+ if len(self.windows) >= 1:
+ self.windows[0].set_url(event.url().toString())
+ return True
+ return False
+
+
+class ElectrumGui:
+
+ def __init__(self, config, network, app=None):
+ self.network = network
+ self.config = config
+ self.windows = []
+ self.efilter = OpenFileEventFilter(self.windows)
+ if app is None:
+ self.app = QApplication(sys.argv)
+ self.app.installEventFilter(self.efilter)
+
+
+ def main(self, url):
+
+ storage = WalletStorage(self.config)
+ if not storage.file_exists:
+ import installwizard
+ wizard = installwizard.InstallWizard(self.config, self.network, storage)
+ wallet = wizard.run()
+ if not wallet:
+ exit()
+ else:
+ wallet = Wallet(storage)
+
+ wallet.start_threads(self.network)
+
+ s = Timer()
+ s.start()
+ w = ElectrumWindow(self.config, self.network)
+ w.load_wallet(wallet)
+
+ self.windows.append(w)
+ if url: w.set_url(url)
+ w.app = self.app
+ w.connect_slots(s)
+ w.update_wallet()
+ w.show()
+
+ self.app.exec_()
+
+ wallet.stop_threads()
+
+
diff --git a/gui/gui_classic/main_window.py b/gui/gui_classic/main_window.py
@@ -17,7 +17,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys, time, datetime, re, threading
-from i18n import _, set_language
+from electrum.i18n import _, set_language
from electrum.util import print_error, print_msg
import os.path, json, ast, traceback
import shutil
@@ -47,7 +47,7 @@ from electrum import util, bitcoin, commands, Interface, Wallet
from electrum import SimpleConfig, Wallet, WalletStorage
-import bmp, pyqrnative
+from electrum import bmp, pyqrnative
import exchange_rate
from amountedit import AmountEdit
diff --git a/gui/gui_classic/network_dialog.py b/gui/gui_classic/network_dialog.py
@@ -17,7 +17,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys, time, datetime, re, threading
-from i18n import _
+from electrum.i18n import _
from electrum.util import print_error, print_msg
import os.path, json, ast, traceback
diff --git a/gui/gui_classic/qrcodewidget.py b/gui/gui_classic/qrcodewidget.py
@@ -3,7 +3,7 @@ from PyQt4.QtCore import *
import PyQt4.QtCore as QtCore
import PyQt4.QtGui as QtGui
-import bmp, pyqrnative
+from electrum import bmp, pyqrnative
class QRCodeWidget(QWidget):
diff --git a/gui/gui_classic/qt_util.py b/gui/gui_classic/qt_util.py
@@ -1,4 +1,4 @@
-from i18n import _
+from electrum.i18n import _
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import os.path
diff --git a/gui/gui_classic/version_getter.py b/gui/gui_classic/version_getter.py
@@ -22,7 +22,7 @@ from PyQt4.QtGui import *
from PyQt4.QtCore import *
import PyQt4.QtCore as QtCore
-from i18n import _
+from electrum.i18n import _
from electrum import ELECTRUM_VERSION
class VersionGetter(threading.Thread):