2024-01-18 22:14:33 +00:00
|
|
|
// SPDX-FileCopyrightText: 2023 Yury Gubich <blue@macaw.me>
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
|
|
|
import QtQuick
|
|
|
|
import QtQuick.Controls
|
|
|
|
|
2024-01-21 19:22:56 +00:00
|
|
|
import magpie
|
|
|
|
|
2024-01-20 21:17:21 +00:00
|
|
|
Item {
|
2024-01-18 22:14:33 +00:00
|
|
|
id: line
|
|
|
|
required property string title
|
|
|
|
required property string icon
|
2024-01-20 21:17:21 +00:00
|
|
|
required property color color
|
|
|
|
required property string balance
|
2024-03-29 22:00:17 +00:00
|
|
|
required property string currency
|
2024-01-21 19:22:56 +00:00
|
|
|
required property int assetId
|
|
|
|
|
|
|
|
signal error (err:string)
|
2024-01-18 22:14:33 +00:00
|
|
|
|
|
|
|
Row {
|
2024-01-20 21:17:21 +00:00
|
|
|
readonly property int iconSize: height
|
2024-01-21 19:22:56 +00:00
|
|
|
readonly property int freespace: width - deleteButton.width - iconSize - spacing * children.length - 1
|
2024-01-20 21:17:21 +00:00
|
|
|
|
2024-01-18 22:14:33 +00:00
|
|
|
anchors.fill: parent
|
2024-01-20 21:17:21 +00:00
|
|
|
spacing: 5
|
|
|
|
|
|
|
|
Rectangle {
|
|
|
|
width: parent.iconSize
|
|
|
|
height: parent.iconSize
|
|
|
|
color: line.color
|
|
|
|
|
2024-04-03 23:51:08 +00:00
|
|
|
Icon {
|
2024-01-20 21:17:21 +00:00
|
|
|
anchors.fill: parent
|
2024-04-05 16:17:24 +00:00
|
|
|
anchors.margins: 2
|
2024-04-03 23:51:08 +00:00
|
|
|
iconName: line.icon
|
|
|
|
color: pickColor(line.color)
|
2024-01-20 21:17:21 +00:00
|
|
|
}
|
2024-01-18 22:14:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
Text {
|
2024-03-29 22:00:17 +00:00
|
|
|
width: parent.freespace / 3
|
2024-01-20 21:17:21 +00:00
|
|
|
height: parent.height
|
2024-01-18 22:14:33 +00:00
|
|
|
text: title
|
2024-01-20 21:17:21 +00:00
|
|
|
verticalAlignment: Text.AlignVCenter
|
|
|
|
color: palette.text
|
|
|
|
font.bold: true
|
|
|
|
}
|
|
|
|
|
|
|
|
Text {
|
2024-03-29 22:00:17 +00:00
|
|
|
width: parent.freespace / 3
|
2024-01-20 21:17:21 +00:00
|
|
|
height: parent.height
|
|
|
|
text: balance
|
|
|
|
verticalAlignment: Text.AlignVCenter
|
|
|
|
color: palette.text
|
2024-01-18 22:14:33 +00:00
|
|
|
}
|
2024-01-21 19:22:56 +00:00
|
|
|
|
2024-03-29 22:00:17 +00:00
|
|
|
Text {
|
|
|
|
width: parent.freespace / 3
|
|
|
|
height: parent.height
|
|
|
|
text: currency
|
|
|
|
verticalAlignment: Text.AlignVCenter
|
|
|
|
color: palette.text
|
|
|
|
}
|
|
|
|
|
2024-01-21 19:22:56 +00:00
|
|
|
Button {
|
|
|
|
id: deleteButton
|
|
|
|
text: qsTr("Delete")
|
|
|
|
flat: true
|
|
|
|
height: parent.height
|
|
|
|
onClicked: API.deleteAsset(line.assetId, function(err) {
|
|
|
|
if (err)
|
|
|
|
Magpie.displayError("Error deleting asset " + line.title + ": " + err);
|
|
|
|
})
|
|
|
|
}
|
2024-01-18 22:14:33 +00:00
|
|
|
}
|
|
|
|
}
|