[pango/win32-font-language: 1/2] PangoWin32: Make PangoWin32Font type checks public




commit 66e2ea5f428893e102fe2cbaa45de0852118f5e2
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Thu Dec 3 18:43:15 2020 +0800

    PangoWin32: Make PangoWin32Font type checks public
    
    This can be useful so that we can check against which backend is being
    used on Windows, as it can be either Win32 or FontConfig/FreeType.
    
    Also rename cases of PANGO_WIN32_IS_FONT to PANGO_IS_WIN32_FONT, to fit
    what is more commonly used--as PANGO_WIN32_IS_FONT was private, we can
    get away with that without breaking ABI/API.

 pango/pangowin32-private.h |  3 ---
 pango/pangowin32.c         | 15 ++++++++++-----
 pango/pangowin32.h         |  7 +++++++
 3 files changed, 17 insertions(+), 8 deletions(-)
---
diff --git a/pango/pangowin32-private.h b/pango/pangowin32-private.h
index 1c9c1c09..9ea00dbc 100644
--- a/pango/pangowin32-private.h
+++ b/pango/pangowin32-private.h
@@ -64,10 +64,7 @@
 #define PANGO_IS_WIN32_FONT_MAP_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_WIN32_FONT_MAP))
 #define PANGO_WIN32_FONT_MAP_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_WIN32_FONT_MAP, 
PangoWin32FontMapClass))
 
-#define PANGO_TYPE_WIN32_FONT            (_pango_win32_font_get_type ())
-#define PANGO_WIN32_FONT(object)         (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_WIN32_FONT, 
PangoWin32Font))
 #define PANGO_WIN32_FONT_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_WIN32_FONT, 
PangoWin32FontClass))
-#define PANGO_WIN32_IS_FONT(object)      (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_WIN32_FONT))
 #define PANGO_WIN32_IS_FONT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_WIN32_FONT))
 #define PANGO_WIN32_FONT_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_WIN32_FONT, 
PangoWin32FontClass))
 
diff --git a/pango/pangowin32.c b/pango/pangowin32.c
index 213a665e..7904c96d 100644
--- a/pango/pangowin32.c
+++ b/pango/pangowin32.c
@@ -676,7 +676,7 @@ pango_win32_font_logfont (PangoFont *font)
   LOGFONTA *lfp;
 
   g_return_val_if_fail (font != NULL, NULL);
-  g_return_val_if_fail (PANGO_WIN32_IS_FONT (font), NULL);
+  g_return_val_if_fail (PANGO_IS_WIN32_FONT (font), NULL);
 
   lfp = g_new (LOGFONTA, 1);
 
@@ -708,7 +708,7 @@ pango_win32_font_logfontw (PangoFont *font)
   LOGFONTW *lfp;
 
   g_return_val_if_fail (font != NULL, NULL);
-  g_return_val_if_fail (PANGO_WIN32_IS_FONT (font), NULL);
+  g_return_val_if_fail (PANGO_IS_WIN32_FONT (font), NULL);
 
   lfp = g_new (LOGFONTW, 1);
   *lfp = win32font->logfontw;
@@ -737,7 +737,7 @@ gboolean
 pango_win32_font_select_font (PangoFont *font,
                              HDC        hdc)
 {
-  g_return_val_if_fail (PANGO_WIN32_IS_FONT (font), FALSE);
+  g_return_val_if_fail (PANGO_IS_WIN32_FONT (font), FALSE);
 
   return PANGO_WIN32_FONT_GET_CLASS (font)->select_font (font, hdc);
 }
@@ -751,7 +751,7 @@ pango_win32_font_select_font (PangoFont *font,
 void
 pango_win32_font_done_font (PangoFont *font)
 {
-  g_return_if_fail (PANGO_WIN32_IS_FONT (font));
+  g_return_if_fail (PANGO_IS_WIN32_FONT (font));
 
   PANGO_WIN32_FONT_GET_CLASS (font)->done_font (font);
 }
@@ -770,7 +770,7 @@ pango_win32_font_done_font (PangoFont *font)
 double
 pango_win32_font_get_metrics_factor (PangoFont *font)
 {
-  g_return_val_if_fail (PANGO_WIN32_IS_FONT (font), 1.);
+  g_return_val_if_fail (PANGO_IS_WIN32_FONT (font), 1.);
 
   return PANGO_WIN32_FONT_GET_CLASS (font)->get_metrics_factor (font);
 }
@@ -1283,3 +1283,8 @@ pango_win32_font_create_hb_font (PangoFont *font)
 
   return hb_font;
 }
+
+GType pango_win32_font_get_type (void)
+{
+  return _pango_win32_font_get_type ();
+}
diff --git a/pango/pangowin32.h b/pango/pangowin32.h
index 5a773811..fe68cc31 100644
--- a/pango/pangowin32.h
+++ b/pango/pangowin32.h
@@ -40,6 +40,10 @@ G_BEGIN_DECLS
 #include <windows.h>
 #undef STRICT
 
+#define PANGO_TYPE_WIN32_FONT            (pango_win32_font_get_type ())
+#define PANGO_WIN32_FONT(object)         (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_WIN32_FONT, 
PangoWin32Font))
+#define PANGO_IS_WIN32_FONT(object)      (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_WIN32_FONT))
+
 /**
  * PANGO_RENDER_TYPE_WIN32:
  *
@@ -146,6 +150,9 @@ PangoFontDescription *pango_win32_font_description_from_logfont (const LOGFONTA
 PANGO_AVAILABLE_IN_1_16
 PangoFontDescription *pango_win32_font_description_from_logfontw (const LOGFONTW *lfp);
 
+PANGO_AVAILABLE_IN_1_48
+GType                 pango_win32_font_get_type                  (void) G_GNUC_CONST;
+
 G_END_DECLS
 
 #endif /* __PANGOWIN32_H__ */


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]