Sander van Grieken
3 years ago
3 changed files with 131 additions and 252 deletions
@ -0,0 +1,129 @@ |
|||
import QtQuick 2.6 |
|||
import QtQuick.Controls 2.0 |
|||
import QtQuick.Layouts 1.0 |
|||
import QtQuick.Controls.Material 2.0 |
|||
|
|||
ItemDelegate { |
|||
id: root |
|||
height: item.height |
|||
width: ListView.view.width |
|||
|
|||
font.pixelSize: constants.fontSizeSmall // set default font size for child controls |
|||
|
|||
GridLayout { |
|||
id: item |
|||
|
|||
anchors { |
|||
left: parent.left |
|||
right: parent.right |
|||
leftMargin: constants.paddingSmall |
|||
rightMargin: constants.paddingSmall |
|||
} |
|||
|
|||
columns: 2 |
|||
|
|||
Rectangle { |
|||
Layout.columnSpan: 2 |
|||
Layout.fillWidth: true |
|||
Layout.preferredHeight: constants.paddingTiny |
|||
color: 'transparent' |
|||
} |
|||
|
|||
Image { |
|||
Layout.rowSpan: 2 |
|||
Layout.preferredWidth: constants.iconSizeLarge |
|||
Layout.preferredHeight: constants.iconSizeLarge |
|||
source: model.type == 0 ? "../../../icons/bitcoin.png" : "../../../icons/lightning.png" |
|||
} |
|||
|
|||
RowLayout { |
|||
Layout.fillWidth: true |
|||
Label { |
|||
Layout.fillWidth: true |
|||
text: model.message ? model.message : model.address |
|||
elide: Text.ElideRight |
|||
wrapMode: Text.Wrap |
|||
maximumLineCount: 2 |
|||
font.pixelSize: model.message ? constants.fontSizeMedium : constants.fontSizeSmall |
|||
} |
|||
|
|||
Label { |
|||
id: amount |
|||
text: model.amount == 0 ? '' : Config.formatSats(model.amount) |
|||
font.pixelSize: constants.fontSizeMedium |
|||
font.family: FixedFont |
|||
} |
|||
|
|||
Label { |
|||
text: model.amount == 0 ? '' : Config.baseUnit |
|||
font.pixelSize: constants.fontSizeMedium |
|||
color: Material.accentColor |
|||
} |
|||
} |
|||
|
|||
RowLayout { |
|||
Layout.fillWidth: true |
|||
Label { |
|||
text: model.status_str |
|||
color: Material.accentColor |
|||
} |
|||
Item { |
|||
Layout.fillWidth: true |
|||
Layout.preferredHeight: status_icon.height |
|||
Image { |
|||
id: status_icon |
|||
source: model.status == 0 |
|||
? '../../../icons/unpaid.png' |
|||
: model.status == 1 |
|||
? '../../../icons/expired.png' |
|||
: model.status == 3 |
|||
? '../../../icons/confirmed.png' |
|||
: model.status == 7 |
|||
? '../../../icons/unconfirmed.png' |
|||
: '' |
|||
width: constants.iconSizeSmall |
|||
height: constants.iconSizeSmall |
|||
} |
|||
} |
|||
Label { |
|||
id: fiatValue |
|||
visible: Daemon.fx.enabled |
|||
Layout.alignment: Qt.AlignRight |
|||
text: model.amount == 0 ? '' : Daemon.fx.fiatValue(model.amount, false) |
|||
font.family: FixedFont |
|||
font.pixelSize: constants.fontSizeSmall |
|||
} |
|||
Label { |
|||
visible: Daemon.fx.enabled |
|||
Layout.alignment: Qt.AlignRight |
|||
text: model.amount == 0 ? '' : Daemon.fx.fiatCurrency |
|||
font.pixelSize: constants.fontSizeSmall |
|||
color: Material.accentColor |
|||
} |
|||
} |
|||
|
|||
Rectangle { |
|||
Layout.columnSpan: 2 |
|||
Layout.fillWidth: true |
|||
Layout.preferredHeight: constants.paddingTiny |
|||
color: 'transparent' |
|||
} |
|||
} |
|||
|
|||
Connections { |
|||
target: Config |
|||
function onBaseUnitChanged() { |
|||
amount.text = model.amount == 0 ? '' : Config.formatSats(model.amount) |
|||
} |
|||
function onThousandsSeparatorChanged() { |
|||
amount.text = model.amount == 0 ? '' : Config.formatSats(model.amount) |
|||
} |
|||
} |
|||
Connections { |
|||
target: Daemon.fx |
|||
function onQuotesUpdated() { |
|||
fiatValue.text = model.amount == 0 ? '' : Daemon.fx.fiatValue(model.amount, false) |
|||
} |
|||
} |
|||
|
|||
} |
Loading…
Reference in new issue