on ccedc8a help sign in
unity8/Dash/Generic/GenericFilterGrid.qml
59 lines 1.8 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 filter: false
25 minimumHorizontalSpacing: units.gu(0.5)
26 delegateWidth: units.gu(11)
27 delegateHeight: units.gu(9.5)
28 verticalSpacing: units.gu(2)
30 property int iconWidth: units.gu(8)
31 property int iconHeight: units.gu(7.5)
33 signal clicked(int index, var delegateItem, real itemY)
34 signal pressAndHold(int index, var delegateItem, real itemY)
36 delegate: Tile {
37 id: tile
38 objectName: "delegate" + index
39 width: filtergrid.cellWidth
40 height: filtergrid.cellHeight
41 text: model.title
42 imageWidth: filtergrid.iconWidth
43 imageHeight: filtergrid.iconHeight
45 source: IconUtil.from_gicon(model.icon)
47 fillMode: Image.PreserveAspectCrop
49 onClicked: {
50 var data = { model: model }
51 filtergrid.clicked(index, data, tile.y)
52 }
54 onPressAndHold: {
55 var data = { model: model }
56 filtergrid.pressAndHold(index, data, tile.y)
57 }
58 }