/* * Copyright 2013 Canonical Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . * * Authors: * Renato Araujo Oliveira Filho * Nick Dedekind */ import QtQuick 2.0 import QMenuModel 0.1 import Unity.Indicators 0.1 as Indicators Item { id: indicatorItem //const property string title property int busType property string busName property string actionsObjectPath property var menuObjectPaths: undefined readonly property string device: "phone" property string deviceMenuObjectPath: menuObjectPaths.hasOwnProperty(device) ? menuObjectPaths[device] : "" signal actionGroupUpdated() signal modelUpdated() property var actionGroup: QDBusActionGroup { busType: indicatorItem.busType busName: indicatorItem.busName objectPath: indicatorItem.actionsObjectPath onActionAppear: indicatorItem.actionGroupUpdated(); } property var proxyModel: Indicators.FlatMenuProxyModel { busType: indicatorItem.busType busName: indicatorItem.busName objectPath: indicatorItem.deviceMenuObjectPath onStatusChanged: indicatorItem.modelUpdated(); onRowsInserted: indicatorItem.modelUpdated(); onRowsRemoved: indicatorItem.modelUpdated(); onDataChanged: indicatorItem.modelUpdated(); } }