QPlatformFontDatabase: Add default fonts.
Add a default font accessor used to initalize QGuiApplication::font(). Add accessor for default font hash providing the defaults for QApplication::font(const char *widgetClassName). Change-Id: Ie4eb6edb251a81e81288ef480ae5550bd1125008 Reviewed-by: Samuel Rødal <sroedal@trolltech.com> Reviewed-on: http://codereview.qt.nokia.com/2567 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
This commit is contained in:
parent
6c4dec7bff
commit
37edacb710
@ -45,6 +45,7 @@
|
||||
#include "private/qplatformintegrationfactory_qpa_p.h"
|
||||
#include "private/qevent_p.h"
|
||||
#include "qfont.h"
|
||||
#include "qplatformfontdatabase_qpa.h"
|
||||
|
||||
#include <QtCore/QAbstractEventDispatcher>
|
||||
#include <QtCore/private/qcoreapplication_p.h>
|
||||
@ -861,7 +862,8 @@ QFont QGuiApplication::font()
|
||||
{
|
||||
QMutexLocker locker(applicationFontMutex());
|
||||
if (!QGuiApplicationPrivate::app_font)
|
||||
QGuiApplicationPrivate::app_font = new QFont(QLatin1String("Helvetica"));
|
||||
QGuiApplicationPrivate::app_font =
|
||||
new QFont(QGuiApplicationPrivate::platformIntegration()->fontDatabase()->defaultFont());
|
||||
return *QGuiApplicationPrivate::app_font;
|
||||
}
|
||||
|
||||
|
@ -195,6 +195,7 @@ QPlatformPixmap *QPlatformIntegration::createPlatformPixmap(QPlatformPixmap::Pix
|
||||
|
||||
QPlatformGLContext *QPlatformIntegration::createPlatformGLContext(QGuiGLContext *context) const
|
||||
{
|
||||
Q_UNUSED(context);
|
||||
qWarning("This plugin does not support createPlatformGLContext!");
|
||||
return 0;
|
||||
}
|
||||
|
@ -343,6 +343,30 @@ QString QPlatformFontDatabase::fontDir() const
|
||||
return fontpath;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the default system font.
|
||||
|
||||
\sa QGuiApplication::font()
|
||||
\since 5.0
|
||||
*/
|
||||
|
||||
QFont QPlatformFontDatabase::defaultFont() const
|
||||
{
|
||||
return QFont(QLatin1String("Helvetica"));
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns fonts for class names.
|
||||
|
||||
\sa QGuiApplication::font()
|
||||
\since 5.0
|
||||
*/
|
||||
|
||||
QHash<QByteArray, QFont> QPlatformFontDatabase::defaultFonts() const
|
||||
{
|
||||
return QHash<QByteArray, QFont>();
|
||||
}
|
||||
|
||||
/*!
|
||||
\class QPlatformFontDatabase
|
||||
\brief The QPlatformFontDatabase class makes it possible to customize how fonts
|
||||
|
@ -46,6 +46,7 @@
|
||||
#include <QtCore/QString>
|
||||
#include <QtCore/QStringList>
|
||||
#include <QtCore/QList>
|
||||
#include <QtCore/QHash>
|
||||
#include <QtGui/QFontDatabase>
|
||||
#include <QtGui/private/qfont_p.h>
|
||||
|
||||
@ -96,6 +97,9 @@ public:
|
||||
|
||||
virtual QString fontDir() const;
|
||||
|
||||
virtual QFont defaultFont() const;
|
||||
virtual QHash<QByteArray, QFont> defaultFonts() const;
|
||||
|
||||
//callback
|
||||
static void registerQPF2Font(const QByteArray &dataArray, void *handle);
|
||||
static void registerFont(const QString &familyname, const QString &foundryname, QFont::Weight weight,
|
||||
|
@ -101,7 +101,8 @@
|
||||
|
||||
#include "qgesture.h"
|
||||
#include "private/qgesturemanager_p.h"
|
||||
|
||||
#include "private/qguiapplication_p.h"
|
||||
#include "qplatformfontdatabase_qpa.h"
|
||||
#ifndef QT_NO_LIBRARY
|
||||
#include "qlibrary.h"
|
||||
#endif
|
||||
@ -514,7 +515,7 @@ PaletteHash *qt_app_palettes_hash()
|
||||
return app_palettes();
|
||||
}
|
||||
|
||||
Q_GLOBAL_STATIC(FontHash, app_fonts)
|
||||
Q_GLOBAL_STATIC_WITH_INITIALIZER(FontHash, app_fonts, { *x = QGuiApplicationPrivate::platformIntegration()->fontDatabase()->defaultFonts(); } )
|
||||
FontHash *qt_app_fonts_hash()
|
||||
{
|
||||
return app_fonts();
|
||||
|
Loading…
Reference in New Issue
Block a user