Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qqstylekitfont.cpp
Go to the documentation of this file.
1// Copyright (C) 2025 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
5
7
12
13#define DEFINE_FONT_GETTER(scopeName, scopeEnum)
14 QFont QQStyleKitFont::scopeName() const
15 {
16 return m_fonts[int(QQuickTheme::scopeEnum)];
17 }
18
19DEFINE_FONT_GETTER(system, System)
33
34#define DEFINE_FONT_SETTER(scopeName, scopeEnum, signal)
35 void QQStyleKitFont::set##scopeName(const QFont &font)
36 {
37 setFontForScope(QQuickTheme::scopeEnum, font, &QQStyleKitFont::signal);
38 }
39
40DEFINE_FONT_SETTER(System, System, systemChanged)
41DEFINE_FONT_SETTER(Button, Button, buttonChanged)
42DEFINE_FONT_SETTER(CheckBox, CheckBox, checkBoxChanged)
43DEFINE_FONT_SETTER(ComboBox, ComboBox, comboBoxChanged)
44DEFINE_FONT_SETTER(GroupBox, GroupBox, groupBoxChanged)
45DEFINE_FONT_SETTER(ItemDelegate, ItemView, itemDelegateChanged)
46DEFINE_FONT_SETTER(Label, Label, labelChanged)
47DEFINE_FONT_SETTER(RadioButton, RadioButton, radioButtonChanged)
48DEFINE_FONT_SETTER(SpinBox, SpinBox, spinBoxChanged)
49DEFINE_FONT_SETTER(SwitchControl, Switch, switchControlChanged)
50DEFINE_FONT_SETTER(TabBar, TabBar, tabBarChanged)
51DEFINE_FONT_SETTER(TextArea, TextArea, textAreaChanged)
52DEFINE_FONT_SETTER(TextField, TextField, textFieldChanged)
53DEFINE_FONT_SETTER(ToolBar, ToolBar, toolBarChanged)
54
55void QQStyleKitFont::setFontForScope(QQuickTheme::Scope scope, const QFont &font, void (QQStyleKitFont::*signal)())
56{
57 const int index = int(scope);
58 if (isSet(scope) && m_fonts[index] == font)
59 return;
60
61 m_fonts[index] = font;
62 markSet(scope);
63 emit (this->*signal)();
64}
65
66// The fallback font is used to resolve unset fonts
67// The theme fonts fallback to the style fonts and
68// style fonts fallback to the fallback style fonts
70{
71 return m_fallback;
72}
73
75{
76 if (m_fallback == fallback)
77 return;
78
79 m_fallback = fallback;
80 emit fallbackFontChanged();
81}
82
83QFont QQStyleKitFont::fontForScope(QQuickTheme::Scope scope) const
84{
85 return m_fonts[int(scope)];
86}
87
88QT_END_NAMESPACE
89#include "moc_qqstylekitfont_p.cpp"
QObject * parent
Definition qobject.h:74
\inmodule QtCore
Definition qobject.h:106
void setButton(const QFont &font)
QFont switchControl() const
void setCheckBox(const QFont &font)
void setSpinBox(const QFont &font)
QFont comboBox() const
QQStyleKitFont * fallbackFont() const
QFont tabBar() const
void setSystem(const QFont &font)
QFont button() const
void setGroupBox(const QFont &font)
void setItemDelegate(const QFont &font)
void setTextField(const QFont &font)
QFont itemDelegate() const
void setLabel(const QFont &font)
QFont toolBar() const
void setSwitchControl(const QFont &font)
void setComboBox(const QFont &font)
QFont radioButton() const
QFont groupBox() const
void setToolBar(const QFont &font)
QFont label() const
QFont textField() const
QFont spinBox() const
void setRadioButton(const QFont &font)
void setTabBar(const QFont &font)
QFont textArea() const
void setTextArea(const QFont &font)
QFont checkBox() const
void setFallbackFont(QQStyleKitFont *fallback)
Combined button and popup list for selecting options.
#define DEFINE_FONT_GETTER(scopeName, scopeEnum)
#define DEFINE_FONT_SETTER(scopeName, scopeEnum, signal)