summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/fontdatabases/mac
diff options
context:
space:
mode:
authorQt4iOS <ian@mediator-software.com>2012-03-24 14:18:43 +0000
committerQt by Nokia <qt-info@nokia.com>2012-04-13 08:33:56 +0200
commitaffbbcd7382b645ae4c44e2813afd7275da10a20 (patch)
treee777541289a671e4386e79352fc70d26a97dde72 /src/platformsupport/fontdatabases/mac
parentdcd893fbf7fbbc28df13ff26888bf983e86c0dbd (diff)
Added iOS compatibility.
Put MacOS-specific code in #ifdef blocks so that it is not compiled for iOS. Add iOS implementation for MacOS-specific code, where possible. Change-Id: I3664c76fcfa8d5497ad1db676b9331e4ae0dca0e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Diffstat (limited to 'src/platformsupport/fontdatabases/mac')
-rw-r--r--src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm8
-rw-r--r--src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h2
-rw-r--r--src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm4
-rw-r--r--src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h6
4 files changed, 20 insertions, 0 deletions
diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
index 4063a9ec91..a774a6940e 100644
--- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
+++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
@@ -39,8 +39,10 @@
**
****************************************************************************/
+#ifndef QT_NO_CORESERVICES
#import <Cocoa/Cocoa.h>
#import <IOKit/graphics/IOGraphicsLib.h>
+#endif
#include "qcoretextfontdatabase_p.h"
#include "qfontengine_coretext_p.h"
@@ -118,6 +120,7 @@ static NSInteger languageMapSort(id obj1, id obj2, void *context)
QCoreTextFontDatabase::QCoreTextFontDatabase()
{
+#ifndef QT_NO_CORESERVICES
QSettings appleSettings(QLatin1String("apple.com"));
QVariant appleValue = appleSettings.value(QLatin1String("AppleAntiAliasingThreshold"));
if (appleValue.isValid())
@@ -152,6 +155,9 @@ QCoreTextFontDatabase::QCoreTextFontDatabase()
QCoreTextFontEngine::defaultGlyphFormat = (font_smoothing > 0
? QFontEngineGlyphCache::Raster_RGBMask
: QFontEngineGlyphCache::Raster_A8);
+#else
+ QCoreTextFontEngine::defaultGlyphFormat = QFontEngineGlyphCache::Raster_A8;
+#endif
}
QCoreTextFontDatabase::~QCoreTextFontDatabase()
@@ -342,6 +348,7 @@ QStringList QCoreTextFontDatabase::fallbacksForFamily(const QString family, cons
return fallbackLists[styleHint];
}
+#ifndef QT_NO_CORESERVICES
OSErr qt_mac_create_fsref(const QString &file, FSRef *fsref);
QStringList QCoreTextFontDatabase::addApplicationFont(const QByteArray &fontData, const QString &fileName)
{
@@ -382,6 +389,7 @@ QStringList QCoreTextFontDatabase::addApplicationFont(const QByteArray &fontData
return QStringList();
}
+#endif
QFont QCoreTextFontDatabase::defaultFont() const
{
diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h
index 556b176b07..cbe1b28db8 100644
--- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h
+++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h
@@ -55,7 +55,9 @@ public:
QFontEngine *fontEngine(const QFontDef &fontDef, QUnicodeTables::Script script, void *handle);
QFontEngine *fontEngine(const QByteArray &fontData, qreal pixelSize, QFont::HintingPreference hintingPreference);
QStringList fallbacksForFamily(const QString family, const QFont::Style &style, const QFont::StyleHint &styleHint, const QUnicodeTables::Script &script) const;
+#ifndef QT_NO_CORESERVICES
QStringList addApplicationFont(const QByteArray &fontData, const QString &fileName);
+#endif
void releaseHandle(void *handle);
QFont defaultFont() const;
QList<int> standardSizes() const;
diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
index a02361be21..df6becc5e3 100644
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
@@ -413,7 +413,11 @@ QImage QCoreTextFontEngine::imageForGlyph(glyph_t glyph, QFixed subPixelPosition
QImage im(qRound(br.width)+2, qRound(br.height)+2, QImage::Format_RGB32);
im.fill(0);
+#ifndef QT_NO_CORESERVICES
CGColorSpaceRef colorspace = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB);
+#else
+ CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
+#endif
uint cgflags = kCGImageAlphaNoneSkipFirst;
#ifdef kCGBitmapByteOrder32Host //only needed because CGImage.h added symbols in the minor version
cgflags |= kCGBitmapByteOrder32Host;
diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h b/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h
index 3d286c8625..e1435c8b63 100644
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h
@@ -44,7 +44,13 @@
#include <private/qfontengine_p.h>
#include <private/qcore_mac_p.h>
+
+#ifndef QT_NO_CORESERVICES
#include <ApplicationServices/ApplicationServices.h>
+#else
+#include <CoreText/CoreText.h>
+#include <CoreGraphics/CoreGraphics.h>
+#endif
#if !defined(Q_WS_MAC) || (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)