* Implement context menu and extra info on double-click for DIP3 masternode list
Menu items:
- "Copy ProTx hash"
- "Copy Collateral hash"
On double click:
Show simple message box with the json representation of the DMN.
* Fix review comments
* Implement tab for DIP3 MN list
* Update src/qt/masternodelist.cpp
Co-Authored-By: codablock <ablock84@gmail.com>
* Change "x.xx% to UNSPECIFIED" to "x.xx% but not claimed" for opeartor reward
* format
* clang suggested changes to be reverted
* Revert "clang suggested changes to be reverted"
This reverts commit 2c1e7744be1a2f6dd07772f222c656b2ebaa7718.
* Store masternodes in a map instead of a vector, drop unused functions in CMasternodeMan
* CTxIn vin -> COutPoint outpoint
* do not use CMasternodeMan::Find outside of the class
* update GetMasternodeInfo
* safe version of GetNextMasternodeInQueueForPayment
* fix ProcessMasternodeConnections
* bump CMasternodeMan::SERIALIZATION_VERSION_STRING
* Add last ping time to masternode_info_t
* Use thread safe functions to access mnodeman in masternodelist.cpp
* Fix masternodelist widget locking
* Protect access to widget data from StartAlias button
2b1c567 To prevent high cpu usage we should update list only once in MASTERNODELIST_UPDATE_SECONDS seconds or MASTERNODELIST_FILTER_COOLDOWN_SECONDS seconds after filter was last changed. Also changing date/time format - QDateTime ToString() is way to slow for a list of thousands items, using DateTimeStrFormat instead. UI should work much smoother on mainnet now.
- set initial columns size
- use resizable columns
- use theme-dependent masternodes icon (placeholder, should be replaced)
- removed unused event binding
- capitalization, more verbose ui element names