import gui using any name
authorThomasV <thomasv@gitorious>
Sat, 2 Mar 2013 17:03:29 +0000 (18:03 +0100)
committerThomasV <thomasv@gitorious>
Sat, 2 Mar 2013 17:03:29 +0000 (18:03 +0100)
electrum
gui/gui_classic.py [moved from gui/gui_qt.py with 99% similarity]
gui/gui_gtk.py [moved from gui/gui.py with 100% similarity]

index 3df586c..a277cf9 100755 (executable)
--- a/electrum
+++ b/electrum
@@ -40,7 +40,7 @@ if os.path.exists("lib"):
     fp, pathname, description = imp.find_module('lib')
     imp.load_module('electrum', fp, pathname, description)
     fp, pathname, description = imp.find_module('gui')
-    imp.load_module('electrumGUI', fp, pathname, description)
+    imp.load_module('electrum_gui', fp, pathname, description)
     fp, pathname, description = imp.find_module('plugins')
     imp.load_module('electrum_plugins', fp, pathname, description)
     plugin_names = [name for _, name, _ in pkgutil.iter_modules(['plugins'])]
@@ -122,23 +122,13 @@ if __name__ == '__main__':
         cmd = args[0]
         firstarg = args[1] if len(args) > 1 else ''
        
-    #this entire if/else block is just concerned with importing the 
-    #right GUI toolkit based the GUI command line option given 
-    if cmd == 'gui':
-        pref_gui = config.get('gui','classic')
-        if pref_gui == 'gtk':
-            import electrumGUI.gui as gui
-        elif pref_gui in ['classic', 'qt']:
-            import electrumGUI.gui_qt as gui
-        elif pref_gui == 'lite':
-            import electrumGUI.gui_lite as gui
-        elif pref_gui == 'text':
-            import electrumGUI.gui_text as gui
-        elif pref_gui == 'android':
-            import electrumGUI.gui_android as gui
-        else:
-            sys.exit("Error: Unknown GUI: " + pref_gui )
 
+    if cmd == 'gui':
+        gui_name = config.get('gui','classic')
+        try:
+            gui = __import__('electrum_gui.gui_' + gui_name, fromlist=['electrumGUI'])
+        except ImportError:
+            sys.exit("Error: Unknown GUI: " + gui_name )
         
         interface = Interface(config, True)
         wallet.interface = interface
similarity index 99%
rename from gui/gui_qt.py
rename to gui/gui_classic.py
index a123910..b4fda5d 100644 (file)
@@ -21,6 +21,7 @@ from i18n import _, set_language
 from electrum.util import print_error
 import os.path, json, ast
 
+
 try:
     import PyQt4
 except:
@@ -35,7 +36,7 @@ from electrum.interface import DEFAULT_SERVERS
 try:
     import icons_rc
 except:
-    sys.exit("Error: Could not import icons_rc.py, please generate it with: 'pyrcc4 icons.qrc -o lib/icons_rc.py'")
+    sys.exit("Error: Could not import icons_rc.py, please generate it with: 'pyrcc4 icons.qrc -o gui/icons_rc.py'")
 
 from electrum.wallet import format_satoshis
 from electrum.bitcoin import Transaction, is_valid
similarity index 100%
rename from gui/gui.py
rename to gui/gui_gtk.py