… | |
… | |
73 | pango_opengl_font_map_new (void) |
73 | pango_opengl_font_map_new (void) |
74 | { |
74 | { |
75 | PangoOpenGLFontMap *fontmap; |
75 | PangoOpenGLFontMap *fontmap; |
76 | FT_Error error; |
76 | FT_Error error; |
77 | |
77 | |
78 | /* Make sure that the type system is initialized */ |
|
|
79 | g_type_init (); |
|
|
80 | |
|
|
81 | fontmap = g_object_new (PANGO_TYPE_OPENGL_FONT_MAP, NULL); |
78 | fontmap = (PangoOpenGLFontMap *)g_object_new (PANGO_TYPE_OPENGL_FONT_MAP, NULL); |
82 | |
79 | |
83 | error = FT_Init_FreeType (&fontmap->library); |
80 | error = FT_Init_FreeType (&fontmap->library); |
84 | if (error != FT_Err_Ok) |
81 | if (error != FT_Err_Ok) |
85 | g_critical ("pango_opengl_font_map_new: Could not initialize freetype"); |
82 | g_critical ("pango_opengl_font_map_new: Could not initialize freetype"); |
86 | |
83 | |
… | |
… | |
134 | PangoContext * |
131 | PangoContext * |
135 | pango_opengl_font_map_create_context (PangoOpenGLFontMap *fontmap) |
132 | pango_opengl_font_map_create_context (PangoOpenGLFontMap *fontmap) |
136 | { |
133 | { |
137 | g_return_val_if_fail (PANGO_OPENGL_IS_FONT_MAP (fontmap), NULL); |
134 | g_return_val_if_fail (PANGO_OPENGL_IS_FONT_MAP (fontmap), NULL); |
138 | |
135 | |
139 | return pango_fc_font_map_create_context (PANGO_FC_FONT_MAP (fontmap)); |
136 | return pango_font_map_create_context (PANGO_FONT_MAP (fontmap)); |
140 | } |
137 | } |
141 | |
138 | |
142 | FT_Library |
139 | FT_Library |
143 | _pango_opengl_font_map_get_library (PangoFontMap *fontmap_) |
140 | _pango_opengl_font_map_get_library (PangoFontMap *fontmap_) |
144 | { |
141 | { |
… | |
… | |
157 | **/ |
154 | **/ |
158 | PangoRenderer * |
155 | PangoRenderer * |
159 | _pango_opengl_font_map_get_renderer (PangoOpenGLFontMap *fontmap) |
156 | _pango_opengl_font_map_get_renderer (PangoOpenGLFontMap *fontmap) |
160 | { |
157 | { |
161 | if (!fontmap->renderer) |
158 | if (!fontmap->renderer) |
162 | fontmap->renderer = g_object_new (PANGO_TYPE_OPENGL_RENDERER, NULL); |
159 | fontmap->renderer = (PangoRenderer *)g_object_new (PANGO_TYPE_OPENGL_RENDERER, NULL); |
163 | |
160 | |
164 | return fontmap->renderer; |
161 | return fontmap->renderer; |
165 | } |
162 | } |
166 | |
163 | |
167 | static void |
164 | static void |
… | |
… | |
184 | { |
181 | { |
185 | return (PangoFcFont *)_pango_opengl_font_new (PANGO_OPENGL_FONT_MAP (fcfontmap), pattern); |
182 | return (PangoFcFont *)_pango_opengl_font_new (PANGO_OPENGL_FONT_MAP (fcfontmap), pattern); |
186 | } |
183 | } |
187 | |
184 | |
188 | static void |
185 | static void |
189 | pango_opengl_font_map_class_init (PangoOpenGLFontMapClass *class) |
186 | pango_opengl_font_map_class_init (PangoOpenGLFontMapClass *klass) |
190 | { |
187 | { |
191 | GObjectClass *gobject_class = G_OBJECT_CLASS (class); |
188 | GObjectClass *gobject_class = G_OBJECT_CLASS (klass); |
192 | PangoFcFontMapClass *fcfontmap_class = PANGO_FC_FONT_MAP_CLASS (class); |
189 | PangoFcFontMapClass *fcfontmap_class = PANGO_FC_FONT_MAP_CLASS (klass); |
193 | |
190 | |
194 | gobject_class->finalize = pango_opengl_font_map_finalize; |
191 | gobject_class->finalize = pango_opengl_font_map_finalize; |
195 | fcfontmap_class->default_substitute = pango_opengl_font_map_default_substitute; |
192 | fcfontmap_class->default_substitute = pango_opengl_font_map_default_substitute; |
196 | fcfontmap_class->new_font = pango_opengl_font_map_new_font; |
193 | fcfontmap_class->new_font = pango_opengl_font_map_new_font; |
197 | } |
194 | } |