/****************************************************************************
**
** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** This file is part of the Qt Components project.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
**   * Redistributions of source code must retain the above copyright
**     notice, this list of conditions and the following disclaimer.
**   * Redistributions in binary form must reproduce the above copyright
**     notice, this list of conditions and the following disclaimer in
**     the documentation and/or other materials provided with the
**     distribution.
**   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
**     the names of its contributors may be used to endorse or promote
**     products derived from this software without specific prior written
**     permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
    \qmlclass ToolIcon
    \inherits Item
    \ingroup qt-components
    \since 4.7
    \brief Button-like component showing icon

    This is an Button-like component composed by an icon and supposed to be used inside a ToolBar.
    
    Next example shows how to use ToolIcons inside a \c Page component.

    \code
    ToolBarLayout {
        id: commonTools
        ToolIcon { iconId: "toolbar-back"; onClicked: { myMenu.close(); pageStack.pop(); } }
        ToolIcon { iconId: "toolbar-view-menu"; onClicked: (myMenu.status == DialogStatus.Closed) ? myMenu.open() : myMenu.close() }
    }
    \endcode

    Icons naming convention
    \list
    \o icon-m-toolbar-settings-white (idle state on dark toolbars)
    \o icon-m-toolbar-settings-white-selected (selected state on dark toolbar)
    \o icon-m-toolbar-settings-dimmed-white (disabled state on dark toolbar)
    \o icon-m-toolbar-settings (idle state on bright toolbar)
    \o icon-m-toolbar-settings-selected (selected state on bright toolbar)
    \o icon-m-toolbar-settings-dimmed (disabled state on bright toolbar)
    \endlist

    Default iconId's which are available for use (The list only contains the idle states for bright and dark toolbars)
    \list
    \o toolbar-add
    \o toolbar-addressbook
    \o toolbar-alarm
    \o toolbar-all-content
    \o toolbar-application
    \o toolbar-attachment
    \o toolbar-back-landscape
    \o toolbar-back
    \o toolbar-backspace
    \o toolbar-bold
    \o toolbar-callhistory
    \o toolbar-cancle
    \o toolbar-captured
    \o toolbar-clock
    \o toolbar-close
    \o toolbar-column
    \o toolbar-contact
    \o toolbar-content-audio
    \o toolbar-content-ovi-music
    \o toolbar-cut-paste
    \o toolbar-delete
    \o toolbar-dialer
    \o toolbar-directory-move-to
    \o toolbar-directory
    \o toolbar-done
    \o toolbar-down
    \o toolbar-edit
    \o toolbar-favorite-mark
    \o toolbar-favorite-unmark
    \o toolbar-forward
    \o toolbar-gallery
    \o toolbar-grid
    \o toolbar-home
    \o toolbar-image-edit
    \o toolbar-jump-to
    \o toolbar-list
    \o toolbar-main-view
    \o toolbar-mediacontrol-backwards
    \o toolbar-mediacontrol-forward
    \o toolbar-mediacontrol-next
    \o toolbar-mediacontrol-pause
    \o toolbar-mediacontrol-play
    \o toolbar-mediacontrol-previous
    \o toolbar-mediacontrol-stop
    \o toolbar-new-chat
    \o toolbar-new-message
    \o toolbar-next
    \o toolbar-pages-all
    \o toolbar-people
    \o toolbar-previous
    \o toolbar-redo
    \o toolbar-refresh
    \o toolbar-repeat
    \o toolbar-reply-all
    \o toolbar-reply
    \o toolbar-rich-text-view-menu
    \o toolbar-rich-text
    \o toolbar-search
    \o toolbar-select-text
    \o toolbar-settings
    \o toolbar-share
    \o toolbar-shuffle
    \o toolbar-stop
    \o toolbar-tab-next
    \o toolbar-tab-previous
    \o toolbar-tag
    \o toolbar-tools
    \o toolbar-trim
    \o toolbar-underline
    \o toolbar-undo
    \o toolbar-up
    \o toolbar-update
    \o toolbar-view-menu
    \o toolbar-volume-off
    \o toolbar-volume
    \endlist

    \sa ToolBar, ToolBarLayout
*/

/*!
    \qmlsignal ToolItem::clicked()

    Signal is fired when the component is pressed and released.
*/

/*!
    \qmlproperty string ToolItem::iconId

    ID of the used icon. If iconSource is set, the iconSource property is used.
*/

/*!
    \qmlproperty url ToolItem::iconSource

    Source path of the used icon.
*/

/*!
    \qmlproperty Style ToolItem::platformStyle

    Platform specific style property. Default value is ToolItemStyle{}.

    \sa ToolItemStyle
*/
