1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
import QtQuick 2.4
PathView {
width: 200
height: 600
pathItemCount: 7
model: ListModel {
ListElement { color: "salmon" }
ListElement { color: "seagreen" }
ListElement { color: "navy" }
ListElement { color: "goldenrod" }
}
path: Path {
startX: width / 2; startY: -100
PathAttribute { name: "BEGIN" }
PathLine { relativeX: 0; y: height / 2 }
PathAttribute { name: "BEGIN" }
PathLine { relativeX: 0; y: height + 100 }
PathAttribute { name: "BEGIN" }
}
delegate: Rectangle {
width: 200
height: 200
color: model.color
opacity: PathView.transparency
}
Component {
id: attributeComponent
PathAttribute {}
}
function addAttribute(name, values) {
var valueIndex = 0
var elements = []
for (var i = 0; i < path.pathElements.length; ++i) {
elements.push(path.pathElements[i])
if (path.pathElements[i].name === "BEGIN") {
if (values[valueIndex] !== undefined) {
var attribute = attributeComponent.createObject(this, { "name": name, "value": values[valueIndex] })
elements.push(attribute)
}
++valueIndex
}
}
console.log("??")
path.pathElements = elements
console.log("!!")
}
Component.onCompleted: addAttribute("transparency", [0, 1, 0])
}
|