@@ -17,22 +17,55 @@
1717import QtQuick 2.0
1818import Ubuntu.Components 0.1
1919import "../Components"
20−import ".."
2120
22−DashCarousel {
21+
22+DashRenderer {
2323 id: cardCarousel
2424
25− itemComponent: Card {
26− id: card
27− objectName: "delegate" + index
28− cardData: model
29− template: cardCarousel.template
30− components: cardCarousel.components
25+ property alias cacheBuffer: carousel.cacheBuffer
26+ property alias itemComponent: carousel.itemComponent
27+ property alias minimumTileWidth: carousel.minimumTileWidth
28+ property alias selectedItemScaleFactor: carousel.selectedItemScaleFactor
29+ property alias tileAspectRatio: carousel.tileAspectRatio
30+
31+ currentItem: carousel.currentItem
32+ height: carousel.implicitHeight + units.gu(6)
33+ verticalSpacing: units.gu(3)
3134
32− property bool explicitlyScaled
33− property var model
35+ CardTool {
36+ id: cardTool
37+
38+ template: genericFilterGrid.template
39+ components: genericFilterGrid.components
40+ viewWidth: cardCarousel.width
3441 }
3542
36− // onClicked: cardCarousel.clicked(index, itemY)
37− // onPressAndHold: cardCarousel.pressAndHold(index, itemY)
43+ Carousel {
44+ id: carousel
45+ anchors.fill: parent
46+ tileAspectRatio: cardCarousel.components && cardCarousel.components["art"]["aspect-ratio"] || 1.0
47+ // FIXME we need to "reverse" the carousel to make the selected item the size
48+ // and push others back.
49+ minimumTileWidth: cardTool.cardWidth / selectedItemScaleFactor
50+ selectedItemScaleFactor: 1.38
51+ cacheBuffer: 1404 // 18px * 13gu * 6
52+ model: cardCarousel.model
53+ highlightIndex: cardCarousel.highlightIndex
54+
55+ onClicked: cardCarousel.clicked(index, itemY)
56+ onPressAndHold: cardCarousel.pressAndHold(index, itemY)
57+
58+ itemComponent: Card {
59+ id: card
60+ objectName: "delegate" + index
61+ width: cardTool.cardWidth / carousel.selectedItemScaleFactor
62+ height: cardTool.cardWidth / carousel.selectedItemScaleFactor
63+ cardData: model
64+ template: cardCarousel.template
65+ components: cardCarousel.components
66+
67+ property bool explicitlyScaled
68+ property var model
69+ }
70+ }
3871}