on 040db36 help sign in
unity8/Dash/Generic/GenericFilterGrid.qml
58 lines 1.7 kB history raw
1/*
2 * Copyright (C) 2013 Canonical, Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
17import QtQuick 2.0
18import "../../Components"
19import "../../Components/IconUtil.js" as IconUtil
21FilterGrid {
22 id: filtergrid
24 minimumHorizontalSpacing: units.gu(0.5)
25 delegateWidth: units.gu(11)
26 delegateHeight: units.gu(9.5)
27 verticalSpacing: units.gu(2)
29 property int iconWidth: units.gu(8)
30 property int iconHeight: units.gu(7.5)
32 signal clicked(int index, var delegateItem, real itemY)
33 signal pressAndHold(int index, var delegateItem, real itemY)
35 delegate: Tile {
36 id: tile
37 objectName: "delegate" + index
38 width: filtergrid.cellWidth
39 height: filtergrid.cellHeight
40 text: model.title
41 imageWidth: filtergrid.iconWidth
42 imageHeight: filtergrid.iconHeight
44 source: IconUtil.from_gicon(model.icon)
46 fillMode: Image.PreserveAspectCrop
48 onClicked: {
49 var data = { model: model }
50 filtergrid.clicked(index, data, tile.y)
51 }
53 onPressAndHold: {
54 var data = { model: model }
55 filtergrid.pressAndHold(index, data, tile.y)
56 }
57 }