texcrafting/TexSlot.qml
2024-09-10 05:12:05 +08:00

59 lines
1,023 B
QML

import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
DropArea {
property string rectColor: "white"
property url filePath: ""
Layout.alignment: Qt.AlignCenter
width: 128
height: 128
Rectangle {
id: rectangle
anchors.fill: parent
color: rectColor
Image {
id: image
anchors.centerIn: parent
width: 96
height: 96
}
}
Label {
id: huh
text: "無"
}
onEntered: {
rectangle.color = "cyan";
drag.accept (Qt.LinkAction);
}
onDropped: {
// TODO: handle dragging all channels at once
var firstUrl = new URL(drop.urls[0]);
if (firstUrl.protocol === "file:")
{
console.log(drop.urls);
filePath = drop.urls[0];
huh.text = drop.urls[0];
image.source = drop.urls[0];
}
rectangle.color = rectColor;
}
onExited: {
rectangle.color = rectColor;
}
}