summaryrefslogtreecommitdiff
path: root/pango/pangowin32.h
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2000-08-20 08:36:41 +0000
committerTor Lillqvist <tml@src.gnome.org>2000-08-20 08:36:41 +0000
commit79546feb86a232b0d3e01b1f436e258aef32b840 (patch)
treed35f417b2a3112bb3e0fb18d4fc057a37ab79f40 /pango/pangowin32.h
parente95590dd006740ab6bdcf71cae31efbf8404033e (diff)
downloadpango-79546feb86a232b0d3e01b1f436e258aef32b840.tar.gz
Add parameter telling whether to print warning or not if string isn't
2000-08-20 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.c (pango_parse_*): Add parameter telling whether to print warning or not if string isn't recognised. Use g_strncasecmp(). * pango/pango-utils.h: Change prototype accordingly. * pango/pangox-fontmap.c * pango/pangowin32-fontmap.c: Change calls correspondingly. * pango/pangowin32.h: * pango/pangowin32.c: Cosmetic changes, dead code removal. * pango/pangoft2.h * pango/pangoft2-private.h * pango/pangoft2.c * pango/pangoft2-fontmap.c * pango/pangoft2-fontcache.c: New files implementing a FreeType2 backend. Used only on Win32 so far, but doesn't contain Win32-specific code per se, so if somebody wants to try it out on X11, too, be my guest. It works, more or less, but there are some details still to sort out. Performance needs to be improved. Debugging printouts still present. Font path currently hardcoded to C:\windows\fonts, heh. Owen says he doesn't think it's a good idea to use ths on Win32, but I'll try anyway. If it turns out using the native Win32 GDI backend is better after all, oh well. * pango/makefile.mingw: Delete. Move contents to makefile.mingw.in. * pango/makefile.mingw.in: New file. Add rules for FreeType2 backend. Add FreeType2 CFLAGS and LIBS. * pango/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add FreeType2 backend sources, and makefile.mingw{,.in} * modules/basic/basic-win32.c: Couple of cosmetic changes. * modules/basic/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add basic-ft2.c, and makefile.mingw{,.in} * modules/basic/makefile.mingw: Delete. Move contents to makefile.mingw.in. * modules/basic/makefile.mingw.in: New file. Add rule for basic-ft2. Add FreeType2 CFLAGS and LIBS. * examples/viewer-win32.c (read_file): Fix error messages. (draw): Get HDC from GDK once for all paragraphs. * examples/viewer-ft2.c: New file. The FT_Bitmap (256-level bitmap) produced by the FreeType2 backend is copied to the GtkLayout window using gdk_draw_gray_image from GdkRGB (!). Yes, this is kinda circular dependency between Pango and GTK+. * examples/makefile.mingw: Delete. Move contents to makefile.mingw.in. * examples/makefile.mingw.in: New file. Add rules for viewer-ft2. Add FreeType2 CFLAGS and LIBS. * examples/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add viewer-win32.c and viewer-ft2.c, and makefile.mingw{,.in}
Diffstat (limited to 'pango/pangowin32.h')
-rw-r--r--pango/pangowin32.h93
1 files changed, 47 insertions, 46 deletions
diff --git a/pango/pangowin32.h b/pango/pangowin32.h
index 7d040f5b..64275185 100644
--- a/pango/pangowin32.h
+++ b/pango/pangowin32.h
@@ -34,7 +34,32 @@ extern "C" {
#define PANGO_RENDER_TYPE_WIN32 "PangoRenderWin32"
-/* This enum divides Unicode characters according to the Microsoft
+/* Calls for applications
+ */
+PangoContext * pango_win32_get_context (void);
+
+PangoFont * pango_win32_load_font (LOGFONT *lfp,
+ int n_fonts);
+void pango_win32_render (HDC hdc,
+ PangoFont *font,
+ PangoGlyphString *glyphs,
+ gint x,
+ gint y);
+void pango_win32_render_layout_line (HDC hdc,
+ PangoLayoutLine *line,
+ int x,
+ int y);
+void pango_win32_render_layout (HDC hdc,
+ PangoLayout *layout,
+ int x,
+ int y);
+
+
+
+/* API for rendering modules
+ */
+
+/* This enum classifies Unicode characters according to the Microsoft
* Unicode subrange numbering. This is based on the table in "Developing
* International Software for Windows 95 and Windows NT". This is almost,
* but not quite, the same as the official Unicode block table in
@@ -115,69 +140,45 @@ typedef enum
PANGO_WIN32_U_LAST_PLUS_ONE
} PangoWin32UnicodeSubrange;
-/* Calls for applications
- */
-PangoContext * pango_win32_get_context (void);
-
-PangoFont * pango_win32_load_font (LOGFONT *lfp,
- int n_fonts);
-void pango_win32_render (HDC hdc,
- PangoFont *font,
- PangoGlyphString *glyphs,
- gint x,
- gint y);
-void pango_win32_render_layout_line (HDC hdc,
- PangoLayoutLine *line,
- int x,
- int y);
-void pango_win32_render_layout (HDC hdc,
- PangoLayout *layout,
- int x,
- int y);
-
-
+PangoWin32UnicodeSubrange pango_win32_unicode_classify (wchar_t wc);
-/* API for rendering modules
- */
typedef guint16 PangoWin32Subfont;
#define PANGO_WIN32_MAKE_GLYPH(subfont,index) ((subfont)<<16 | (index))
#define PANGO_WIN32_GLYPH_SUBFONT(glyph) ((glyph)>>16)
#define PANGO_WIN32_GLYPH_INDEX(glyph) ((glyph) & 0xffff)
-int pango_win32_list_subfonts (PangoFont *font,
- PangoWin32UnicodeSubrange subrange,
- PangoWin32Subfont **subfont_ids);
-gboolean pango_win32_has_glyph (PangoFont *font,
- PangoGlyph glyph);
-PangoGlyph pango_win32_get_unknown_glyph (PangoFont *font);
-
-PangoWin32UnicodeSubrange pango_win32_unicode_classify (wchar_t wc);
+int pango_win32_list_subfonts (PangoFont *font,
+ PangoWin32UnicodeSubrange subrange,
+ PangoWin32Subfont **subfont_ids);
+gboolean pango_win32_has_glyph (PangoFont *font,
+ PangoGlyph glyph);
+PangoGlyph pango_win32_get_unknown_glyph (PangoFont *font);
/* API for libraries that want to use PangoWin32 mixed with classic
* Win32 fonts.
*/
typedef struct _PangoWin32FontCache PangoWin32FontCache;
-PangoWin32FontCache *pango_win32_font_cache_new (void);
-void pango_win32_font_cache_free (PangoWin32FontCache *cache);
-
-HFONT pango_win32_font_cache_load (PangoWin32FontCache *cache,
- const LOGFONT *lfp);
-void pango_win32_font_cache_unload (PangoWin32FontCache *cache,
- HFONT hfont);
+PangoWin32FontCache *pango_win32_font_cache_new (void);
+void pango_win32_font_cache_free (PangoWin32FontCache *cache);
+
+HFONT pango_win32_font_cache_load (PangoWin32FontCache *cache,
+ const LOGFONT *lfp);
+void pango_win32_font_cache_unload (PangoWin32FontCache *cache,
+ HFONT hfont);
-PangoFontMap * pango_win32_font_map_for_display (void);
-void pango_win32_shutdown_display (void);
-PangoWin32FontCache *pango_win32_font_map_get_font_cache (PangoFontMap *font_map);
+PangoFontMap *pango_win32_font_map_for_display (void);
+void pango_win32_shutdown_display (void);
+PangoWin32FontCache *pango_win32_font_map_get_font_cache (PangoFontMap *font_map);
-LOGFONT *pango_win32_font_subfont_logfont (PangoFont *font,
- PangoWin32Subfont subfont_id);
+LOGFONT *pango_win32_font_subfont_logfont (PangoFont *font,
+ PangoWin32Subfont subfont_id);
/* Debugging.
*/
-void pango_win32_fontmap_dump (int indent,
- PangoFontMap *fontmap);
+void pango_win32_fontmap_dump (int indent,
+ PangoFontMap *fontmap);
#ifdef __cplusplus
}