on bf4f7ea help sign in
unity8/Panel/IndicatorItem.qml
61 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 Ubuntu.Components 0.1
19import Unity.Indicators 0.1 as Indicators
20import "../Components"
22Item {
23 id: indicatorItem
25 property alias widgetSource: loader.source
26 property bool highlighted: false
27 property bool dimmed: false
28 property var indicatorProperties: undefined
29 property bool indicatorVisible: loader.item ? loader.item.enabled : false
31 opacity: dimmed ? 0.4 : 1
32 Behavior on opacity { StandardAnimation {} }
34 width: loader.item ? loader.item.width : 0
36 Loader {
37 id: loader
39 onLoaded: {
40 item.height = Qt.binding(function() { return indicatorItem.height; });
42 for(var pName in indicatorProperties) {
43 if (item.hasOwnProperty(pName)) {
44 item[pName] = indicatorProperties[pName];
45 }
46 }
47 }
48 }
50 Rectangle {
51 color: Theme.palette.selected.foreground
52 objectName: "highlight"
53 height: units.dp(2)
54 width: parent.width
55 anchors.top: parent.bottom
56 visible: highlighted
58 opacity: highlighted ? 1 : 0
59 Behavior on opacity { StandardAnimation {} }
60 }