/*
* 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:
* Nick Dedekind
*/
import QtQuick 2.0
QtObject {
property var actionGroup
property var actionName
property var action: actionGroup ? actionGroup.actions[actionName] : undefined
property var state: action && action.hasOwnProperty("state") ? action.state : undefined
property bool valid: action && action.hasOwnProperty("valid") ? action.valid : false
property string title: state && state.hasOwnProperty("title") ? state["title"] : ""
property string leftLabel: state && state.hasOwnProperty("pre-label") ? state["pre-label"] : ""
property string rightLabel: state && state.hasOwnProperty("label") ? state["label"] : ""
property var icons: state && state.hasOwnProperty("icons") ? state["icons"] : []
property string accessibleName: state && state.hasOwnProperty("accessible-desc") ? state["accessible-desc"] : ""
property bool visible: state && state.hasOwnProperty("visible") ? state["visible"] : true
signal updated
onValidChanged: updated()
onTitleChanged: updated()
onLeftLabelChanged: updated()
onRightLabelChanged: updated()
onIconsChanged: updated()
onAccessibleNameChanged: updated()
onVisibleChanged: updated()
}