// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only /*! \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. \omit When using Qt Quick Controls 1, the controls automatically set the appropriate style from the respective \l{Supported Platforms}{platforms}. \endomit \omit \section1 Using the Styling QML Types The Qt Quick Controls 1 controls have a \c style property to which the \e{styling types} bind. The controls have a corresponding styling type from the Qt Quick Controls 1 Styles QML Types module. For example, QtQuickControls1 Button has a ButtonStyle type and Menu has a 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 Qt Quick Controls 1 Styles was introduced in Qt 5.1 and requires \l{Qt Quick} 2.1. \endomit \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 controls, the system colors are already used. */