18 import Ubuntu.Components 0.1
20 import
"../Components"
34 property bool filter:
true
38 readonly
property bool expandable: model.count > rowsWhenCollapsed * iconTileGrid.columns
40 property var model: null
43 property int collapsedRowCount: 2
44 property int uncollapsedRowCount: Math.ceil(model.count / columns)
46 readonly
property int rowsWhenCollapsed: Math.min(collapsedRowCount, uncollapsedRowCount)
47 readonly
property int collapsedHeight: iconTileGrid.contentHeightForRows(rowsWhenCollapsed)
48 readonly
property int uncollapsedHeight: iconTileGrid.contentHeightForRows(uncollapsedRowCount)
50 property alias minimumHorizontalSpacing: iconTileGrid.minimumHorizontalSpacing
51 property alias maximumNumberOfColumns: iconTileGrid.maximumNumberOfColumns
52 property alias columns: iconTileGrid.columns
53 property alias delegateWidth: iconTileGrid.delegateWidth
54 property alias delegateHeight: iconTileGrid.delegateHeight
55 property alias verticalSpacing: iconTileGrid.verticalSpacing
56 readonly
property alias margins: iconTileGrid.margins
57 property alias delegate: iconTileGrid.delegate
58 property alias cellWidth: iconTileGrid.cellWidth
59 property alias cellHeight: iconTileGrid.cellHeight
60 property alias delegateCreationBegin: iconTileGrid.delegateCreationBegin
61 property alias delegateCreationEnd: iconTileGrid.delegateCreationEnd
62 readonly
property alias originY: iconTileGrid.originY
63 readonly
property alias flicking: iconTileGrid.flicking
64 readonly
property alias moving: iconTileGrid.moving
65 readonly
property alias pressDelay: iconTileGrid.pressDelay
66 property alias highlightIndex: iconTileGrid.highlightIndex
67 readonly
property alias currentItem: iconTileGrid.currentItem
69 height: !filterAnimation.running ? childrenRect.height : height
70 clip: filterAnimation.running
73 property bool filterEndValue
77 to: filterEndValue ? root.collapsedHeight : root.uncollapsedHeight
82 easing.type: Easing.InOutQuad
84 root.filter = filterEndValue;
88 function startFilterAnimation(filter) {
89 filterAnimation.filterEndValue = filter
90 filterAnimation.start();
96 anchors { left: parent.left; right: parent.right }
97 height: totalContentHeight
100 minimumHorizontalSpacing: units.gu(0.5)
101 maximumNumberOfColumns: 6
102 delegateWidth: units.gu(11)
103 delegateHeight: units.gu(9.5)
104 verticalSpacing: units.gu(2)
106 model: LimitProxyModel {
108 limit: (filter && !filterAnimation.running) ? rowsWhenCollapsed * iconTileGrid.columns : -1