-rw-r--r-- | freetype/fontfactoryttf_qws.cpp | 19 | ||||
-rw-r--r-- | freetype/fontfactoryttf_qws.h | 3 | ||||
-rw-r--r-- | freetype/freetype.pro | 2 | ||||
-rw-r--r-- | freetype/freetypefactoryimpl.cpp | 2 | ||||
-rw-r--r-- | freetype/opie-freetype.control | 2 |
5 files changed, 17 insertions, 11 deletions
diff --git a/freetype/fontfactoryttf_qws.cpp b/freetype/fontfactoryttf_qws.cpp index 5aa53fb..1f082a9 100644 --- a/freetype/fontfactoryttf_qws.cpp +++ b/freetype/fontfactoryttf_qws.cpp | |||
@@ -33,11 +33,10 @@ | |||
33 | 33 | ||
34 | 34 | ||
35 | extern "C" { | 35 | extern "C" { |
36 | #include <ft2build.h> | 36 | #include <freetype/freetype.h> |
37 | #include FT_FREETYPE_H | 37 | #include <freetype/ftglyph.h> |
38 | #include FT_GLYPH_H | 38 | #include <freetype/ftoutln.h> |
39 | #include FT_OUTLINE_H | 39 | #include <freetype/ftbbox.h> |
40 | #include FT_BBOX_H | ||
41 | } | 40 | } |
42 | 41 | ||
43 | class QDiskFontFT : public QDiskFontPrivate { | 42 | class QDiskFontFT : public QDiskFontPrivate { |
@@ -69,6 +68,8 @@ public: | |||
69 | 68 | ||
70 | ~QRenderedFontFT() | 69 | ~QRenderedFontFT() |
71 | { | 70 | { |
71 | // When inter-process glyph sharing is implemented, the glyph data | ||
72 | // for this font can be dereferenced here. | ||
72 | } | 73 | } |
73 | 74 | ||
74 | bool unicode(int & i) const | 75 | bool unicode(int & i) const |
@@ -108,7 +109,7 @@ public: | |||
108 | if(err) | 109 | if(err) |
109 | qFatal("Load glyph error %x",err); | 110 | qFatal("Load glyph error %x",err); |
110 | 111 | ||
111 | int width,height,pitch,size = 0; | 112 | int width=0,height=0,pitch=0,size=0; |
112 | FT_Glyph glyph; | 113 | FT_Glyph glyph; |
113 | err=FT_Get_Glyph( myface->glyph, &glyph ); | 114 | err=FT_Get_Glyph( myface->glyph, &glyph ); |
114 | if(err) | 115 | if(err) |
@@ -155,6 +156,12 @@ public: | |||
155 | result.metrics->width=width; | 156 | result.metrics->width=width; |
156 | result.metrics->height=height; | 157 | result.metrics->height=height; |
157 | 158 | ||
159 | // XXX memory manage me | ||
160 | // At some point inter-process glyph data sharing must be implemented | ||
161 | // and the flag below can be set to prevent Qt from deleting the glyph | ||
162 | // data. | ||
163 | // result.metrics->flags = QGlyphMetrics::RendererOwnsData; | ||
164 | |||
158 | FT_Done_Glyph( glyph ); | 165 | FT_Done_Glyph( glyph ); |
159 | 166 | ||
160 | return result; | 167 | return result; |
diff --git a/freetype/fontfactoryttf_qws.h b/freetype/fontfactoryttf_qws.h index 4ba8ce5..208ab61 100644 --- a/freetype/fontfactoryttf_qws.h +++ b/freetype/fontfactoryttf_qws.h | |||
@@ -33,8 +33,7 @@ | |||
33 | #ifdef QT_NO_FREETYPE | 33 | #ifdef QT_NO_FREETYPE |
34 | 34 | ||
35 | extern "C" { | 35 | extern "C" { |
36 | #include <ft2build.h> | 36 | #include <freetype/freetype.h> |
37 | #include FT_FREETYPE_H | ||
38 | } | 37 | } |
39 | 38 | ||
40 | // ascent, descent, width(ch), width(string), maxwidth? | 39 | // ascent, descent, width(ch), width(string), maxwidth? |
diff --git a/freetype/freetype.pro b/freetype/freetype.pro index 5800b48..ca7edd3 100644 --- a/freetype/freetype.pro +++ b/freetype/freetype.pro | |||
@@ -5,7 +5,7 @@ SOURCES = fontfactoryttf_qws.cpp freetypefactoryimpl.cpp | |||
5 | qt2:HEADERS+= qfontdata_p.h | 5 | qt2:HEADERS+= qfontdata_p.h |
6 | TARGET = freetypefactory | 6 | TARGET = freetypefactory |
7 | DESTDIR = $(OPIEDIR)/plugins/fontfactories | 7 | DESTDIR = $(OPIEDIR)/plugins/fontfactories |
8 | INCLUDEPATH+= $(OPIEDIR)/include | 8 | INCLUDEPATH+= $(QTDIR)/src/3rdparty/freetype/include $(QTDIR)/src/3rdparty/freetype/include/freetype/config $(OPIEDIR)/include |
9 | DEPENDPATH += $(OPIEDIR)/include | 9 | DEPENDPATH += $(OPIEDIR)/include |
10 | LIBS += -lqpe -lfreetype | 10 | LIBS += -lqpe -lfreetype |
11 | VERSION = 1.0.0 | 11 | VERSION = 1.0.0 |
diff --git a/freetype/freetypefactoryimpl.cpp b/freetype/freetypefactoryimpl.cpp index 71460b2..24fb13a 100644 --- a/freetype/freetypefactoryimpl.cpp +++ b/freetype/freetypefactoryimpl.cpp | |||
@@ -48,7 +48,7 @@ QRESULT FreeTypeFactoryImpl::queryInterface( const QUuid &uuid, QUnknownInterfac | |||
48 | 48 | ||
49 | if ( *iface ) | 49 | if ( *iface ) |
50 | (*iface)->addRef(); | 50 | (*iface)->addRef(); |
51 | return QS_OK; | 51 | return (*iface) ? QS_OK : QS_FALSE; |
52 | } | 52 | } |
53 | 53 | ||
54 | Q_EXPORT_INTERFACE() | 54 | Q_EXPORT_INTERFACE() |
diff --git a/freetype/opie-freetype.control b/freetype/opie-freetype.control index f1ce408..2863adb 100644 --- a/freetype/opie-freetype.control +++ b/freetype/opie-freetype.control | |||
@@ -4,5 +4,5 @@ Section: opie/plugins | |||
4 | Maintainer: Opie <opie@llornkcor.com> | 4 | Maintainer: Opie <opie@llornkcor.com> |
5 | Architecture: arm | 5 | Architecture: arm |
6 | Version: $QPE_VERSION-$SUB_VERSION | 6 | Version: $QPE_VERSION-$SUB_VERSION |
7 | Depends: opie-base ($QPE_VERSION) | 7 | Depends: opie-base ($QPE_VERSION), libfreetype6 |
8 | Description: Freetype fontfactory plugin | 8 | Description: Freetype fontfactory plugin |