Move QQuickControlPrivate::themeFont|Palette() to QQuickTheme
QPlatformTheme is too limited for our theming purposes. We need support for separate palettes (and later, icon colors) in dark and light themes. Also, the fact that Qt Quick Controls 2 injects a platform proxy theme does have undesired side effects in Qt Widgets and Qt Quick Controls 1. Therefore, we start separating QPlatformTheme and QQuickTheme. The first step is to eliminate some direct QPlatformTheme access in QQuickControl and route it via QQuickTheme instead. Task-number: QTBUG-51921 Change-Id: I055471a75ed6f26968796496efd1892975447c98 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This commit is contained in:
parent
f6fec74d42
commit
5b711c320c
|
@ -272,7 +272,7 @@ void QQuickApplicationWindowPrivate::updateFont(const QFont &f)
|
|||
|
||||
void QQuickApplicationWindowPrivate::resolveFont()
|
||||
{
|
||||
QFont resolvedFont = font.resolve(QQuickControlPrivate::themeFont(QPlatformTheme::SystemFont));
|
||||
QFont resolvedFont = font.resolve(QQuickTheme::themeFont(QQuickTheme::SystemFont));
|
||||
setFont_helper(resolvedFont);
|
||||
}
|
||||
|
||||
|
@ -294,7 +294,7 @@ void QQuickApplicationWindowPrivate::updatePalette(const QPalette &p)
|
|||
|
||||
void QQuickApplicationWindowPrivate::resolvePalette()
|
||||
{
|
||||
QPalette resolvedPalette = palette.resolve(QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette));
|
||||
QPalette resolvedPalette = palette.resolve(QQuickTheme::themePalette(QQuickTheme::SystemPalette));
|
||||
setPalette_helper(resolvedPalette);
|
||||
}
|
||||
|
||||
|
@ -689,7 +689,7 @@ void QQuickApplicationWindow::setFont(const QFont &font)
|
|||
if (d->font.resolve() == font.resolve() && d->font == font)
|
||||
return;
|
||||
|
||||
QFont resolvedFont = font.resolve(QQuickControlPrivate::themeFont(QPlatformTheme::SystemFont));
|
||||
QFont resolvedFont = font.resolve(QQuickTheme::themeFont(QQuickTheme::SystemFont));
|
||||
d->setFont_helper(resolvedFont);
|
||||
}
|
||||
|
||||
|
@ -768,7 +768,7 @@ void QQuickApplicationWindow::setPalette(const QPalette &palette)
|
|||
if (d->palette.resolve() == palette.resolve() && d->palette == palette)
|
||||
return;
|
||||
|
||||
QPalette resolvedPalette = palette.resolve(QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette));
|
||||
QPalette resolvedPalette = palette.resolve(QQuickTheme::themePalette(QQuickTheme::SystemPalette));
|
||||
d->setPalette_helper(resolvedPalette);
|
||||
}
|
||||
|
||||
|
|
|
@ -102,12 +102,12 @@ QQuickButton::QQuickButton(QQuickButtonPrivate &dd, QQuickItem *parent)
|
|||
|
||||
QFont QQuickButton::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::PushButtonFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::PushButtonFont);
|
||||
}
|
||||
|
||||
QPalette QQuickButton::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ButtonPalette);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
|
|
@ -189,12 +189,12 @@ void QQuickCheckBox::setCheckState(Qt::CheckState state)
|
|||
|
||||
QFont QQuickCheckBox::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::CheckBoxFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::CheckBoxFont);
|
||||
}
|
||||
|
||||
QPalette QQuickCheckBox::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::CheckBoxPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::CheckBoxPalette);
|
||||
}
|
||||
|
||||
void QQuickCheckBox::buttonChange(ButtonChange change)
|
||||
|
|
|
@ -176,7 +176,7 @@ void QQuickCheckDelegate::setCheckState(Qt::CheckState state)
|
|||
|
||||
QFont QQuickCheckDelegate::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ListViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ListViewFont);
|
||||
}
|
||||
|
||||
void QQuickCheckDelegate::buttonChange(ButtonChange change)
|
||||
|
|
|
@ -1699,12 +1699,12 @@ void QQuickComboBox::localeChange(const QLocale &newLocale, const QLocale &oldLo
|
|||
|
||||
QFont QQuickComboBox::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ComboMenuItemFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ComboMenuItemFont);
|
||||
}
|
||||
|
||||
QPalette QQuickComboBox::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ComboBoxPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ComboBoxPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -50,9 +50,6 @@
|
|||
#include "qquickapplicationwindow_p.h"
|
||||
#include "qquickdeferredexecute_p_p.h"
|
||||
|
||||
#include <QtGui/private/qguiapplication_p.h>
|
||||
#include <QtGui/qpa/qplatformtheme.h>
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
#include <QtQuick/private/qquickaccessibleattached_p.h>
|
||||
#endif
|
||||
|
@ -400,21 +397,7 @@ QFont QQuickControlPrivate::parentFont(const QQuickItem *item)
|
|||
if (QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(item->window()))
|
||||
return window->font();
|
||||
|
||||
return themeFont(QPlatformTheme::SystemFont);
|
||||
}
|
||||
|
||||
QFont QQuickControlPrivate::themeFont(QPlatformTheme::Font type)
|
||||
{
|
||||
if (QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme()) {
|
||||
if (const QFont *font = theme->font(type)) {
|
||||
QFont f = *font;
|
||||
if (type == QPlatformTheme::SystemFont)
|
||||
f.resolve(0);
|
||||
return f;
|
||||
}
|
||||
}
|
||||
|
||||
return QFont();
|
||||
return QQuickTheme::themeFont(QQuickTheme::SystemFont);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
@ -505,21 +488,7 @@ QPalette QQuickControlPrivate::parentPalette(const QQuickItem *item)
|
|||
if (QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(item->window()))
|
||||
return window->palette();
|
||||
|
||||
return themePalette(QPlatformTheme::SystemPalette);
|
||||
}
|
||||
|
||||
QPalette QQuickControlPrivate::themePalette(QPlatformTheme::Palette type)
|
||||
{
|
||||
if (QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme()) {
|
||||
if (const QPalette *palette = theme->palette(type)) {
|
||||
QPalette p = *palette;
|
||||
if (type == QPlatformTheme::SystemPalette)
|
||||
p.resolve(0);
|
||||
return p;
|
||||
}
|
||||
}
|
||||
|
||||
return QPalette();
|
||||
return QQuickTheme::themePalette(QQuickTheme::SystemPalette);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
@ -1571,12 +1540,12 @@ void QQuickControl::componentComplete()
|
|||
|
||||
QFont QQuickControl::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::SystemFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::SystemFont);
|
||||
}
|
||||
|
||||
QPalette QQuickControl::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::SystemPalette);
|
||||
}
|
||||
|
||||
void QQuickControl::focusInEvent(QFocusEvent *event)
|
||||
|
|
|
@ -50,10 +50,10 @@
|
|||
|
||||
#include <QtQuickTemplates2/private/qquickcontrol_p.h>
|
||||
#include <QtQuickTemplates2/private/qquickdeferredpointer_p_p.h>
|
||||
#include <QtQuickTemplates2/private/qquicktheme_p.h>
|
||||
|
||||
#include <QtQuick/private/qquickitem_p.h>
|
||||
#include <QtQml/private/qlazilyallocated_p.h>
|
||||
#include <qpa/qplatformtheme.h>
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
#include <QtGui/qaccessible.h>
|
||||
|
@ -126,7 +126,6 @@ public:
|
|||
updateFont(font);
|
||||
}
|
||||
static QFont parentFont(const QQuickItem *item);
|
||||
static QFont themeFont(QPlatformTheme::Font type);
|
||||
|
||||
virtual void resolvePalette();
|
||||
void inheritPalette(const QPalette &palette);
|
||||
|
@ -138,7 +137,6 @@ public:
|
|||
updatePalette(palette);
|
||||
}
|
||||
static QPalette parentPalette(const QQuickItem *item);
|
||||
static QPalette themePalette(QPlatformTheme::Palette type);
|
||||
|
||||
void updateLocale(const QLocale &l, bool e);
|
||||
static void updateLocaleRecur(QQuickItem *item, const QLocale &l);
|
||||
|
|
|
@ -265,12 +265,12 @@ void QQuickDelayButton::nextCheckState()
|
|||
|
||||
QFont QQuickDelayButton::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::PushButtonFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::PushButtonFont);
|
||||
}
|
||||
|
||||
QPalette QQuickDelayButton::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ButtonPalette);
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
|
|
@ -189,12 +189,12 @@ void QQuickGroupBox::componentComplete()
|
|||
|
||||
QFont QQuickGroupBox::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::GroupBoxTitleFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::GroupBoxTitleFont);
|
||||
}
|
||||
|
||||
QPalette QQuickGroupBox::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::GroupBoxPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::GroupBoxPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -122,12 +122,12 @@ void QQuickItemDelegate::setHighlighted(bool highlighted)
|
|||
|
||||
QFont QQuickItemDelegate::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ItemViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ItemViewFont);
|
||||
}
|
||||
|
||||
QPalette QQuickItemDelegate::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ItemViewPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ItemViewPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -113,7 +113,7 @@ void QQuickLabelPrivate::inheritFont(const QFont &font)
|
|||
QFont parentFont = extra.isAllocated() ? extra->requestedFont.resolve(font) : font;
|
||||
parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve());
|
||||
|
||||
const QFont defaultFont = QQuickControlPrivate::themeFont(QPlatformTheme::LabelFont);
|
||||
const QFont defaultFont = QQuickTheme::themeFont(QQuickTheme::LabelFont);
|
||||
const QFont resolvedFont = parentFont.resolve(defaultFont);
|
||||
|
||||
setFont_helper(resolvedFont);
|
||||
|
@ -155,7 +155,7 @@ void QQuickLabelPrivate::inheritPalette(const QPalette &palette)
|
|||
QPalette parentPalette = extra.isAllocated() ? extra->requestedPalette.resolve(palette) : palette;
|
||||
parentPalette.resolve(extra.isAllocated() ? extra->requestedPalette.resolve() | palette.resolve() : palette.resolve());
|
||||
|
||||
const QPalette defaultPalette = QQuickControlPrivate::themePalette(QPlatformTheme::LabelPalette);
|
||||
const QPalette defaultPalette = QQuickTheme::themePalette(QQuickTheme::LabelPalette);
|
||||
const QPalette resolvedPalette = parentPalette.resolve(defaultPalette);
|
||||
|
||||
setPalette_helper(resolvedPalette);
|
||||
|
|
|
@ -1432,12 +1432,12 @@ void QQuickMenu::timerEvent(QTimerEvent *event)
|
|||
|
||||
QFont QQuickMenu::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::MenuFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::MenuFont);
|
||||
}
|
||||
|
||||
QPalette QQuickMenu::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::MenuPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::MenuPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -641,12 +641,12 @@ void QQuickMenuBar::itemRemoved(int index, QQuickItem *item)
|
|||
|
||||
QFont QQuickMenuBar::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::MenuBarFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::MenuBarFont);
|
||||
}
|
||||
|
||||
QPalette QQuickMenuBar::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::MenuBarPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::MenuBarPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -167,12 +167,12 @@ void QQuickMenuBarItem::geometryChanged(const QRectF &newGeometry, const QRectF
|
|||
|
||||
QFont QQuickMenuBarItem::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::MenuBarFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::MenuBarFont);
|
||||
}
|
||||
|
||||
QPalette QQuickMenuBarItem::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::MenuBarPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::MenuBarPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -264,12 +264,12 @@ void QQuickMenuItem::componentComplete()
|
|||
|
||||
QFont QQuickMenuItem::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::MenuItemFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::MenuItemFont);
|
||||
}
|
||||
|
||||
QPalette QQuickMenuItem::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::MenuPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::MenuPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -73,7 +73,7 @@ QQuickMenuSeparator::QQuickMenuSeparator(QQuickItem *parent)
|
|||
|
||||
QPalette QQuickMenuSeparator::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::MenuPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::MenuPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -2415,12 +2415,12 @@ void QQuickPopup::spacingChange(qreal newSpacing, qreal oldSpacing)
|
|||
|
||||
QFont QQuickPopup::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::SystemFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::SystemFont);
|
||||
}
|
||||
|
||||
QPalette QQuickPopup::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::SystemPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -97,7 +97,7 @@ void QQuickPopupItemPrivate::resolveFont()
|
|||
if (QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(popup->window()))
|
||||
inheritFont(window->font());
|
||||
else
|
||||
inheritFont(themeFont(QPlatformTheme::SystemFont));
|
||||
inheritFont(QQuickTheme::themeFont(QQuickTheme::SystemFont));
|
||||
}
|
||||
|
||||
void QQuickPopupItemPrivate::resolvePalette()
|
||||
|
@ -105,7 +105,7 @@ void QQuickPopupItemPrivate::resolvePalette()
|
|||
if (QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(popup->window()))
|
||||
inheritPalette(window->palette());
|
||||
else
|
||||
inheritPalette(themePalette(QPlatformTheme::SystemPalette));
|
||||
inheritPalette(QQuickTheme::themePalette(QQuickTheme::SystemPalette));
|
||||
}
|
||||
|
||||
QQuickItem *QQuickPopupItemPrivate::getContentItem()
|
||||
|
|
|
@ -99,12 +99,12 @@ QQuickRadioButton::QQuickRadioButton(QQuickItem *parent)
|
|||
|
||||
QFont QQuickRadioButton::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::RadioButtonFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::RadioButtonFont);
|
||||
}
|
||||
|
||||
QPalette QQuickRadioButton::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::RadioButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::RadioButtonPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -100,7 +100,7 @@ QQuickRadioDelegate::QQuickRadioDelegate(QQuickItem *parent)
|
|||
|
||||
QFont QQuickRadioDelegate::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ListViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ListViewFont);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -1023,12 +1023,12 @@ void QQuickSpinBox::localeChange(const QLocale &newLocale, const QLocale &oldLoc
|
|||
|
||||
QFont QQuickSpinBox::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::EditorFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::EditorFont);
|
||||
}
|
||||
|
||||
QPalette QQuickSpinBox::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::TextLineEditPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::TextLineEditPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -1230,7 +1230,7 @@ void QQuickSwipeDelegate::geometryChanged(const QRectF &newGeometry, const QRect
|
|||
|
||||
QFont QQuickSwipeDelegate::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ListViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ListViewFont);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -234,7 +234,7 @@ void QQuickSwitch::buttonChange(ButtonChange change)
|
|||
QPalette QQuickSwitch::defaultPalette() const
|
||||
{
|
||||
// ### TODO: add QPlatformTheme::SwitchPalette
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::CheckBoxPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::CheckBoxPalette);
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
|
|
@ -202,7 +202,7 @@ void QQuickSwitchDelegate::touchEvent(QTouchEvent *event)
|
|||
|
||||
QFont QQuickSwitchDelegate::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ListViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ListViewFont);
|
||||
}
|
||||
|
||||
void QQuickSwitchDelegate::mirrorChange()
|
||||
|
|
|
@ -441,7 +441,7 @@ void QQuickTabBar::itemRemoved(int index, QQuickItem *item)
|
|||
|
||||
QPalette QQuickTabBar::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::TabBarPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::TabBarPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -72,12 +72,12 @@ QQuickTabButton::QQuickTabButton(QQuickItem *parent)
|
|||
|
||||
QFont QQuickTabButton::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::TabButtonFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::TabButtonFont);
|
||||
}
|
||||
|
||||
QPalette QQuickTabButton::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::TabBarPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::TabBarPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -194,7 +194,7 @@ void QQuickTextAreaPrivate::inheritFont(const QFont &font)
|
|||
QFont parentFont = extra.isAllocated() ? extra->requestedFont.resolve(font) : font;
|
||||
parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve());
|
||||
|
||||
const QFont defaultFont = QQuickControlPrivate::themeFont(QPlatformTheme::EditorFont);
|
||||
const QFont defaultFont = QQuickTheme::themeFont(QQuickTheme::EditorFont);
|
||||
const QFont resolvedFont = parentFont.resolve(defaultFont);
|
||||
|
||||
setFont_helper(resolvedFont);
|
||||
|
@ -236,7 +236,7 @@ void QQuickTextAreaPrivate::inheritPalette(const QPalette &palette)
|
|||
QPalette parentPalette = extra.isAllocated() ? extra->requestedPalette.resolve(palette) : palette;
|
||||
parentPalette.resolve(extra.isAllocated() ? extra->requestedPalette.resolve() | palette.resolve() : palette.resolve());
|
||||
|
||||
const QPalette defaultPalette = QQuickControlPrivate::themePalette(QPlatformTheme::TextEditPalette);
|
||||
const QPalette defaultPalette = QQuickTheme::themePalette(QQuickTheme::TextEditPalette);
|
||||
const QPalette resolvedPalette = parentPalette.resolve(defaultPalette);
|
||||
|
||||
setPalette_helper(resolvedPalette);
|
||||
|
|
|
@ -168,7 +168,7 @@ void QQuickTextFieldPrivate::inheritFont(const QFont &font)
|
|||
QFont parentFont = extra.isAllocated() ? extra->requestedFont.resolve(font) : font;
|
||||
parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve());
|
||||
|
||||
const QFont defaultFont = QQuickControlPrivate::themeFont(QPlatformTheme::EditorFont);
|
||||
const QFont defaultFont = QQuickTheme::themeFont(QQuickTheme::EditorFont);
|
||||
const QFont resolvedFont = parentFont.resolve(defaultFont);
|
||||
|
||||
setFont_helper(resolvedFont);
|
||||
|
@ -210,7 +210,7 @@ void QQuickTextFieldPrivate::inheritPalette(const QPalette &palette)
|
|||
QPalette parentPalette = extra.isAllocated() ? extra->requestedPalette.resolve(palette) : palette;
|
||||
parentPalette.resolve(extra.isAllocated() ? extra->requestedPalette.resolve() | palette.resolve() : palette.resolve());
|
||||
|
||||
const QPalette defaultPalette = QQuickControlPrivate::themePalette(QPlatformTheme::TextLineEditPalette);
|
||||
const QPalette defaultPalette = QQuickTheme::themePalette(QQuickTheme::TextLineEditPalette);
|
||||
const QPalette resolvedPalette = parentPalette.resolve(defaultPalette);
|
||||
|
||||
setPalette_helper(resolvedPalette);
|
||||
|
|
|
@ -37,6 +37,8 @@
|
|||
#include "qquicktheme_p.h"
|
||||
#include "qquicktheme_p_p.h"
|
||||
|
||||
#include <QtGui/private/qguiapplication_p.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
QQuickTheme::QQuickTheme()
|
||||
|
@ -48,6 +50,38 @@ QQuickTheme::~QQuickTheme()
|
|||
{
|
||||
}
|
||||
|
||||
QFont QQuickTheme::themeFont(Font type)
|
||||
{
|
||||
const QFont *font = nullptr;
|
||||
if (QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme())
|
||||
font = theme->font(type);
|
||||
|
||||
if (font) {
|
||||
QFont f = *font;
|
||||
if (type == QPlatformTheme::SystemFont)
|
||||
f.resolve(0);
|
||||
return f;
|
||||
}
|
||||
|
||||
return QFont();
|
||||
}
|
||||
|
||||
QPalette QQuickTheme::themePalette(Palette type)
|
||||
{
|
||||
const QPalette *palette = nullptr;
|
||||
if (QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme())
|
||||
palette = theme->palette(type);
|
||||
|
||||
if (palette) {
|
||||
QPalette f = *palette;
|
||||
if (type == QPlatformTheme::SystemPalette)
|
||||
f.resolve(0);
|
||||
return f;
|
||||
}
|
||||
|
||||
return QPalette();
|
||||
}
|
||||
|
||||
const QFont *QQuickTheme::font(Font type) const
|
||||
{
|
||||
Q_D(const QQuickTheme);
|
||||
|
|
|
@ -63,6 +63,9 @@ public:
|
|||
QQuickTheme();
|
||||
~QQuickTheme();
|
||||
|
||||
static QFont themeFont(Font type);
|
||||
static QPalette themePalette(Palette type);
|
||||
|
||||
const QFont *font(Font type = SystemFont) const override;
|
||||
const QPalette *palette(Palette type = SystemPalette) const override;
|
||||
|
||||
|
|
|
@ -143,7 +143,7 @@ void QQuickToolBar::setPosition(Position position)
|
|||
|
||||
QPalette QQuickToolBar::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ToolButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ToolButtonPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -71,12 +71,12 @@ QQuickToolButton::QQuickToolButton(QQuickItem *parent)
|
|||
|
||||
QFont QQuickToolButton::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ToolButtonFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ToolButtonFont);
|
||||
}
|
||||
|
||||
QPalette QQuickToolButton::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ToolButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ToolButtonPalette);
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
|
|
@ -135,7 +135,7 @@ bool QQuickToolSeparator::isVertical() const
|
|||
|
||||
QPalette QQuickToolSeparator::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ToolButtonPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ToolButtonPalette);
|
||||
}
|
||||
|
||||
#if QT_CONFIG(accessibility)
|
||||
|
|
|
@ -303,12 +303,12 @@ void QQuickToolTip::hide()
|
|||
|
||||
QFont QQuickToolTip::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::TipLabelFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::TipLabelFont);
|
||||
}
|
||||
|
||||
QPalette QQuickToolTip::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ToolTipPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ToolTipPalette);
|
||||
}
|
||||
|
||||
void QQuickToolTip::itemChange(QQuickItem::ItemChange change, const QQuickItem::ItemChangeData &data)
|
||||
|
|
|
@ -784,12 +784,12 @@ void QQuickTumbler::updatePolish()
|
|||
|
||||
QFont QQuickTumbler::defaultFont() const
|
||||
{
|
||||
return QQuickControlPrivate::themeFont(QPlatformTheme::ItemViewFont);
|
||||
return QQuickTheme::themeFont(QQuickTheme::ItemViewFont);
|
||||
}
|
||||
|
||||
QPalette QQuickTumbler::defaultPalette() const
|
||||
{
|
||||
return QQuickControlPrivate::themePalette(QPlatformTheme::ItemViewPalette);
|
||||
return QQuickTheme::themePalette(QQuickTheme::ItemViewPalette);
|
||||
}
|
||||
|
||||
QQuickTumblerAttachedPrivate::QQuickTumblerAttachedPrivate()
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
#include <QtQuickTemplates2/private/qquickcontrol_p.h>
|
||||
#include <QtQuickTemplates2/private/qquickcontrol_p_p.h>
|
||||
#include <QtQuickTemplates2/private/qquickpopup_p.h>
|
||||
#include <QtQuickTemplates2/private/qquickproxytheme_p.h>
|
||||
#include <QtQuickTemplates2/private/qquicktheme_p.h>
|
||||
|
||||
using namespace QQuickVisualTestUtil;
|
||||
|
||||
|
@ -88,7 +88,7 @@ void tst_palette::palette_data()
|
|||
QTest::addColumn<QString>("testFile");
|
||||
QTest::addColumn<QPalette>("expectedPalette");
|
||||
|
||||
QPalette defaultPalette = QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette);
|
||||
QPalette defaultPalette = QQuickTheme::themePalette(QQuickTheme::SystemPalette);
|
||||
defaultPalette.setColor(QPalette::Base, QColor("#efefef"));
|
||||
defaultPalette.setColor(QPalette::Text, QColor("#101010"));
|
||||
|
||||
|
@ -172,7 +172,7 @@ void tst_palette::inheritance()
|
|||
QObject *grandChild = window->property("grandChild").value<QObject *>();
|
||||
QVERIFY(control && child && grandChild);
|
||||
|
||||
QPalette defaultPalette = QQuickControlPrivate::themePalette(QPlatformTheme::SystemPalette);
|
||||
QPalette defaultPalette = QQuickTheme::themePalette(QQuickTheme::SystemPalette);
|
||||
defaultPalette.setColor(QPalette::Base, QColor("#efefef"));
|
||||
defaultPalette.setColor(QPalette::Text, QColor("#101010"));
|
||||
|
||||
|
|
Loading…
Reference in New Issue