diff options
Diffstat (limited to 'pango/pangowin32.c')
-rw-r--r-- | pango/pangowin32.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/pango/pangowin32.c b/pango/pangowin32.c index eed92dde..55a079c9 100644 --- a/pango/pangowin32.c +++ b/pango/pangowin32.c @@ -126,11 +126,13 @@ _pango_win32_font_init (PangoWin32Font *win32font) } static GPrivate display_dc_key = G_PRIVATE_INIT ((GDestroyNotify) DeleteDC); +static GPrivate dwrite_items = G_PRIVATE_INIT ((GDestroyNotify) pango_win32_dwrite_items_destroy); HDC _pango_win32_get_display_dc (void) { HDC hdc = g_private_get (&display_dc_key); + PangoWin32DWriteItems *items; if (hdc == NULL) { @@ -151,9 +153,22 @@ _pango_win32_get_display_dc (void) #endif } + items = g_private_get (&dwrite_items); + if (items == NULL) + { + items = pango_win32_init_direct_write (); + g_private_set (&dwrite_items, items); + } + return hdc; } +PangoWin32DWriteItems * +pango_win32_get_direct_write_items (void) +{ + return g_private_get (&dwrite_items); +} + /** * pango_win32_get_dc: * |