on ac4b821 help sign in
unity8/qml/Panel/IndicatorItem.qml
55 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 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 dimmed: false
27 property var indicatorProperties: undefined
28 property bool indicatorVisible: loader.item ? loader.item.enabled : false
29 property string identifier
31 opacity: dimmed ? 0.4 : 1
32 Behavior on opacity { UbuntuNumberAnimation { duration: UbuntuAnimation.BriskDuration } }
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 }
49 Binding {
50 target: loader.item
51 property: "objectName"
52 value: identifier + "-widget"
53 }
54 }