URI: 
       tDRYed the backup wallet - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit bf12bac1f23b92e53ddd783e8231d16d8c5d5b12
   DIR parent 0ab69e260642a986dbfb1565c1112a140add8f5b
  HTML Author: Maran <maran.hidskes@gmail.com>
       Date:   Sat,  1 Jun 2013 11:06:51 +0200
       
       DRYed the backup wallet
       
       Diffstat:
         M gui/gui_classic.py                  |      13 +------------
         M gui/gui_lite.py                     |      19 ++++---------------
         M gui/qt_util.py                      |      12 ++++++++++++
       
       3 files changed, 17 insertions(+), 27 deletions(-)
       ---
   DIR diff --git a/gui/gui_classic.py b/gui/gui_classic.py
       t@@ -320,17 +320,6 @@ class ElectrumWindow(QMainWindow):
                else:
                  self.load_wallet(file_name)
        
       -    # TODO: I rather import this from the lite gui, is that possible?
       -    def backup_wallet(self):
       -        try:
       -          folderName = QFileDialog.getExistingDirectory(QWidget(), _('Select folder to save a copy of your wallet to'), os.path.expanduser('~/'))
       -          if folderName:
       -            # TODO: Can we get the current wallet file instead of bruteforcing the default one?
       -            sourceFile = self.wallet.config.path
       -            shutil.copy2(sourceFile, str(folderName))
       -            QMessageBox.information(None,"Wallet backup created", _("A copy of your wallet file was created in")+" '%s'" % str(folderName))
       -        except (IOError, os.error), reason:
       -          QMessageBox.critical(None,"Unable to create backup", _("Electrum was unable to copy your wallet file to the specified location.")+"\n" + str(reason))
        
            def init_menubar(self):
                menubar = QMenuBar()
       t@@ -361,7 +350,7 @@ class ElectrumWindow(QMainWindow):
        
                wallet_menu = menubar.addMenu(_("&Wallet"))
                wallet_backup = wallet_menu.addAction(_("&Create backup"))
       -        wallet_backup.triggered.connect(self.backup_wallet)
       +        wallet_backup.triggered.connect(backup_wallet)
        
                show_menu = wallet_menu.addMenu(_("Show"))
        
   DIR diff --git a/gui/gui_lite.py b/gui/gui_lite.py
       t@@ -35,6 +35,8 @@ from electrum.util import format_satoshis, age
        import gui_classic
        import shutil
        
       +from qt_util import *
       +
        bitcoin = lambda v: v * 100000000
        
        def IconButton(filename, parent=None):
       t@@ -367,8 +369,8 @@ class MiniWindow(QDialog):
                view_menu = menubar.addMenu(_("&View"))
                extra_menu = menubar.addMenu(_("&Extra"))
        
       -        backup_wallet = extra_menu.addAction( _("&Create wallet backup"))
       -        backup_wallet.triggered.connect(self.backup_wallet)
       +        backup_wallet_menu = extra_menu.addAction( _("&Create wallet backup"))
       +        backup_wallet_menu.triggered.connect(backup_wallet)
        
                export_csv = extra_menu.addAction( _("&Export transactions to CSV") )
                export_csv.triggered.connect(lambda: csv_transaction(self.actuator.wallet))
       t@@ -625,19 +627,6 @@ class MiniWindow(QDialog):
                    self.main_layout.setRowMinimumHeight(3,0)
                    self.history_list.hide()
        
       -    def backup_wallet(self):
       -        try:
       -          folderName = QFileDialog.getExistingDirectory(QWidget(), _('Select folder to save a copy of your wallet to'), os.path.expanduser('~/'))
       -          if folderName:
       -            sourceFile = util.user_dir() + '/electrum.dat'
       -            shutil.copy2(sourceFile, str(folderName))
       -            QMessageBox.information(None,"Wallet backup created", _("A copy of your wallet file was created in")+" '%s'" % str(folderName))
       -        except (IOError, os.error), reason:
       -          QMessageBox.critical(None,"Unable to create backup", _("Electrum was unable to copy your wallet file to the specified location.")+"\n" + str(reason))
       -
       -
       -
       -
        class BalanceLabel(QLabel):
        
            SHOW_CONNECTING = 1
   DIR diff --git a/gui/qt_util.py b/gui/qt_util.py
       t@@ -1,6 +1,18 @@
        from i18n import _
        from PyQt4.QtGui import *
        from PyQt4.QtCore import *
       +import os.path
       +
       +def backup_wallet():
       +    try:
       +      folderName = QFileDialog.getExistingDirectory(QWidget(), _('Select folder to save a copy of your wallet to'), os.path.expanduser('~/'))
       +      if folderName:
       +        # TODO: Can we get the current wallet file instead of bruteforcing the default one?
       +        sourceFile = self.wallet.config.path
       +        shutil.copy2(sourceFile, str(folderName))
       +        QMessageBox.information(None,"Wallet backup created", _("A copy of your wallet file was created in")+" '%s'" % str(folderName))
       +    except (IOError, os.error), reason:
       +      QMessageBox.critical(None,"Unable to create backup", _("Electrum was unable to copy your wallet file to the specified location.")+"\n" + str(reason))
        
        def ok_cancel_buttons(dialog, ok_label=_("OK") ):
            hbox = QHBoxLayout()