MauiKit Controls

FontsComboBox.qml
1/****************************************************************************
2 * *
3 ** Copyright (C) 2017 The Qt Company Ltd.
4 ** Contact: http://www.qt.io/licensing/
5 **
6 ** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL3$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see http://www.qt.io/terms-conditions. For further
15 ** information use the contact form at http://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPLv3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or later as published by the Free
28 ** Software Foundation and appearing in the file LICENSE.GPL included in
29 ** the packaging of this file. Please review the following information to
30 ** ensure the GNU General Public License version 2.0 requirements will be
31 ** met: http://www.gnu.org/licenses/gpl-2.0.html.
32 **
33 ** $QT_END_LICENSE$
34 **
35 ****************************************************************************/
36
37import QtQuick
38import QtQuick.Controls
39
40import org.mauikit.controls 1.3 as Maui
41
42/**
43 * @inherit QtQuick.Controls.ComboBox
44 * @brief A combo-box element to list the system fonts with a inline style preview.
45 *
46 * <a href="https://doc.qt.io/qt-6/qml-qtquick-controls-combobox.html">This controls inherits from QQC2 ComboBox, to checkout its inherited properties refer to the Qt Docs.</a>
47 *
48 * The default model is set to `Qt.fontFamilies`. If a custom model is to be used instead, set the right role to pick up the data using the `textRole` inherited property.
49 *
50 * @image html Misc/fontscombobox.png
51 */
52
53ComboBox
54{
55 id: control
56
57 font.family: control.displayText
58 model: Qt.fontFamilies()
59 icon.source: "font"
60
61 delegate: MenuItem
62 {
63 width: ListView.view.width
64 text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData
65 font.family: text
66 highlighted: control.highlightedIndex === index
67 hoverEnabled: control.hoverEnabled
68 Maui.Theme.colorSet: control.Maui.Theme.inherit ? control.Maui.Theme.colorSet : Maui.Theme.View
69 Maui.Theme.inherit: control.Maui.Theme.inherit
70 }
71}
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri May 17 2024 11:56:16 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.