/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: https://www.gnu.org/licenses/fdl-1.3.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \page qtquick-usecase-styling.html \title Use Case - Style And Theme Support \brief Example of how to style user interface components in QML Styling with QML involves creating a visual type and binding that to a property or by directly assigning a value to a property. For types that incorporate Qt Quick's \l{Models and Views in Qt Quick}{delegates} the visual type attaches to the \e delegate property. When using \l{Qt Quick Controls}, the controls automatically set the appropriate style from the respective \l{Community Supported Platforms}{platforms}. \section1 Using the Styling QML Types The \l{Qt Quick Controls}{controls} have a \c style property to which the \e{styling types} bind. The controls have a corresponding styling type from the \l{Qt Quick Controls Styles QML Types}{Qt Quick Controls Styles} module. For example, \l Button has a \l ButtonStyle type and \l Menu has a \l MenuStyle type. The styling types provide properties applicable to their respective controls such as the background, label, or for some controls, the cursor appearance. \snippet qmlapp/usecases/styling.qml 0 \note \l{Qt Quick Controls Styles QML Types}{Qt Quick Controls Styles} was introduced in Qt 5.1 and requires \l{Qt Quick} 2.1. \section1 Accessing the System Palette The \l{SystemPalette} type provides information about the system's palette information. QML applications can use this information to set the appearance of visual types to match the native look-and-feel. In addition, on \l{Desktop Platforms}{desktop} platforms, different color palettes are employed when changing states, for example, when the application loses keyboard focus. When using the \l{Qt Quick Controls}{controls}, the system colors are already used. */