URI: 
       tClarify preferences dialog: * rename 'Oldest First' policy as Priority * show multiple change and fee multiplier on separate lines - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit eb085c2e23663ba5536b6e4dea300e0887163fd3
   DIR parent 6bf91b8ae2b10ffaa16f0573776963e929420aa3
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Fri, 15 Jan 2016 09:02:03 +0100
       
       Clarify preferences dialog:
        * rename 'Oldest First' policy as Priority
        * show multiple change and fee multiplier on separate lines
       
       Diffstat:
         M gui/qt/main_window.py               |      29 +++++++++++++++++++----------
         M lib/coinchooser.py                  |      13 +++++++------
       
       2 files changed, 26 insertions(+), 16 deletions(-)
       ---
   DIR diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
       t@@ -2587,8 +2587,10 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
                nz.valueChanged.connect(on_nz)
                gui_widgets.append((nz_label, nz))
        
       -        msg = _('Fee per kilobyte of transaction.') + '\n' \
       -              + _('If you enable dynamic fees, this parameter will be used as upper bound.')
       +        msg = '\n'.join([
       +            _('Fee per kilobyte of transaction.'),
       +            _('If you enable dynamic fees, this parameter will be used as upper bound.')
       +        ])
                fee_label = HelpLabel(_('Transaction fee per kb') + ':', msg)
                fee_e = BTCkBEdit(self.get_decimal_point)
                fee_e.setAmount(self.config.get('fee_per_kb', bitcoin.RECOMMENDED_FEE))
       t@@ -2607,13 +2609,16 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
                dynfee_cb.setToolTip(_("Use a fee per kB value recommended by the server."))
                dynfee_sl = QSlider(Qt.Horizontal, self)
                dynfee_sl.setValue(self.config.get('fee_factor', 50))
       -        dynfee_sl.setToolTip("Fee Multiplier. Min = 50%, Max = 150%")
       -        tx_widgets.append((dynfee_cb, dynfee_sl))
       +        dynfee_sl.setToolTip("Min = 50%, Max = 150%")
       +        tx_widgets.append((dynfee_cb, None))
       +        multiplier_label = HelpLabel(_('Fee multiplier'), _("Multiply the recommended fee/kb value by a constant factor. Min = 50%, Max = 150%"))
       +        tx_widgets.append((multiplier_label, dynfee_sl))
        
                def update_feeperkb():
                    fee_e.setAmount(self.wallet.fee_per_kb(self.config))
                    b = self.config.get('dynamic_fees')
       -            dynfee_sl.setHidden(not b)
       +            dynfee_sl.setEnabled(b)
       +            multiplier_label.setEnabled(b)
                    fee_e.setEnabled(not b)
                def fee_factor_changed(b):
                    self.config.set_key('fee_factor', b, False)
       t@@ -2754,13 +2759,16 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
                        self.wallet.multiple_change = multiple
                        self.wallet.storage.put('multiple_change', multiple)
                multiple_change = self.wallet.multiple_change
       -        multiple_cb = QCheckBox(_('Multiple'))
       +        multiple_cb = QCheckBox(_('Use multiple change addresses'))
                multiple_cb.setEnabled(self.wallet.use_change)
       -        multiple_cb.setToolTip(_('If appropriate use up to 3 change addresses.\nThis might raise the transaction fee slightly.'))
       +        multiple_cb.setToolTip('\n'.join([
       +            _('In some cases, use up to 3 change addresses in order to obfuscate the recipient address.'),
       +            _('This may result in higher transactions fees.')
       +        ]))
                multiple_cb.setChecked(multiple_change)
                multiple_cb.stateChanged.connect(on_multiple)
       -        tx_widgets.append((usechange_cb, multiple_cb))
       -
       +        tx_widgets.append((usechange_cb, None))
       +        tx_widgets.append((multiple_cb, None))
        
                showtx_cb = QCheckBox(_('View transaction before signing'))
                showtx_cb.setChecked(self.show_before_broadcast())
       t@@ -2788,7 +2796,8 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
                chooser_label = HelpLabel(_('Coin selection') + ':', msg)
                chooser_combo = QComboBox()
                chooser_combo.addItems(choosers)
       -        chooser_combo.setCurrentIndex(choosers.index(chooser_name))
       +        i = choosers.index(chooser_name) if chooser_name in choosers else 0
       +        chooser_combo.setCurrentIndex(i)
                def on_chooser(x):
                    chooser_name = choosers[chooser_combo.currentIndex()]
                    self.config.set_key('coin_chooser', chooser_name)
   DIR diff --git a/lib/coinchooser.py b/lib/coinchooser.py
       t@@ -160,9 +160,11 @@ class CoinChooserBase(PrintError):
                return tx
        
        class CoinChooserOldestFirst(CoinChooserBase):
       -    '''The classic electrum algorithm.  Chooses coins starting with the
       -    oldest that are sufficient to cover the spent amount, and then
       -    removes any unneeded starting with the smallest in value.'''
       +    '''Maximize transaction priority. Select the oldest unspent
       +    transaction outputs in your wallet, that are sufficient to cover
       +    the spent amount. Then, remove any unneeded inputs, starting with
       +    the smallest in value.
       +    '''
        
            def keys(self, coins):
                return [coin['prevout_hash'] + ':' + str(coin['prevout_n'])
       t@@ -228,8 +230,7 @@ class CoinChooserPrivacy(CoinChooserRandom):
            reduce blockchain UTXO bloat, and reduce future privacy loss that
            would come from reusing that address' remaining UTXOs.  Second, it
            penalizes change that is quite different to the sent amount.
       -    Third, it penalizes change that is too big.  Transaction priority
       -    might be less than if older coins were chosen.'''
       +    Third, it penalizes change that is too big.'''
        
            def keys(self, coins):
                return [coin['address'] for coin in coins]
       t@@ -259,5 +260,5 @@ class CoinChooserPrivacy(CoinChooserRandom):
                return penalty
        
        
       -COIN_CHOOSERS = {'Oldest First': CoinChooserOldestFirst,
       +COIN_CHOOSERS = {'Priority': CoinChooserOldestFirst,
                         'Privacy': CoinChooserPrivacy}