Password requests from the tx dialog box are now centred on the
tx dialog. Similarly for error messages if misentering the password.
Also, "Signing transaction..." and "Broadcasting transaction..." are
centred on the appropriate tx dialog.
Finally restore the old "Sign" button enabling / disabling, as we
can now tell if the user cancelled the password request.
Doesn't require any particular argument order of the wrapped
function.
Caller can tell if the user cancelled the request or not.
Optionally handles parent window hints.
QPushButton.clicked passes a "checked" argument to the action
callback. We don't use or care for it, use a wrapper to drop it
and provide a uniform function signature for menu actions and button
actions.
Password requests from the tx dialog box are now centred on the
tx dialog. Similarly for error messages if misentering the password.
Also, "Signing transaction..." and "Broadcasting transaction..." are
centred on the appropriate tx dialog.
Finally restore the old "Sign" button enabling / disabling, as we
can now tell if the user cancelled the password request.
Doesn't require any particular argument order of the wrapped
function.
Caller can tell if the user cancelled the request or not.
Optionally handles parent window hints.
The transaction dialogs have a habit of randomly disappearing,
because of garbage collection. This was particularly common
if you viewed the details of a tx in your history immediately
after electrum startup, or after pressing Broadcast.
Other tweaks:
- Distinguish saved and broadcast.
- When signed, consider unsaved and prompt to save if not
subsequently saved or broadcast.
- Hide broadcast button after broadcast.
- Hook into the closeEvent so closing the window with the mouse
has the same effect as pressing the close button.
It has long been a minor annoyance that this isn't the
default behaviour. Semantics are as follows:
- Fees are calculated automatically, as usual, and shown
in black
- If the user inputs a fee, it is retained, and shown in
blue to indicate it is user-overridden
- The user can switch back to automatic fee calculation mode
in two ways: press Clear, or blank out the fee field
- User fees are also cleared by do_clear(), for instance when
the payment is sent
I have checked all usage combinations I could think of, including
the ! case, and all work in a sensible and natural fashion.
This also fixes issue #995.
- Show Close if no action to perform, otherwise Cancel
- Add some strings for translation
- Make input hash/index constant width; previously a
3-digit index bumped the address a whole tabstop over
compared to the 1-digit indices
Show-before-send currently asks for the password
and creates a signed tx before showing anything.
This is a little unnerving as you can't see what
you're being asked to sign.
This patch does a few things:
- Adds a description label to the TX dialog
- You see the tx before being asked for password;
that is only requested on pressing Sign
- in show-before-broadcast mode, the Send button
text is instead "Show...". Hook up this button
text change to the prefs dialog too.
- Remove many redundant imports. In particular
PyQ4 is checked in main_window.py so no need
in tx_dialog too.
Note I had to remove disabling of the Sign button,
because if the user presses "cancel" nothing will
re-enable it.