qml: show all keystores on WalletDetails page
This commit is contained in:
@@ -246,52 +246,86 @@ Pane {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Repeater {
|
||||||
text: qsTr('Derivation prefix')
|
id: keystores
|
||||||
visible: Daemon.currentWallet.derivationPrefix
|
model: Daemon.currentWallet.keystores
|
||||||
color: Material.accentColor
|
delegate: ColumnLayout {
|
||||||
}
|
Layout.columnSpan: 2
|
||||||
Label {
|
RowLayout {
|
||||||
Layout.fillWidth: true
|
Label {
|
||||||
text: Daemon.currentWallet.derivationPrefix
|
text: qsTr('Keystore')
|
||||||
visible: Daemon.currentWallet.derivationPrefix
|
color: Material.accentColor
|
||||||
}
|
}
|
||||||
|
Label {
|
||||||
Label {
|
text: '#' + index
|
||||||
visible: Daemon.currentWallet.masterPubkey
|
visible: keystores.count > 1
|
||||||
Layout.columnSpan:2; text: qsTr('Master Public Key'); color: Material.accentColor
|
}
|
||||||
}
|
|
||||||
|
|
||||||
TextHighlightPane {
|
|
||||||
visible: Daemon.currentWallet.masterPubkey
|
|
||||||
|
|
||||||
Layout.columnSpan: 2
|
|
||||||
Layout.fillWidth: true
|
|
||||||
padding: 0
|
|
||||||
leftPadding: constants.paddingSmall
|
|
||||||
|
|
||||||
RowLayout {
|
|
||||||
width: parent.width
|
|
||||||
Label {
|
|
||||||
text: Daemon.currentWallet.masterPubkey
|
|
||||||
wrapMode: Text.Wrap
|
|
||||||
Layout.fillWidth: true
|
|
||||||
font.family: FixedFont
|
|
||||||
font.pixelSize: constants.fontSizeMedium
|
|
||||||
}
|
}
|
||||||
ToolButton {
|
TextHighlightPane {
|
||||||
icon.source: '../../icons/share.png'
|
Layout.fillWidth: true
|
||||||
icon.color: 'transparent'
|
leftPadding: constants.paddingLarge
|
||||||
onClicked: {
|
|
||||||
var dialog = app.genericShareDialog.createObject(rootItem, {
|
GridLayout {
|
||||||
title: qsTr('Master Public Key'),
|
width: parent.width
|
||||||
text: Daemon.currentWallet.masterPubkey
|
columns: 2
|
||||||
})
|
|
||||||
dialog.open()
|
Label {
|
||||||
|
text: qsTr('Derivation prefix')
|
||||||
|
visible: modelData.derivation_prefix
|
||||||
|
color: Material.accentColor
|
||||||
|
}
|
||||||
|
Label {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
text: modelData.derivation_prefix
|
||||||
|
visible: modelData.derivation_prefix
|
||||||
|
}
|
||||||
|
|
||||||
|
Label {
|
||||||
|
text: qsTr('BIP32 fingerprint')
|
||||||
|
visible: modelData.fingerprint
|
||||||
|
color: Material.accentColor
|
||||||
|
}
|
||||||
|
Label {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
text: modelData.fingerprint
|
||||||
|
visible: modelData.fingerprint
|
||||||
|
font.family: FixedFont
|
||||||
|
}
|
||||||
|
|
||||||
|
Label {
|
||||||
|
Layout.columnSpan: 2
|
||||||
|
visible: modelData.master_pubkey
|
||||||
|
text: qsTr('Master Public Key')
|
||||||
|
color: Material.accentColor
|
||||||
|
}
|
||||||
|
RowLayout {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.columnSpan: 2
|
||||||
|
Layout.leftMargin: constants.paddingLarge
|
||||||
|
Label {
|
||||||
|
text: modelData.master_pubkey
|
||||||
|
wrapMode: Text.Wrap
|
||||||
|
Layout.fillWidth: true
|
||||||
|
font.family: FixedFont
|
||||||
|
font.pixelSize: constants.fontSizeMedium
|
||||||
|
}
|
||||||
|
ToolButton {
|
||||||
|
icon.source: '../../icons/share.png'
|
||||||
|
icon.color: 'transparent'
|
||||||
|
onClicked: {
|
||||||
|
var dialog = app.genericShareDialog.createObject(rootItem, {
|
||||||
|
title: qsTr('Master Public Key'),
|
||||||
|
text: modelData.master_pubkey
|
||||||
|
})
|
||||||
|
dialog.open()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -338,6 +338,17 @@ class QEWallet(AuthMixin, QObject, QtEventListener):
|
|||||||
def isHardware(self):
|
def isHardware(self):
|
||||||
return self.wallet.storage.is_encrypted_with_hw_device()
|
return self.wallet.storage.is_encrypted_with_hw_device()
|
||||||
|
|
||||||
|
@pyqtProperty('QVariantList', notify=dataChanged)
|
||||||
|
def keystores(self):
|
||||||
|
result = []
|
||||||
|
for k in self.wallet.get_keystores():
|
||||||
|
result.append({
|
||||||
|
'derivation_prefix': k.get_derivation_prefix() or '',
|
||||||
|
'master_pubkey': k.get_master_public_key() or '',
|
||||||
|
'fingerprint': k.get_root_fingerprint() or ''
|
||||||
|
})
|
||||||
|
return result
|
||||||
|
|
||||||
@pyqtProperty(str, notify=dataChanged)
|
@pyqtProperty(str, notify=dataChanged)
|
||||||
def derivationPrefix(self):
|
def derivationPrefix(self):
|
||||||
keystores = self.wallet.get_keystores()
|
keystores = self.wallet.get_keystores()
|
||||||
|
|||||||
Reference in New Issue
Block a user