gir-repository r25 - in trunk: . gir



Author: johan
Date: Sat Aug 16 12:23:31 2008
New Revision: 25
URL: http://svn.gnome.org/viewvc/gir-repository?rev=25&view=rev

Log:
2008-08-16  Johan Dahlin  <johan gnome org>

    * gir/Makefile.am:
    * gir/pango-1.0.gir:
    * gir/pango.gir:
    * gir/pangocairo.gir:
    * gir/pangoft2.gir:
    * gir/pangox.gir:
    * gir/pangoxft.gir:
    Remove pango-1.0.gir, split it out per pkg-config .pc files.



Added:
   trunk/gir/pango.gir
   trunk/gir/pangocairo.gir
   trunk/gir/pangoft2.gir
   trunk/gir/pangox.gir
   trunk/gir/pangoxft.gir
Removed:
   trunk/gir/pango-1.0.gir
Modified:
   trunk/ChangeLog
   trunk/gir/Makefile.am

Modified: trunk/gir/Makefile.am
==============================================================================
--- trunk/gir/Makefile.am	(original)
+++ trunk/gir/Makefile.am	Sat Aug 16 12:23:31 2008
@@ -15,25 +15,80 @@
 # pango
 PANGO_INCLUDEDIR=`pkg-config --variable=includedir pango`/pango-1.0
 PANGO_LIBDIR=`pkg-config --variable=libdir pango`
-PANGOXFT_LIBDIR=`pkg-config --variable=libdir pangoxft`
-PANGOFT2_LIBDIR=`pkg-config --variable=libdir pangoft2`
-PANGOCAIRO_LIBDIR=`pkg-config --variable=libdir pangocairo`
-pango-1.0.gir: cairo.gir
+pango.gir: pangoft2.gir
 	$(G_IR_SCANNER) -v --namespace Pango \
             --include=$(GIRDIR)/glib-2.0.gir \
             --include=$(GIRDIR)/gobject-2.0.gir \
-            --include=cairo.gir \
+            --include=$(srcdir)/cairo.gir \
+            --include=$(srcdir)/pangoft2.gir \
             --library=$(PANGO_LIBDIR)/libpango-1.0.so.0 \
-            --library=$(PANGOXFT_LIBDIR)/libpangoxft-1.0.so.0 \
-            --library=$(PANGOFT2_LIBDIR)/libpangoft2-1.0.so.0 \
+            --output $@ \
+            --pkg gobject-2.0 \
+            --pkg cairo \
+            --pkg pango \
+            --pkg freetype2 \
+            -I$(PANGO_INCLUDEDIR) \
+            $(PANGO_INCLUDEDIR)/pango/pango-*.h
+GIRSOURCES += pango.gir
+
+PANGOCAIRO_LIBDIR=`pkg-config --variable=libdir pangocairo`
+pangocairo.gir: cairo.gir
+	$(G_IR_SCANNER) -v --namespace PangoX \
+            --include=$(GIRDIR)/glib-2.0.gir \
+            --include=$(GIRDIR)/gobject-2.0.gir \
+            --include=$(srcdir)/cairo.gir \
             --library=$(PANGOCAIRO_LIBDIR)/libpangocairo-1.0.so.0 \
             --output $@ \
             --pkg gobject-2.0 \
             --pkg cairo \
+            --pkg pangocairo \
+            -I$(PANGO_INCLUDEDIR) \
+            $(PANGO_INCLUDEDIR)/pango/pangocairo.h
+GIRSOURCES += pangocairo.gir
+
+PANGOFT2_LIBDIR=`pkg-config --variable=libdir pangoft2`
+pangoft2.gir:
+	$(G_IR_SCANNER) -v --namespace PangoFT2 \
+            --include=$(GIRDIR)/glib-2.0.gir \
+            --include=$(GIRDIR)/gobject-2.0.gir \
+            --library=$(PANGOFT2_LIBDIR)/libpangoft2-1.0.so.0 \
+            --output $@ \
+            --pkg gobject-2.0 \
             --pkg freetype2 \
+            --pkg pangoft2 \
             -I$(PANGO_INCLUDEDIR) \
-            $(PANGO_INCLUDEDIR)/pango/*.h
-GIRSOURCES += pango-1.0.gir
+            $(PANGO_INCLUDEDIR)/pango/pangoft2.h \
+            $(PANGO_INCLUDEDIR)/pango/pangofc-*.h \
+GIRSOURCES += pangoft2.gir
+
+PANGOXFT_LIBDIR=`pkg-config --variable=libdir pangoxft`
+pangoxft.gir: cairo.gir
+	$(G_IR_SCANNER) -v --namespace PangoXFT \
+            --include=$(GIRDIR)/glib-2.0.gir \
+            --include=$(GIRDIR)/gobject-2.0.gir \
+            --library=$(PANGOXFT_LIBDIR)/libpangoxft-1.0.so.0 \
+            --output $@ \
+            --pkg gobject-2.0 \
+            --pkg freetype2 \
+            --pkg pangoxft \
+            -I$(PANGO_INCLUDEDIR) \
+            $(PANGO_INCLUDEDIR)/pango/pangoxft.h \
+            $(PANGO_INCLUDEDIR)/pango/pangoxft-render.h
+GIRSOURCES += pangoxft.gir
+
+PANGOX_LIBDIR=`pkg-config --variable=libdir pangox`
+pangox.gir: cairo.gir
+	$(G_IR_SCANNER) -v --namespace PangoX \
+            --include=$(GIRDIR)/glib-2.0.gir \
+            --include=$(GIRDIR)/gobject-2.0.gir \
+            --library=$(PANGOX_LIBDIR)/libpangox-1.0.so.0 \
+            --output $@ \
+            --pkg gobject-2.0 \
+            --pkg freetype2 \
+            --pkg pangox \
+            -I$(PANGO_INCLUDEDIR) \
+            $(PANGO_INCLUDEDIR)/pango/pangox.h
+GIRSOURCES += pangox.gir
 
 # atk
 ATK_INCLUDEDIR=`pkg-config --variable=includedir atk`/atk-1.0
@@ -49,6 +104,8 @@
              $(ATK_INCLUDEDIR)/atk/*.h
 GIRSOURCES += atk.gir
 
+
+
 # gdk
 GDK_INCLUDEDIR=`pkg-config --variable=includedir gdk-2.0`/gtk-2.0
 GDK_LIBDIR=`pkg-config --variable=libdir gdk-2.0`
@@ -57,14 +114,14 @@
              --include=$(GIRDIR)/glib-2.0.gir \
              --include=$(GIRDIR)/gobject-2.0.gir \
              --include=$(srcdir)/cairo.gir \
-             --include=$(srcdir)/pango-1.0.gir \
+             --include=$(srcdir)/pango.gir \
              --include=$(srcdir)/atk.gir \
 	     --library=$(GDK_LIBDIR)/libgdk-x11-2.0.so.0 \
              --output $@ \
              --pkg gobject-2.0 \
              --pkg cairo \
              --pkg atk \
-             --pkg pango-1.0 \
+             --pkg pango \
              --pkg gdk-2.0 \
              -I$(GDK_INCLUDEDIR) \
 	     gdk-x11-2.0.c \
@@ -79,14 +136,14 @@
              --include=$(GIRDIR)/glib-2.0.gir \
              --include=$(GIRDIR)/gobject-2.0.gir \
              --include=$(srcdir)/cairo.gir \
-             --include=$(srcdir)/pango-1.0.gir \
+             --include=$(srcdir)/pango.gir \
              --include=$(srcdir)/atk.gir \
              --include=$(srcdir)/gdk-x11-2.0.gir \
 	     --library=$(GTK_LIBDIR)/libgtk-x11-2.0.so.0 \
              --pkg gobject-2.0 \
              --pkg cairo \
              --pkg atk \
-             --pkg pango-1.0 \
+             --pkg pango \
              --pkg gdk-2.0 \
              --pkg gtk+-2.0 \
              --output $@ \

Added: trunk/gir/pango.gir
==============================================================================
--- (empty file)
+++ trunk/gir/pango.gir	Sat Aug 16 12:23:31 2008
@@ -0,0 +1,5615 @@
+<repository version="1.0"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <namespace name="Pango">
+    <alias name="PangoGlyph" target="guint32"/>
+    <alias name="PangoGlyphUnit" target="gint32"/>
+    <alias name="PangoLayoutRun" target="PangoGlyphItem"/>
+    <record name="PangoCoverage" c:type="PangoCoverage"/>
+    <enumeration name="CoverageLevel"
+                 c:type="PangoCoverageLevel"
+                 glib:type-name="PangoCoverageLevel"
+                 glib:get-type="pango_coverage_level_get_type">
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_COVERAGE_NONE"
+              glib:nick="none"/>
+      <member name="fallback"
+              value="1"
+              c:identifier="PANGO_COVERAGE_FALLBACK"
+              glib:nick="fallback"/>
+      <member name="approximate"
+              value="2"
+              c:identifier="PANGO_COVERAGE_APPROXIMATE"
+              glib:nick="approximate"/>
+      <member name="exact"
+              value="3"
+              c:identifier="PANGO_COVERAGE_EXACT"
+              glib:nick="exact"/>
+    </enumeration>
+    <function name="coverage_new" c:identifier="pango_coverage_new">
+      <return-value>
+        <type name="PangoCoverage" c:type="PangoCoverage*"/>
+      </return-value>
+    </function>
+    <function name="coverage_ref" c:identifier="pango_coverage_ref">
+      <return-value>
+        <type name="PangoCoverage" c:type="PangoCoverage*"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_unref" c:identifier="pango_coverage_unref">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_copy" c:identifier="pango_coverage_copy">
+      <return-value>
+        <type name="PangoCoverage" c:type="PangoCoverage*"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_get" c:identifier="pango_coverage_get">
+      <return-value>
+        <type name="CoverageLevel" c:type="PangoCoverageLevel"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+        <parameter name="index_">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_set" c:identifier="pango_coverage_set">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+        <parameter name="index_">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="level">
+          <type name="CoverageLevel" c:type="PangoCoverageLevel"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_max" c:identifier="pango_coverage_max">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+        <parameter name="other">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_to_bytes" c:identifier="pango_coverage_to_bytes">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="coverage">
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </parameter>
+        <parameter name="bytes">
+          <type name="GLib.guchar" c:type="guchar**"/>
+        </parameter>
+        <parameter name="n_bytes">
+          <type name="int" c:type="int*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="coverage_from_bytes"
+              c:identifier="pango_coverage_from_bytes">
+      <return-value>
+        <type name="PangoCoverage" c:type="PangoCoverage*"/>
+      </return-value>
+      <parameters>
+        <parameter name="bytes">
+          <type name="GLib.guchar" c:type="guchar*"/>
+        </parameter>
+        <parameter name="n_bytes">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <record name="PangoLogAttr" c:type="PangoLogAttr">
+      <field name="is_line_break">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_mandatory_break">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_char_break">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_white">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_cursor_position">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_word_start">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_word_end">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_sentence_boundary">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_sentence_start">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_sentence_end">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="backspace_deletes_character">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="is_expandable_space">
+        <type name="uint32" c:type="guint"/>
+      </field>
+    </record>
+    <record name="PangoEngineLang" c:type="PangoEngineLang"/>
+    <record name="PangoEngineShape" c:type="PangoEngineShape"/>
+    <record name="PangoRectangle" c:type="PangoRectangle">
+      <field name="x">
+        <type name="int32" c:type="int"/>
+      </field>
+      <field name="y">
+        <type name="int32" c:type="int"/>
+      </field>
+      <field name="width">
+        <type name="int32" c:type="int"/>
+      </field>
+      <field name="height">
+        <type name="int32" c:type="int"/>
+      </field>
+    </record>
+    <function name="units_from_double" c:identifier="pango_units_from_double">
+      <return-value>
+        <type name="int32" c:type="int"/>
+      </return-value>
+      <parameters>
+        <parameter name="d">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="units_to_double" c:identifier="pango_units_to_double">
+      <return-value>
+        <type name="double" c:type="double"/>
+      </return-value>
+      <parameters>
+        <parameter name="i">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="extents_to_pixels" c:identifier="pango_extents_to_pixels">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="inclusive">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+        <parameter name="nearest">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <enumeration name="Direction"
+                 c:type="PangoDirection"
+                 glib:type-name="PangoDirection"
+                 glib:get-type="pango_direction_get_type">
+      <member name="ltr"
+              value="0"
+              c:identifier="PANGO_DIRECTION_LTR"
+              glib:nick="ltr"/>
+      <member name="rtl"
+              value="1"
+              c:identifier="PANGO_DIRECTION_RTL"
+              glib:nick="rtl"/>
+      <member name="ttb-ltr"
+              value="2"
+              c:identifier="PANGO_DIRECTION_TTB_LTR"
+              glib:nick="ttb-ltr"/>
+      <member name="ttb-rtl"
+              value="3"
+              c:identifier="PANGO_DIRECTION_TTB_RTL"
+              glib:nick="ttb-rtl"/>
+      <member name="weak-ltr"
+              value="4"
+              c:identifier="PANGO_DIRECTION_WEAK_LTR"
+              glib:nick="weak-ltr"/>
+      <member name="weak-rtl"
+              value="5"
+              c:identifier="PANGO_DIRECTION_WEAK_RTL"
+              glib:nick="weak-rtl"/>
+      <member name="neutral"
+              value="6"
+              c:identifier="PANGO_DIRECTION_NEUTRAL"
+              glib:nick="neutral"/>
+    </enumeration>
+    <function name="unichar_direction" c:identifier="pango_unichar_direction">
+      <return-value>
+        <type name="Direction" c:type="PangoDirection"/>
+      </return-value>
+      <parameters>
+        <parameter name="ch">
+          <type name="GLib.gunichar" c:type="gunichar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="find_base_dir" c:identifier="pango_find_base_dir">
+      <return-value>
+        <type name="Direction" c:type="PangoDirection"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="get_mirror_char" c:identifier="pango_get_mirror_char">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="ch">
+          <type name="GLib.gunichar" c:type="gunichar"/>
+        </parameter>
+        <parameter name="mirrored_ch">
+          <type name="GLib.gunichar" c:type="gunichar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <enumeration name="Gravity"
+                 c:type="PangoGravity"
+                 glib:type-name="PangoGravity"
+                 glib:get-type="pango_gravity_get_type">
+      <member name="south"
+              value="0"
+              c:identifier="PANGO_GRAVITY_SOUTH"
+              glib:nick="south"/>
+      <member name="east"
+              value="1"
+              c:identifier="PANGO_GRAVITY_EAST"
+              glib:nick="east"/>
+      <member name="north"
+              value="2"
+              c:identifier="PANGO_GRAVITY_NORTH"
+              glib:nick="north"/>
+      <member name="west"
+              value="3"
+              c:identifier="PANGO_GRAVITY_WEST"
+              glib:nick="west"/>
+      <member name="auto"
+              value="4"
+              c:identifier="PANGO_GRAVITY_AUTO"
+              glib:nick="auto"/>
+    </enumeration>
+    <enumeration name="GravityHint"
+                 c:type="PangoGravityHint"
+                 glib:type-name="PangoGravityHint"
+                 glib:get-type="pango_gravity_hint_get_type">
+      <member name="natural"
+              value="0"
+              c:identifier="PANGO_GRAVITY_HINT_NATURAL"
+              glib:nick="natural"/>
+      <member name="strong"
+              value="1"
+              c:identifier="PANGO_GRAVITY_HINT_STRONG"
+              glib:nick="strong"/>
+      <member name="line"
+              value="2"
+              c:identifier="PANGO_GRAVITY_HINT_LINE"
+              glib:nick="line"/>
+    </enumeration>
+    <glib:boxed c:type="Matrix"
+                glib:name="Matrix"
+                glib:type-name="PangoMatrix"
+                glib:get-type="pango_matrix_get_type">
+      <constructor name="copy" c:identifier="pango_matrix_copy">
+        <return-value>
+          <type name="Matrix" c:type="PangoMatrix*"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_matrix_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="translate" c:identifier="pango_matrix_translate">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="tx">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="ty">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="scale" c:identifier="pango_matrix_scale">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="scale_x">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="scale_y">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="rotate" c:identifier="pango_matrix_rotate">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="degrees">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="concat" c:identifier="pango_matrix_concat">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="new_matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="transform_point"
+              c:identifier="pango_matrix_transform_point">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="double" c:type="double*"/>
+          </parameter>
+          <parameter name="y">
+            <type name="double" c:type="double*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="transform_distance"
+              c:identifier="pango_matrix_transform_distance">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="dx">
+            <type name="double" c:type="double*"/>
+          </parameter>
+          <parameter name="dy">
+            <type name="double" c:type="double*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="transform_rectangle"
+              c:identifier="pango_matrix_transform_rectangle">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="transform_pixel_rectangle"
+              c:identifier="pango_matrix_transform_pixel_rectangle">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_font_scale_factor"
+              c:identifier="pango_matrix_get_font_scale_factor">
+        <return-value>
+          <type name="double" c:type="double"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <glib:boxed c:type="Language"
+                glib:name="Language"
+                glib:type-name="PangoLanguage"
+                glib:get-type="pango_language_get_type">
+      <constructor name="from_string"
+                   c:identifier="pango_language_from_string">
+        <return-value>
+          <type name="Language" c:type="PangoLanguage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="language">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="get_default"
+                   c:identifier="pango_language_get_default">
+        <return-value>
+          <type name="Language" c:type="PangoLanguage*"/>
+        </return-value>
+      </constructor>
+      <method name="get_sample_string"
+              c:identifier="pango_language_get_sample_string">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="matches" c:identifier="pango_language_matches">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+          <parameter name="range_list">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="includes_script"
+              c:identifier="pango_language_includes_script">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+          <parameter name="script">
+            <type name="Script" c:type="PangoScript"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <record name="PangoScriptIter" c:type="PangoScriptIter"/>
+    <enumeration name="Script"
+                 c:type="PangoScript"
+                 glib:type-name="PangoScript"
+                 glib:get-type="pango_script_get_type">
+      <member name="invalid-code"
+              value="-1"
+              c:identifier="PANGO_SCRIPT_INVALID_CODE"
+              glib:nick="invalid-code"/>
+      <member name="common"
+              value="0"
+              c:identifier="PANGO_SCRIPT_COMMON"
+              glib:nick="common"/>
+      <member name="inherited"
+              value="1"
+              c:identifier="PANGO_SCRIPT_INHERITED"
+              glib:nick="inherited"/>
+      <member name="arabic"
+              value="2"
+              c:identifier="PANGO_SCRIPT_ARABIC"
+              glib:nick="arabic"/>
+      <member name="armenian"
+              value="3"
+              c:identifier="PANGO_SCRIPT_ARMENIAN"
+              glib:nick="armenian"/>
+      <member name="bengali"
+              value="4"
+              c:identifier="PANGO_SCRIPT_BENGALI"
+              glib:nick="bengali"/>
+      <member name="bopomofo"
+              value="5"
+              c:identifier="PANGO_SCRIPT_BOPOMOFO"
+              glib:nick="bopomofo"/>
+      <member name="cherokee"
+              value="6"
+              c:identifier="PANGO_SCRIPT_CHEROKEE"
+              glib:nick="cherokee"/>
+      <member name="coptic"
+              value="7"
+              c:identifier="PANGO_SCRIPT_COPTIC"
+              glib:nick="coptic"/>
+      <member name="cyrillic"
+              value="8"
+              c:identifier="PANGO_SCRIPT_CYRILLIC"
+              glib:nick="cyrillic"/>
+      <member name="deseret"
+              value="9"
+              c:identifier="PANGO_SCRIPT_DESERET"
+              glib:nick="deseret"/>
+      <member name="devanagari"
+              value="10"
+              c:identifier="PANGO_SCRIPT_DEVANAGARI"
+              glib:nick="devanagari"/>
+      <member name="ethiopic"
+              value="11"
+              c:identifier="PANGO_SCRIPT_ETHIOPIC"
+              glib:nick="ethiopic"/>
+      <member name="georgian"
+              value="12"
+              c:identifier="PANGO_SCRIPT_GEORGIAN"
+              glib:nick="georgian"/>
+      <member name="gothic"
+              value="13"
+              c:identifier="PANGO_SCRIPT_GOTHIC"
+              glib:nick="gothic"/>
+      <member name="greek"
+              value="14"
+              c:identifier="PANGO_SCRIPT_GREEK"
+              glib:nick="greek"/>
+      <member name="gujarati"
+              value="15"
+              c:identifier="PANGO_SCRIPT_GUJARATI"
+              glib:nick="gujarati"/>
+      <member name="gurmukhi"
+              value="16"
+              c:identifier="PANGO_SCRIPT_GURMUKHI"
+              glib:nick="gurmukhi"/>
+      <member name="han"
+              value="17"
+              c:identifier="PANGO_SCRIPT_HAN"
+              glib:nick="han"/>
+      <member name="hangul"
+              value="18"
+              c:identifier="PANGO_SCRIPT_HANGUL"
+              glib:nick="hangul"/>
+      <member name="hebrew"
+              value="19"
+              c:identifier="PANGO_SCRIPT_HEBREW"
+              glib:nick="hebrew"/>
+      <member name="hiragana"
+              value="20"
+              c:identifier="PANGO_SCRIPT_HIRAGANA"
+              glib:nick="hiragana"/>
+      <member name="kannada"
+              value="21"
+              c:identifier="PANGO_SCRIPT_KANNADA"
+              glib:nick="kannada"/>
+      <member name="katakana"
+              value="22"
+              c:identifier="PANGO_SCRIPT_KATAKANA"
+              glib:nick="katakana"/>
+      <member name="khmer"
+              value="23"
+              c:identifier="PANGO_SCRIPT_KHMER"
+              glib:nick="khmer"/>
+      <member name="lao"
+              value="24"
+              c:identifier="PANGO_SCRIPT_LAO"
+              glib:nick="lao"/>
+      <member name="latin"
+              value="25"
+              c:identifier="PANGO_SCRIPT_LATIN"
+              glib:nick="latin"/>
+      <member name="malayalam"
+              value="26"
+              c:identifier="PANGO_SCRIPT_MALAYALAM"
+              glib:nick="malayalam"/>
+      <member name="mongolian"
+              value="27"
+              c:identifier="PANGO_SCRIPT_MONGOLIAN"
+              glib:nick="mongolian"/>
+      <member name="myanmar"
+              value="28"
+              c:identifier="PANGO_SCRIPT_MYANMAR"
+              glib:nick="myanmar"/>
+      <member name="ogham"
+              value="29"
+              c:identifier="PANGO_SCRIPT_OGHAM"
+              glib:nick="ogham"/>
+      <member name="old-italic"
+              value="30"
+              c:identifier="PANGO_SCRIPT_OLD_ITALIC"
+              glib:nick="old-italic"/>
+      <member name="oriya"
+              value="31"
+              c:identifier="PANGO_SCRIPT_ORIYA"
+              glib:nick="oriya"/>
+      <member name="runic"
+              value="32"
+              c:identifier="PANGO_SCRIPT_RUNIC"
+              glib:nick="runic"/>
+      <member name="sinhala"
+              value="33"
+              c:identifier="PANGO_SCRIPT_SINHALA"
+              glib:nick="sinhala"/>
+      <member name="syriac"
+              value="34"
+              c:identifier="PANGO_SCRIPT_SYRIAC"
+              glib:nick="syriac"/>
+      <member name="tamil"
+              value="35"
+              c:identifier="PANGO_SCRIPT_TAMIL"
+              glib:nick="tamil"/>
+      <member name="telugu"
+              value="36"
+              c:identifier="PANGO_SCRIPT_TELUGU"
+              glib:nick="telugu"/>
+      <member name="thaana"
+              value="37"
+              c:identifier="PANGO_SCRIPT_THAANA"
+              glib:nick="thaana"/>
+      <member name="thai"
+              value="38"
+              c:identifier="PANGO_SCRIPT_THAI"
+              glib:nick="thai"/>
+      <member name="tibetan"
+              value="39"
+              c:identifier="PANGO_SCRIPT_TIBETAN"
+              glib:nick="tibetan"/>
+      <member name="canadian-aboriginal"
+              value="40"
+              c:identifier="PANGO_SCRIPT_CANADIAN_ABORIGINAL"
+              glib:nick="canadian-aboriginal"/>
+      <member name="yi"
+              value="41"
+              c:identifier="PANGO_SCRIPT_YI"
+              glib:nick="yi"/>
+      <member name="tagalog"
+              value="42"
+              c:identifier="PANGO_SCRIPT_TAGALOG"
+              glib:nick="tagalog"/>
+      <member name="hanunoo"
+              value="43"
+              c:identifier="PANGO_SCRIPT_HANUNOO"
+              glib:nick="hanunoo"/>
+      <member name="buhid"
+              value="44"
+              c:identifier="PANGO_SCRIPT_BUHID"
+              glib:nick="buhid"/>
+      <member name="tagbanwa"
+              value="45"
+              c:identifier="PANGO_SCRIPT_TAGBANWA"
+              glib:nick="tagbanwa"/>
+      <member name="braille"
+              value="46"
+              c:identifier="PANGO_SCRIPT_BRAILLE"
+              glib:nick="braille"/>
+      <member name="cypriot"
+              value="47"
+              c:identifier="PANGO_SCRIPT_CYPRIOT"
+              glib:nick="cypriot"/>
+      <member name="limbu"
+              value="48"
+              c:identifier="PANGO_SCRIPT_LIMBU"
+              glib:nick="limbu"/>
+      <member name="osmanya"
+              value="49"
+              c:identifier="PANGO_SCRIPT_OSMANYA"
+              glib:nick="osmanya"/>
+      <member name="shavian"
+              value="50"
+              c:identifier="PANGO_SCRIPT_SHAVIAN"
+              glib:nick="shavian"/>
+      <member name="linear-b"
+              value="51"
+              c:identifier="PANGO_SCRIPT_LINEAR_B"
+              glib:nick="linear-b"/>
+      <member name="tai-le"
+              value="52"
+              c:identifier="PANGO_SCRIPT_TAI_LE"
+              glib:nick="tai-le"/>
+      <member name="ugaritic"
+              value="53"
+              c:identifier="PANGO_SCRIPT_UGARITIC"
+              glib:nick="ugaritic"/>
+      <member name="new-tai-lue"
+              value="54"
+              c:identifier="PANGO_SCRIPT_NEW_TAI_LUE"
+              glib:nick="new-tai-lue"/>
+      <member name="buginese"
+              value="55"
+              c:identifier="PANGO_SCRIPT_BUGINESE"
+              glib:nick="buginese"/>
+      <member name="glagolitic"
+              value="56"
+              c:identifier="PANGO_SCRIPT_GLAGOLITIC"
+              glib:nick="glagolitic"/>
+      <member name="tifinagh"
+              value="57"
+              c:identifier="PANGO_SCRIPT_TIFINAGH"
+              glib:nick="tifinagh"/>
+      <member name="syloti-nagri"
+              value="58"
+              c:identifier="PANGO_SCRIPT_SYLOTI_NAGRI"
+              glib:nick="syloti-nagri"/>
+      <member name="old-persian"
+              value="59"
+              c:identifier="PANGO_SCRIPT_OLD_PERSIAN"
+              glib:nick="old-persian"/>
+      <member name="kharoshthi"
+              value="60"
+              c:identifier="PANGO_SCRIPT_KHAROSHTHI"
+              glib:nick="kharoshthi"/>
+      <member name="unknown"
+              value="61"
+              c:identifier="PANGO_SCRIPT_UNKNOWN"
+              glib:nick="unknown"/>
+      <member name="balinese"
+              value="62"
+              c:identifier="PANGO_SCRIPT_BALINESE"
+              glib:nick="balinese"/>
+      <member name="cuneiform"
+              value="63"
+              c:identifier="PANGO_SCRIPT_CUNEIFORM"
+              glib:nick="cuneiform"/>
+      <member name="phoenician"
+              value="64"
+              c:identifier="PANGO_SCRIPT_PHOENICIAN"
+              glib:nick="phoenician"/>
+      <member name="phags-pa"
+              value="65"
+              c:identifier="PANGO_SCRIPT_PHAGS_PA"
+              glib:nick="phags-pa"/>
+      <member name="nko"
+              value="66"
+              c:identifier="PANGO_SCRIPT_NKO"
+              glib:nick="nko"/>
+      <member name="kayah-li"
+              value="67"
+              c:identifier="PANGO_SCRIPT_KAYAH_LI"
+              glib:nick="kayah-li"/>
+      <member name="lepcha"
+              value="68"
+              c:identifier="PANGO_SCRIPT_LEPCHA"
+              glib:nick="lepcha"/>
+      <member name="rejang"
+              value="69"
+              c:identifier="PANGO_SCRIPT_REJANG"
+              glib:nick="rejang"/>
+      <member name="sundanese"
+              value="70"
+              c:identifier="PANGO_SCRIPT_SUNDANESE"
+              glib:nick="sundanese"/>
+      <member name="saurashtra"
+              value="71"
+              c:identifier="PANGO_SCRIPT_SAURASHTRA"
+              glib:nick="saurashtra"/>
+      <member name="cham"
+              value="72"
+              c:identifier="PANGO_SCRIPT_CHAM"
+              glib:nick="cham"/>
+      <member name="ol-chiki"
+              value="73"
+              c:identifier="PANGO_SCRIPT_OL_CHIKI"
+              glib:nick="ol-chiki"/>
+      <member name="vai"
+              value="74"
+              c:identifier="PANGO_SCRIPT_VAI"
+              glib:nick="vai"/>
+      <member name="carian"
+              value="75"
+              c:identifier="PANGO_SCRIPT_CARIAN"
+              glib:nick="carian"/>
+      <member name="lycian"
+              value="76"
+              c:identifier="PANGO_SCRIPT_LYCIAN"
+              glib:nick="lycian"/>
+      <member name="lydian"
+              value="77"
+              c:identifier="PANGO_SCRIPT_LYDIAN"
+              glib:nick="lydian"/>
+    </enumeration>
+    <function name="script_for_unichar"
+              c:identifier="pango_script_for_unichar">
+      <return-value>
+        <type name="Script" c:type="PangoScript"/>
+      </return-value>
+      <parameters>
+        <parameter name="ch">
+          <type name="GLib.gunichar" c:type="gunichar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="script_iter_new" c:identifier="pango_script_iter_new">
+      <return-value>
+        <type name="PangoScriptIter" c:type="PangoScriptIter*"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="script_iter_get_range"
+              c:identifier="pango_script_iter_get_range">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="iter">
+          <type name="PangoScriptIter" c:type="PangoScriptIter*"/>
+        </parameter>
+        <parameter name="start">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="end">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="script">
+          <type name="Script" c:type="PangoScript*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="script_iter_next" c:identifier="pango_script_iter_next">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="iter">
+          <type name="PangoScriptIter" c:type="PangoScriptIter*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="script_iter_free" c:identifier="pango_script_iter_free">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="iter">
+          <type name="PangoScriptIter" c:type="PangoScriptIter*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="script_get_sample_language"
+              c:identifier="pango_script_get_sample_language">
+      <return-value>
+        <type name="Language" c:type="PangoLanguage*"/>
+      </return-value>
+      <parameters>
+        <parameter name="script">
+          <type name="Script" c:type="PangoScript"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="gravity_to_rotation"
+              c:identifier="pango_gravity_to_rotation">
+      <return-value>
+        <type name="double" c:type="double"/>
+      </return-value>
+      <parameters>
+        <parameter name="gravity">
+          <type name="Gravity" c:type="PangoGravity"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="gravity_get_for_matrix"
+              c:identifier="pango_gravity_get_for_matrix">
+      <return-value>
+        <type name="Gravity" c:type="PangoGravity"/>
+      </return-value>
+      <parameters>
+        <parameter name="matrix">
+          <type name="Matrix" c:type="PangoMatrix*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="gravity_get_for_script"
+              c:identifier="pango_gravity_get_for_script">
+      <return-value>
+        <type name="Gravity" c:type="PangoGravity"/>
+      </return-value>
+      <parameters>
+        <parameter name="script">
+          <type name="Script" c:type="PangoScript"/>
+        </parameter>
+        <parameter name="base_gravity">
+          <type name="Gravity" c:type="PangoGravity"/>
+        </parameter>
+        <parameter name="hint">
+          <type name="GravityHint" c:type="PangoGravityHint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <enumeration name="Style"
+                 c:type="PangoStyle"
+                 glib:type-name="PangoStyle"
+                 glib:get-type="pango_style_get_type">
+      <member name="normal"
+              value="0"
+              c:identifier="PANGO_STYLE_NORMAL"
+              glib:nick="normal"/>
+      <member name="oblique"
+              value="1"
+              c:identifier="PANGO_STYLE_OBLIQUE"
+              glib:nick="oblique"/>
+      <member name="italic"
+              value="2"
+              c:identifier="PANGO_STYLE_ITALIC"
+              glib:nick="italic"/>
+    </enumeration>
+    <enumeration name="Variant"
+                 c:type="PangoVariant"
+                 glib:type-name="PangoVariant"
+                 glib:get-type="pango_variant_get_type">
+      <member name="normal"
+              value="0"
+              c:identifier="PANGO_VARIANT_NORMAL"
+              glib:nick="normal"/>
+      <member name="small-caps"
+              value="1"
+              c:identifier="PANGO_VARIANT_SMALL_CAPS"
+              glib:nick="small-caps"/>
+    </enumeration>
+    <enumeration name="Weight"
+                 c:type="PangoWeight"
+                 glib:type-name="PangoWeight"
+                 glib:get-type="pango_weight_get_type">
+      <member name="ultralight"
+              value="200"
+              c:identifier="PANGO_WEIGHT_ULTRALIGHT"
+              glib:nick="ultralight"/>
+      <member name="light"
+              value="300"
+              c:identifier="PANGO_WEIGHT_LIGHT"
+              glib:nick="light"/>
+      <member name="normal"
+              value="400"
+              c:identifier="PANGO_WEIGHT_NORMAL"
+              glib:nick="normal"/>
+      <member name="semibold"
+              value="600"
+              c:identifier="PANGO_WEIGHT_SEMIBOLD"
+              glib:nick="semibold"/>
+      <member name="bold"
+              value="700"
+              c:identifier="PANGO_WEIGHT_BOLD"
+              glib:nick="bold"/>
+      <member name="ultrabold"
+              value="800"
+              c:identifier="PANGO_WEIGHT_ULTRABOLD"
+              glib:nick="ultrabold"/>
+      <member name="heavy"
+              value="900"
+              c:identifier="PANGO_WEIGHT_HEAVY"
+              glib:nick="heavy"/>
+    </enumeration>
+    <enumeration name="Stretch"
+                 c:type="PangoStretch"
+                 glib:type-name="PangoStretch"
+                 glib:get-type="pango_stretch_get_type">
+      <member name="ultra-condensed"
+              value="0"
+              c:identifier="PANGO_STRETCH_ULTRA_CONDENSED"
+              glib:nick="ultra-condensed"/>
+      <member name="extra-condensed"
+              value="1"
+              c:identifier="PANGO_STRETCH_EXTRA_CONDENSED"
+              glib:nick="extra-condensed"/>
+      <member name="condensed"
+              value="2"
+              c:identifier="PANGO_STRETCH_CONDENSED"
+              glib:nick="condensed"/>
+      <member name="semi-condensed"
+              value="3"
+              c:identifier="PANGO_STRETCH_SEMI_CONDENSED"
+              glib:nick="semi-condensed"/>
+      <member name="normal"
+              value="4"
+              c:identifier="PANGO_STRETCH_NORMAL"
+              glib:nick="normal"/>
+      <member name="semi-expanded"
+              value="5"
+              c:identifier="PANGO_STRETCH_SEMI_EXPANDED"
+              glib:nick="semi-expanded"/>
+      <member name="expanded"
+              value="6"
+              c:identifier="PANGO_STRETCH_EXPANDED"
+              glib:nick="expanded"/>
+      <member name="extra-expanded"
+              value="7"
+              c:identifier="PANGO_STRETCH_EXTRA_EXPANDED"
+              glib:nick="extra-expanded"/>
+      <member name="ultra-expanded"
+              value="8"
+              c:identifier="PANGO_STRETCH_ULTRA_EXPANDED"
+              glib:nick="ultra-expanded"/>
+    </enumeration>
+    <bitfield name="FontMask"
+              c:type="PangoFontMask"
+              glib:type-name="PangoFontMask"
+              glib:get-type="pango_font_mask_get_type">
+      <member name="family"
+              value="1"
+              c:identifier="PANGO_FONT_MASK_FAMILY"
+              glib:nick="family"/>
+      <member name="style"
+              value="2"
+              c:identifier="PANGO_FONT_MASK_STYLE"
+              glib:nick="style"/>
+      <member name="variant"
+              value="4"
+              c:identifier="PANGO_FONT_MASK_VARIANT"
+              glib:nick="variant"/>
+      <member name="weight"
+              value="8"
+              c:identifier="PANGO_FONT_MASK_WEIGHT"
+              glib:nick="weight"/>
+      <member name="stretch"
+              value="16"
+              c:identifier="PANGO_FONT_MASK_STRETCH"
+              glib:nick="stretch"/>
+      <member name="size"
+              value="32"
+              c:identifier="PANGO_FONT_MASK_SIZE"
+              glib:nick="size"/>
+      <member name="gravity"
+              value="64"
+              c:identifier="PANGO_FONT_MASK_GRAVITY"
+              glib:nick="gravity"/>
+    </bitfield>
+    <glib:boxed c:type="FontDescription"
+                glib:name="FontDescription"
+                glib:type-name="PangoFontDescription"
+                glib:get-type="pango_font_description_get_type">
+      <constructor name="new" c:identifier="pango_font_description_new">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+      </constructor>
+      <constructor name="copy" c:identifier="pango_font_description_copy">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="copy_static"
+                   c:identifier="pango_font_description_copy_static">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="from_string"
+                   c:identifier="pango_font_description_from_string">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="str">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="hash" c:identifier="pango_font_description_hash">
+        <return-value>
+          <type name="uint32" c:type="guint"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="equal" c:identifier="pango_font_description_equal">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc1">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="desc2">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="free" c:identifier="pango_font_description_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_family"
+              c:identifier="pango_font_description_set_family">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="family">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_family_static"
+              c:identifier="pango_font_description_set_family_static">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="family">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_family"
+              c:identifier="pango_font_description_get_family">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_style" c:identifier="pango_font_description_set_style">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="style">
+            <type name="Style" c:type="PangoStyle"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_style" c:identifier="pango_font_description_get_style">
+        <return-value>
+          <type name="Style" c:type="PangoStyle"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_variant"
+              c:identifier="pango_font_description_set_variant">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="variant">
+            <type name="Variant" c:type="PangoVariant"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_variant"
+              c:identifier="pango_font_description_get_variant">
+        <return-value>
+          <type name="Variant" c:type="PangoVariant"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_weight"
+              c:identifier="pango_font_description_set_weight">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="weight">
+            <type name="Weight" c:type="PangoWeight"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_weight"
+              c:identifier="pango_font_description_get_weight">
+        <return-value>
+          <type name="Weight" c:type="PangoWeight"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_stretch"
+              c:identifier="pango_font_description_set_stretch">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="stretch">
+            <type name="Stretch" c:type="PangoStretch"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_stretch"
+              c:identifier="pango_font_description_get_stretch">
+        <return-value>
+          <type name="Stretch" c:type="PangoStretch"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_size" c:identifier="pango_font_description_set_size">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="size">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_size" c:identifier="pango_font_description_get_size">
+        <return-value>
+          <type name="int32" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_absolute_size"
+              c:identifier="pango_font_description_set_absolute_size">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="size">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_size_is_absolute"
+              c:identifier="pango_font_description_get_size_is_absolute">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_gravity"
+              c:identifier="pango_font_description_set_gravity">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="gravity">
+            <type name="Gravity" c:type="PangoGravity"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_gravity"
+              c:identifier="pango_font_description_get_gravity">
+        <return-value>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_set_fields"
+              c:identifier="pango_font_description_get_set_fields">
+        <return-value>
+          <type name="FontMask" c:type="PangoFontMask"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="unset_fields"
+              c:identifier="pango_font_description_unset_fields">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="to_unset">
+            <type name="FontMask" c:type="PangoFontMask"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="merge" c:identifier="pango_font_description_merge">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="desc_to_merge">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="replace_existing">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="merge_static"
+              c:identifier="pango_font_description_merge_static">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="desc_to_merge">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="replace_existing">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="better_match"
+              c:identifier="pango_font_description_better_match">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="old_match">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="new_match">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_string" c:identifier="pango_font_description_to_string">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_filename"
+              c:identifier="pango_font_description_to_filename">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <function name="font_descriptions_free"
+              c:identifier="pango_font_descriptions_free">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="descs">
+          <type name="FontDescription" c:type="PangoFontDescription**"/>
+        </parameter>
+        <parameter name="n_descs">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <glib:boxed c:type="FontMetrics"
+                glib:name="FontMetrics"
+                glib:type-name="PangoFontMetrics"
+                glib:get-type="pango_font_metrics_get_type">
+      <constructor name="ref" c:identifier="pango_font_metrics_ref">
+        <return-value>
+          <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="unref" c:identifier="pango_font_metrics_unref">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_ascent" c:identifier="pango_font_metrics_get_ascent">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_descent" c:identifier="pango_font_metrics_get_descent">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_approximate_char_width"
+              c:identifier="pango_font_metrics_get_approximate_char_width">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_approximate_digit_width"
+              c:identifier="pango_font_metrics_get_approximate_digit_width">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_underline_position"
+              c:identifier="pango_font_metrics_get_underline_position">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_underline_thickness"
+              c:identifier="pango_font_metrics_get_underline_thickness">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_strikethrough_position"
+              c:identifier="pango_font_metrics_get_strikethrough_position">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_strikethrough_thickness"
+              c:identifier="pango_font_metrics_get_strikethrough_thickness">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="metrics">
+            <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <class name="FontFamily"
+           c:type="PangoFontFamily"
+           parent="GObject.Object"
+           glib:type-name="PangoFontFamily"
+           glib:get-type="pango_font_family_get_type">
+      <method name="list_faces" c:identifier="pango_font_family_list_faces">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="family">
+            <type name="FontFamily" c:type="PangoFontFamily*"/>
+          </parameter>
+          <parameter name="faces">
+            <type name="FontFace" c:type="PangoFontFace***"/>
+          </parameter>
+          <parameter name="n_faces">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_name" c:identifier="pango_font_family_get_name">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="family">
+            <type name="FontFamily" c:type="PangoFontFamily*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="is_monospace"
+              c:identifier="pango_font_family_is_monospace">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="family">
+            <type name="FontFamily" c:type="PangoFontFamily*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <class name="FontFace"
+           c:type="PangoFontFace"
+           parent="GObject.Object"
+           glib:type-name="PangoFontFace"
+           glib:get-type="pango_font_face_get_type">
+      <method name="describe" c:identifier="pango_font_face_describe">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="face">
+            <type name="FontFace" c:type="PangoFontFace*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_face_name"
+              c:identifier="pango_font_face_get_face_name">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="face">
+            <type name="FontFace" c:type="PangoFontFace*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="list_sizes" c:identifier="pango_font_face_list_sizes">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="face">
+            <type name="FontFace" c:type="PangoFontFace*"/>
+          </parameter>
+          <parameter name="sizes">
+            <type name="int" c:type="int**"/>
+          </parameter>
+          <parameter name="n_sizes">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="is_synthesized"
+              c:identifier="pango_font_face_is_synthesized">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="face">
+            <type name="FontFace" c:type="PangoFontFace*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <class name="Font"
+           c:type="PangoFont"
+           parent="GObject.Object"
+           glib:type-name="PangoFont"
+           glib:get-type="pango_font_get_type">
+      <constructor name="map_load_font"
+                   c:identifier="pango_font_map_load_font">
+        <return-value>
+          <type name="Font" c:type="PangoFont*"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFontMap*"/>
+          </parameter>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="describe" c:identifier="pango_font_describe">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="describe_with_absolute_size"
+              c:identifier="pango_font_describe_with_absolute_size">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_coverage" c:identifier="pango_font_get_coverage">
+        <return-value>
+          <type name="PangoCoverage" c:type="PangoCoverage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="find_shaper" c:identifier="pango_font_find_shaper">
+        <return-value>
+          <type name="PangoEngineShape" c:type="PangoEngineShape*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+          <parameter name="ch">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_metrics" c:identifier="pango_font_get_metrics">
+        <return-value>
+          <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_glyph_extents"
+              c:identifier="pango_font_get_glyph_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="glyph">
+            <type name="PangoGlyph" c:type="PangoGlyph"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_font_map" c:identifier="pango_font_get_font_map">
+        <return-value>
+          <type name="FontMap" c:type="PangoFontMap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <glib:boxed c:type="Color"
+                glib:name="Color"
+                glib:type-name="PangoColor"
+                glib:get-type="pango_color_get_type">
+      <constructor name="copy" c:identifier="pango_color_copy">
+        <return-value>
+          <type name="Color" c:type="PangoColor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="src">
+            <type name="Color" c:type="PangoColor*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_color_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color">
+            <type name="Color" c:type="PangoColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="parse" c:identifier="pango_color_parse">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="color">
+            <type name="Color" c:type="PangoColor*"/>
+          </parameter>
+          <parameter name="spec">
+            <type name="string" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_string" c:identifier="pango_color_to_string">
+        <return-value>
+          <type name="string" c:type="gchar*"/>
+        </return-value>
+        <parameters>
+          <parameter name="color">
+            <type name="Color" c:type="PangoColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <record name="PangoAttribute" c:type="PangoAttribute">
+      <field name="klass">
+        <type name="PangoAttrClass" c:type="PangoAttrClass*"/>
+      </field>
+      <field name="start_index">
+        <type name="uint32" c:type="guint"/>
+      </field>
+      <field name="end_index">
+        <type name="uint32" c:type="guint"/>
+      </field>
+    </record>
+    <record name="PangoAttrClass" c:type="PangoAttrClass">
+      <field name="type">
+        <type name="AttrType" c:type="PangoAttrType"/>
+      </field>
+      <callback name="copy">
+        <return-value>
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </return-value>
+        <parameters>
+          <parameter name="attr">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="destroy">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="attr">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="equal">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="attr1">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+          <parameter name="attr2">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </callback>
+    </record>
+    <record name="PangoAttrString" c:type="PangoAttrString">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="value">
+        <type name="string" c:type="char*"/>
+      </field>
+    </record>
+    <record name="PangoAttrLanguage" c:type="PangoAttrLanguage">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="value">
+        <type name="Language" c:type="PangoLanguage*"/>
+      </field>
+    </record>
+    <record name="PangoAttrInt" c:type="PangoAttrInt">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="value">
+        <type name="int32" c:type="int"/>
+      </field>
+    </record>
+    <record name="PangoAttrSize" c:type="PangoAttrSize">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="size">
+        <type name="int32" c:type="int"/>
+      </field>
+      <field name="absolute">
+        <type name="uint32" c:type="guint"/>
+      </field>
+    </record>
+    <record name="PangoAttrFloat" c:type="PangoAttrFloat">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="value">
+        <type name="double" c:type="double"/>
+      </field>
+    </record>
+    <record name="PangoAttrColor" c:type="PangoAttrColor">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="color">
+        <type name="Color" c:type="PangoColor"/>
+      </field>
+    </record>
+    <record name="PangoAttrFontDesc" c:type="PangoAttrFontDesc">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="desc">
+        <type name="FontDescription" c:type="PangoFontDescription*"/>
+      </field>
+    </record>
+    <record name="PangoAttrShape" c:type="PangoAttrShape">
+      <field name="attr">
+        <type name="PangoAttribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="ink_rect">
+        <type name="PangoRectangle" c:type="PangoRectangle"/>
+      </field>
+      <field name="logical_rect">
+        <type name="PangoRectangle" c:type="PangoRectangle"/>
+      </field>
+      <field name="data">
+        <type name="any" c:type="gpointer"/>
+      </field>
+      <field name="copy_func">
+        <type name="PangoAttrDataCopyFunc" c:type="PangoAttrDataCopyFunc"/>
+      </field>
+      <field name="destroy_func">
+        <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+      </field>
+    </record>
+    <record name="PangoAttrIterator" c:type="PangoAttrIterator"/>
+    <enumeration name="AttrType"
+                 c:type="PangoAttrType"
+                 glib:type-name="PangoAttrType"
+                 glib:get-type="pango_attr_type_get_type">
+      <member name="invalid"
+              value="0"
+              c:identifier="PANGO_ATTR_INVALID"
+              glib:nick="invalid"/>
+      <member name="language"
+              value="1"
+              c:identifier="PANGO_ATTR_LANGUAGE"
+              glib:nick="language"/>
+      <member name="family"
+              value="2"
+              c:identifier="PANGO_ATTR_FAMILY"
+              glib:nick="family"/>
+      <member name="style"
+              value="3"
+              c:identifier="PANGO_ATTR_STYLE"
+              glib:nick="style"/>
+      <member name="weight"
+              value="4"
+              c:identifier="PANGO_ATTR_WEIGHT"
+              glib:nick="weight"/>
+      <member name="variant"
+              value="5"
+              c:identifier="PANGO_ATTR_VARIANT"
+              glib:nick="variant"/>
+      <member name="stretch"
+              value="6"
+              c:identifier="PANGO_ATTR_STRETCH"
+              glib:nick="stretch"/>
+      <member name="size"
+              value="7"
+              c:identifier="PANGO_ATTR_SIZE"
+              glib:nick="size"/>
+      <member name="font-desc"
+              value="8"
+              c:identifier="PANGO_ATTR_FONT_DESC"
+              glib:nick="font-desc"/>
+      <member name="foreground"
+              value="9"
+              c:identifier="PANGO_ATTR_FOREGROUND"
+              glib:nick="foreground"/>
+      <member name="background"
+              value="10"
+              c:identifier="PANGO_ATTR_BACKGROUND"
+              glib:nick="background"/>
+      <member name="underline"
+              value="11"
+              c:identifier="PANGO_ATTR_UNDERLINE"
+              glib:nick="underline"/>
+      <member name="strikethrough"
+              value="12"
+              c:identifier="PANGO_ATTR_STRIKETHROUGH"
+              glib:nick="strikethrough"/>
+      <member name="rise"
+              value="13"
+              c:identifier="PANGO_ATTR_RISE"
+              glib:nick="rise"/>
+      <member name="shape"
+              value="14"
+              c:identifier="PANGO_ATTR_SHAPE"
+              glib:nick="shape"/>
+      <member name="scale"
+              value="15"
+              c:identifier="PANGO_ATTR_SCALE"
+              glib:nick="scale"/>
+      <member name="fallback"
+              value="16"
+              c:identifier="PANGO_ATTR_FALLBACK"
+              glib:nick="fallback"/>
+      <member name="letter-spacing"
+              value="17"
+              c:identifier="PANGO_ATTR_LETTER_SPACING"
+              glib:nick="letter-spacing"/>
+      <member name="underline-color"
+              value="18"
+              c:identifier="PANGO_ATTR_UNDERLINE_COLOR"
+              glib:nick="underline-color"/>
+      <member name="strikethrough-color"
+              value="19"
+              c:identifier="PANGO_ATTR_STRIKETHROUGH_COLOR"
+              glib:nick="strikethrough-color"/>
+      <member name="absolute-size"
+              value="20"
+              c:identifier="PANGO_ATTR_ABSOLUTE_SIZE"
+              glib:nick="absolute-size"/>
+      <member name="gravity"
+              value="21"
+              c:identifier="PANGO_ATTR_GRAVITY"
+              glib:nick="gravity"/>
+      <member name="gravity-hint"
+              value="22"
+              c:identifier="PANGO_ATTR_GRAVITY_HINT"
+              glib:nick="gravity-hint"/>
+    </enumeration>
+    <enumeration name="Underline"
+                 c:type="PangoUnderline"
+                 glib:type-name="PangoUnderline"
+                 glib:get-type="pango_underline_get_type">
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_UNDERLINE_NONE"
+              glib:nick="none"/>
+      <member name="single"
+              value="1"
+              c:identifier="PANGO_UNDERLINE_SINGLE"
+              glib:nick="single"/>
+      <member name="double"
+              value="2"
+              c:identifier="PANGO_UNDERLINE_DOUBLE"
+              glib:nick="double"/>
+      <member name="low"
+              value="3"
+              c:identifier="PANGO_UNDERLINE_LOW"
+              glib:nick="low"/>
+      <member name="error"
+              value="4"
+              c:identifier="PANGO_UNDERLINE_ERROR"
+              glib:nick="error"/>
+    </enumeration>
+    <callback name="PangoAttrFilterFunc">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="attribute">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <callback name="PangoAttrDataCopyFunc">
+      <return-value>
+        <type name="any" c:type="gpointer"/>
+      </return-value>
+      <parameters>
+        <parameter name="data">
+          <type name="any" c:type="gconstpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="attr_type_register"
+              c:identifier="pango_attr_type_register">
+      <return-value>
+        <type name="AttrType" c:type="PangoAttrType"/>
+      </return-value>
+      <parameters>
+        <parameter name="name">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attribute_init" c:identifier="pango_attribute_init">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="attr">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+        <parameter name="klass">
+          <type name="PangoAttrClass" c:type="PangoAttrClass*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attribute_copy" c:identifier="pango_attribute_copy">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="attr">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attribute_destroy" c:identifier="pango_attribute_destroy">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="attr">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attribute_equal" c:identifier="pango_attribute_equal">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="attr1">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+        <parameter name="attr2">
+          <type name="PangoAttribute" c:type="PangoAttribute*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_language_new" c:identifier="pango_attr_language_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="language">
+          <type name="Language" c:type="PangoLanguage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_family_new" c:identifier="pango_attr_family_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="family">
+          <type name="string" c:type="char*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_foreground_new"
+              c:identifier="pango_attr_foreground_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="red">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="green">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="blue">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_background_new"
+              c:identifier="pango_attr_background_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="red">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="green">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="blue">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_size_new" c:identifier="pango_attr_size_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="size">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_size_new_absolute"
+              c:identifier="pango_attr_size_new_absolute">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="size">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_style_new" c:identifier="pango_attr_style_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="style">
+          <type name="Style" c:type="PangoStyle"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_weight_new" c:identifier="pango_attr_weight_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="weight">
+          <type name="Weight" c:type="PangoWeight"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_variant_new" c:identifier="pango_attr_variant_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="variant">
+          <type name="Variant" c:type="PangoVariant"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_stretch_new" c:identifier="pango_attr_stretch_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="stretch">
+          <type name="Stretch" c:type="PangoStretch"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_font_desc_new"
+              c:identifier="pango_attr_font_desc_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="desc">
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_underline_new"
+              c:identifier="pango_attr_underline_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="underline">
+          <type name="Underline" c:type="PangoUnderline"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_underline_color_new"
+              c:identifier="pango_attr_underline_color_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="red">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="green">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="blue">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_strikethrough_new"
+              c:identifier="pango_attr_strikethrough_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="strikethrough">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_strikethrough_color_new"
+              c:identifier="pango_attr_strikethrough_color_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="red">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="green">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="blue">
+          <type name="uint16" c:type="guint16"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_rise_new" c:identifier="pango_attr_rise_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="rise">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_scale_new" c:identifier="pango_attr_scale_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="scale_factor">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_fallback_new" c:identifier="pango_attr_fallback_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="enable_fallback">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_letter_spacing_new"
+              c:identifier="pango_attr_letter_spacing_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="letter_spacing">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_shape_new" c:identifier="pango_attr_shape_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="ink_rect">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+        <parameter name="logical_rect">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_shape_new_with_data"
+              c:identifier="pango_attr_shape_new_with_data">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="ink_rect">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+        <parameter name="logical_rect">
+          <type name="PangoRectangle" c:type="PangoRectangle*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="copy_func">
+          <type name="PangoAttrDataCopyFunc" c:type="PangoAttrDataCopyFunc"/>
+        </parameter>
+        <parameter name="destroy_func">
+          <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_gravity_new" c:identifier="pango_attr_gravity_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="gravity">
+          <type name="Gravity" c:type="PangoGravity"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_gravity_hint_new"
+              c:identifier="pango_attr_gravity_hint_new">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="hint">
+          <type name="GravityHint" c:type="PangoGravityHint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <glib:boxed c:type="AttrList"
+                glib:name="AttrList"
+                glib:type-name="PangoAttrList"
+                glib:get-type="pango_attr_list_get_type">
+      <constructor name="new" c:identifier="pango_attr_list_new">
+        <return-value>
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </return-value>
+      </constructor>
+      <constructor name="ref" c:identifier="pango_attr_list_ref">
+        <return-value>
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="copy" c:identifier="pango_attr_list_copy">
+        <return-value>
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="filter" c:identifier="pango_attr_list_filter">
+        <return-value>
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="func">
+            <type name="PangoAttrFilterFunc" c:type="PangoAttrFilterFunc"/>
+          </parameter>
+          <parameter name="data">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="unref" c:identifier="pango_attr_list_unref">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="insert" c:identifier="pango_attr_list_insert">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="attr">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="insert_before"
+              c:identifier="pango_attr_list_insert_before">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="attr">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="change" c:identifier="pango_attr_list_change">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="attr">
+            <type name="PangoAttribute" c:type="PangoAttribute*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="splice" c:identifier="pango_attr_list_splice">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="other">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+          <parameter name="pos">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+          <parameter name="len">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_iterator" c:identifier="pango_attr_list_get_iterator">
+        <return-value>
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </return-value>
+        <parameters>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <function name="attr_iterator_range"
+              c:identifier="pango_attr_iterator_range">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+        <parameter name="start">
+          <type name="GLib.gint" c:type="gint*"/>
+        </parameter>
+        <parameter name="end">
+          <type name="GLib.gint" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_next"
+              c:identifier="pango_attr_iterator_next">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_copy"
+              c:identifier="pango_attr_iterator_copy">
+      <return-value>
+        <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_destroy"
+              c:identifier="pango_attr_iterator_destroy">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_get" c:identifier="pango_attr_iterator_get">
+      <return-value>
+        <type name="PangoAttribute" c:type="PangoAttribute*"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+        <parameter name="type">
+          <type name="AttrType" c:type="PangoAttrType"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_get_font"
+              c:identifier="pango_attr_iterator_get_font">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+        <parameter name="desc">
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </parameter>
+        <parameter name="language">
+          <type name="Language" c:type="PangoLanguage**"/>
+        </parameter>
+        <parameter name="extra_attrs">
+          <type name="GLib.GSList" c:type="GSList**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="attr_iterator_get_attrs"
+              c:identifier="pango_attr_iterator_get_attrs">
+      <return-value>
+        <type name="GLib.GSList" c:type="GSList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="iterator">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_markup" c:identifier="pango_parse_markup">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="markup_text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="accel_marker">
+          <type name="GLib.gunichar" c:type="gunichar"/>
+        </parameter>
+        <parameter name="attr_list">
+          <type name="AttrList" c:type="PangoAttrList**"/>
+        </parameter>
+        <parameter name="text">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="accel_char">
+          <type name="GLib.gunichar" c:type="gunichar*"/>
+        </parameter>
+        <parameter name="error">
+          <type name="GLib.GError" c:type="GError**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <record name="PangoAnalysis" c:type="PangoAnalysis">
+      <field name="shape_engine">
+        <type name="PangoEngineShape" c:type="PangoEngineShape*"/>
+      </field>
+      <field name="lang_engine">
+        <type name="PangoEngineLang" c:type="PangoEngineLang*"/>
+      </field>
+      <field name="font">
+        <type name="Font" c:type="PangoFont*"/>
+      </field>
+      <field name="level">
+        <type name="uint8" c:type="guint8"/>
+      </field>
+      <field name="gravity">
+        <type name="uint8" c:type="guint8"/>
+      </field>
+      <field name="flags">
+        <type name="uint8" c:type="guint8"/>
+      </field>
+      <field name="script">
+        <type name="uint8" c:type="guint8"/>
+      </field>
+      <field name="language">
+        <type name="Language" c:type="PangoLanguage*"/>
+      </field>
+      <field name="extra_attrs">
+        <type name="GLib.GSList" c:type="GSList*"/>
+      </field>
+    </record>
+    <glib:boxed c:type="Item"
+                glib:name="Item"
+                glib:type-name="PangoItem"
+                glib:get-type="pango_item_get_type">
+      <constructor name="new" c:identifier="pango_item_new">
+        <return-value>
+          <type name="Item" c:type="PangoItem*"/>
+        </return-value>
+      </constructor>
+      <constructor name="copy" c:identifier="pango_item_copy">
+        <return-value>
+          <type name="Item" c:type="PangoItem*"/>
+        </return-value>
+        <parameters>
+          <parameter name="item">
+            <type name="Item" c:type="PangoItem*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="split" c:identifier="pango_item_split">
+        <return-value>
+          <type name="Item" c:type="PangoItem*"/>
+        </return-value>
+        <parameters>
+          <parameter name="orig">
+            <type name="Item" c:type="PangoItem*"/>
+          </parameter>
+          <parameter name="split_index">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="split_offset">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_item_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="item">
+            <type name="Item" c:type="PangoItem*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <function name="break" c:identifier="pango_break">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="analysis">
+          <type name="PangoAnalysis" c:type="PangoAnalysis*"/>
+        </parameter>
+        <parameter name="attrs">
+          <type name="PangoLogAttr" c:type="PangoLogAttr*"/>
+        </parameter>
+        <parameter name="attrs_len">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="find_paragraph_boundary"
+              c:identifier="pango_find_paragraph_boundary">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="paragraph_delimiter_index">
+          <type name="GLib.gint" c:type="gint*"/>
+        </parameter>
+        <parameter name="next_paragraph_start">
+          <type name="GLib.gint" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="get_log_attrs" c:identifier="pango_get_log_attrs">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="level">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="language">
+          <type name="Language" c:type="PangoLanguage*"/>
+        </parameter>
+        <parameter name="log_attrs">
+          <type name="PangoLogAttr" c:type="PangoLogAttr*"/>
+        </parameter>
+        <parameter name="attrs_len">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <class name="Fontset"
+           c:type="PangoFontset"
+           parent="GObject.Object"
+           glib:type-name="PangoFontset"
+           glib:get-type="pango_fontset_get_type">
+      <method name="get_font" c:identifier="pango_fontset_get_font">
+        <return-value>
+          <type name="Font" c:type="PangoFont*"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontset">
+            <type name="Fontset" c:type="PangoFontset*"/>
+          </parameter>
+          <parameter name="wc">
+            <type name="uint32" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_metrics" c:identifier="pango_fontset_get_metrics">
+        <return-value>
+          <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontset">
+            <type name="Fontset" c:type="PangoFontset*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="foreach" c:identifier="pango_fontset_foreach">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontset">
+            <type name="Fontset" c:type="PangoFontset*"/>
+          </parameter>
+          <parameter name="func">
+            <type name="PangoFontsetForeachFunc"
+                  c:type="PangoFontsetForeachFunc"/>
+          </parameter>
+          <parameter name="data">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <record name="PangoFontset" c:type="PangoFontset"/>
+    <callback name="PangoFontsetForeachFunc">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontset">
+          <type name="Fontset" c:type="PangoFontset*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="Font" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <class name="FontMap"
+           c:type="PangoFontMap"
+           parent="GObject.Object"
+           glib:type-name="PangoFontMap"
+           glib:get-type="pango_font_map_get_type">
+      <method name="load_fontset" c:identifier="pango_font_map_load_fontset">
+        <return-value>
+          <type name="Fontset" c:type="PangoFontset*"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFontMap*"/>
+          </parameter>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="list_families" c:identifier="pango_font_map_list_families">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFontMap*"/>
+          </parameter>
+          <parameter name="families">
+            <type name="FontFamily" c:type="PangoFontFamily***"/>
+          </parameter>
+          <parameter name="n_families">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <class name="Context"
+           c:type="PangoContext"
+           parent="GObject.Object"
+           glib:type-name="PangoContext"
+           glib:get-type="pango_context_get_type">
+      <method name="get_font_map" c:identifier="pango_context_get_font_map">
+        <return-value>
+          <type name="FontMap" c:type="PangoFontMap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="list_families" c:identifier="pango_context_list_families">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="families">
+            <type name="FontFamily" c:type="PangoFontFamily***"/>
+          </parameter>
+          <parameter name="n_families">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="load_font" c:identifier="pango_context_load_font">
+        <return-value>
+          <type name="Font" c:type="PangoFont*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="load_fontset" c:identifier="pango_context_load_fontset">
+        <return-value>
+          <type name="Fontset" c:type="PangoFontset*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_metrics" c:identifier="pango_context_get_metrics">
+        <return-value>
+          <type name="FontMetrics" c:type="PangoFontMetrics*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_font_description"
+              c:identifier="pango_context_set_font_description">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_font_description"
+              c:identifier="pango_context_get_font_description">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_language" c:identifier="pango_context_get_language">
+        <return-value>
+          <type name="Language" c:type="PangoLanguage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_language" c:identifier="pango_context_set_language">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="language">
+            <type name="Language" c:type="PangoLanguage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_base_dir" c:identifier="pango_context_set_base_dir">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="direction">
+            <type name="Direction" c:type="PangoDirection"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_base_dir" c:identifier="pango_context_get_base_dir">
+        <return-value>
+          <type name="Direction" c:type="PangoDirection"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_base_gravity"
+              c:identifier="pango_context_set_base_gravity">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="gravity">
+            <type name="Gravity" c:type="PangoGravity"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_base_gravity"
+              c:identifier="pango_context_get_base_gravity">
+        <return-value>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_gravity" c:identifier="pango_context_get_gravity">
+        <return-value>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_gravity_hint"
+              c:identifier="pango_context_set_gravity_hint">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="hint">
+            <type name="GravityHint" c:type="PangoGravityHint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_gravity_hint"
+              c:identifier="pango_context_get_gravity_hint">
+        <return-value>
+          <type name="GravityHint" c:type="PangoGravityHint"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_matrix" c:identifier="pango_context_set_matrix">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_matrix" c:identifier="pango_context_get_matrix">
+        <return-value>
+          <type name="Matrix" c:type="PangoMatrix*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <function name="itemize" c:identifier="pango_itemize">
+      <return-value>
+        <type name="GLib.GList" c:type="GList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="Context" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="start_index">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="attrs">
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </parameter>
+        <parameter name="cached_iter">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="itemize_with_base_dir"
+              c:identifier="pango_itemize_with_base_dir">
+      <return-value>
+        <type name="GLib.GList" c:type="GList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="Context" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="base_dir">
+          <type name="Direction" c:type="PangoDirection"/>
+        </parameter>
+        <parameter name="text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="start_index">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="attrs">
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </parameter>
+        <parameter name="cached_iter">
+          <type name="PangoAttrIterator" c:type="PangoAttrIterator*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <record name="PangoGlyphGeometry" c:type="PangoGlyphGeometry">
+      <field name="width">
+        <type name="PangoGlyphUnit" c:type="PangoGlyphUnit"/>
+      </field>
+      <field name="x_offset">
+        <type name="PangoGlyphUnit" c:type="PangoGlyphUnit"/>
+      </field>
+      <field name="y_offset">
+        <type name="PangoGlyphUnit" c:type="PangoGlyphUnit"/>
+      </field>
+    </record>
+    <record name="PangoGlyphVisAttr" c:type="PangoGlyphVisAttr">
+      <field name="is_cluster_start">
+        <type name="uint32" c:type="guint"/>
+      </field>
+    </record>
+    <record name="PangoGlyphInfo" c:type="PangoGlyphInfo">
+      <field name="glyph">
+        <type name="PangoGlyph" c:type="PangoGlyph"/>
+      </field>
+      <field name="geometry">
+        <type name="PangoGlyphGeometry" c:type="PangoGlyphGeometry"/>
+      </field>
+      <field name="attr">
+        <type name="PangoGlyphVisAttr" c:type="PangoGlyphVisAttr"/>
+      </field>
+    </record>
+    <function name="glyph_string_new" c:identifier="pango_glyph_string_new">
+      <return-value>
+        <type name="GlyphString" c:type="PangoGlyphString*"/>
+      </return-value>
+    </function>
+    <function name="glyph_string_set_size"
+              c:identifier="pango_glyph_string_set_size">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="string">
+          <type name="GlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="new_len">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <glib:boxed c:type="GlyphString"
+                glib:name="GlyphString"
+                glib:type-name="PangoGlyphString"
+                glib:get-type="pango_glyph_string_get_type">
+      <constructor name="copy" c:identifier="pango_glyph_string_copy">
+        <return-value>
+          <type name="GlyphString" c:type="PangoGlyphString*"/>
+        </return-value>
+        <parameters>
+          <parameter name="string">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_glyph_string_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="string">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="extents" c:identifier="pango_glyph_string_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_width" c:identifier="pango_glyph_string_get_width">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="extents_range"
+              c:identifier="pango_glyph_string_extents_range">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="start">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="end">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_logical_widths"
+              c:identifier="pango_glyph_string_get_logical_widths">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="embedding_level">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="logical_widths">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="index_to_x" c:identifier="pango_glyph_string_index_to_x">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="analysis">
+            <type name="PangoAnalysis" c:type="PangoAnalysis*"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="x_pos">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="x_to_index" c:identifier="pango_glyph_string_x_to_index">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="analysis">
+            <type name="PangoAnalysis" c:type="PangoAnalysis*"/>
+          </parameter>
+          <parameter name="x_pos">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <function name="shape" c:identifier="pango_shape">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="analysis">
+          <type name="PangoAnalysis" c:type="PangoAnalysis*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="GlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="reorder_items" c:identifier="pango_reorder_items">
+      <return-value>
+        <type name="GLib.GList" c:type="GList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="logical_items">
+          <type name="GLib.GList" c:type="GList*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <enumeration name="Alignment"
+                 c:type="PangoAlignment"
+                 glib:type-name="PangoAlignment"
+                 glib:get-type="pango_alignment_get_type">
+      <member name="left"
+              value="0"
+              c:identifier="PANGO_ALIGN_LEFT"
+              glib:nick="left"/>
+      <member name="center"
+              value="1"
+              c:identifier="PANGO_ALIGN_CENTER"
+              glib:nick="center"/>
+      <member name="right"
+              value="2"
+              c:identifier="PANGO_ALIGN_RIGHT"
+              glib:nick="right"/>
+    </enumeration>
+    <enumeration name="WrapMode"
+                 c:type="PangoWrapMode"
+                 glib:type-name="PangoWrapMode"
+                 glib:get-type="pango_wrap_mode_get_type">
+      <member name="word"
+              value="0"
+              c:identifier="PANGO_WRAP_WORD"
+              glib:nick="word"/>
+      <member name="char"
+              value="1"
+              c:identifier="PANGO_WRAP_CHAR"
+              glib:nick="char"/>
+      <member name="word-char"
+              value="2"
+              c:identifier="PANGO_WRAP_WORD_CHAR"
+              glib:nick="word-char"/>
+    </enumeration>
+    <enumeration name="EllipsizeMode"
+                 c:type="PangoEllipsizeMode"
+                 glib:type-name="PangoEllipsizeMode"
+                 glib:get-type="pango_ellipsize_mode_get_type">
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_ELLIPSIZE_NONE"
+              glib:nick="none"/>
+      <member name="start"
+              value="1"
+              c:identifier="PANGO_ELLIPSIZE_START"
+              glib:nick="start"/>
+      <member name="middle"
+              value="2"
+              c:identifier="PANGO_ELLIPSIZE_MIDDLE"
+              glib:nick="middle"/>
+      <member name="end"
+              value="3"
+              c:identifier="PANGO_ELLIPSIZE_END"
+              glib:nick="end"/>
+    </enumeration>
+    <enumeration name="RenderPart"
+                 c:type="PangoRenderPart"
+                 glib:type-name="PangoRenderPart"
+                 glib:get-type="pango_render_part_get_type">
+      <member name="foreground"
+              value="0"
+              c:identifier="PANGO_RENDER_PART_FOREGROUND"
+              glib:nick="foreground"/>
+      <member name="background"
+              value="1"
+              c:identifier="PANGO_RENDER_PART_BACKGROUND"
+              glib:nick="background"/>
+      <member name="underline"
+              value="2"
+              c:identifier="PANGO_RENDER_PART_UNDERLINE"
+              glib:nick="underline"/>
+      <member name="strikethrough"
+              value="3"
+              c:identifier="PANGO_RENDER_PART_STRIKETHROUGH"
+              glib:nick="strikethrough"/>
+    </enumeration>
+    <enumeration name="TabAlign"
+                 c:type="PangoTabAlign"
+                 glib:type-name="PangoTabAlign"
+                 glib:get-type="pango_tab_align_get_type">
+      <member name="left"
+              value="0"
+              c:identifier="PANGO_TAB_LEFT"
+              glib:nick="left"/>
+    </enumeration>
+    <glib:boxed c:type="GlyphItem"
+                glib:name="GlyphItem"
+                glib:type-name="PangoGlyphItem"
+                glib:get-type="pango_glyph_item_get_type">
+      <constructor name="split" c:identifier="pango_glyph_item_split">
+        <return-value>
+          <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+        </return-value>
+        <parameters>
+          <parameter name="orig">
+            <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="split_index">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="copy" c:identifier="pango_glyph_item_copy">
+        <return-value>
+          <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+        </return-value>
+        <parameters>
+          <parameter name="orig">
+            <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_glyph_item_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyph_item">
+            <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="apply_attrs" c:identifier="pango_glyph_item_apply_attrs">
+        <return-value>
+          <type name="GLib.GSList" c:type="GSList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyph_item">
+            <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="list">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="letter_space" c:identifier="pango_glyph_item_letter_space">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="glyph_item">
+            <type name="GlyphItem" c:type="PangoGlyphItem*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="log_attrs">
+            <type name="PangoLogAttr" c:type="PangoLogAttr*"/>
+          </parameter>
+          <parameter name="letter_spacing">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <function name="tab_array_new" c:identifier="pango_tab_array_new">
+      <return-value>
+        <type name="TabArray" c:type="PangoTabArray*"/>
+      </return-value>
+      <parameters>
+        <parameter name="initial_size">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="positions_in_pixels">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tab_array_new_with_positions"
+              c:identifier="pango_tab_array_new_with_positions">
+      <return-value>
+        <type name="TabArray" c:type="PangoTabArray*"/>
+      </return-value>
+      <parameters>
+        <parameter name="size">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="positions_in_pixels">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="first_alignment">
+          <type name="TabAlign" c:type="PangoTabAlign"/>
+        </parameter>
+        <parameter name="first_position">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <glib:boxed c:type="TabArray"
+                glib:name="TabArray"
+                glib:type-name="PangoTabArray"
+                glib:get-type="pango_tab_array_get_type">
+      <constructor name="copy" c:identifier="pango_tab_array_copy">
+        <return-value>
+          <type name="TabArray" c:type="PangoTabArray*"/>
+        </return-value>
+        <parameters>
+          <parameter name="src">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_tab_array_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_size" c:identifier="pango_tab_array_get_size">
+        <return-value>
+          <type name="int32" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="resize" c:identifier="pango_tab_array_resize">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+          <parameter name="new_size">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_tab" c:identifier="pango_tab_array_set_tab">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+          <parameter name="tab_index">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+          <parameter name="alignment">
+            <type name="TabAlign" c:type="PangoTabAlign"/>
+          </parameter>
+          <parameter name="location">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_tab" c:identifier="pango_tab_array_get_tab">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+          <parameter name="tab_index">
+            <type name="int32" c:type="gint"/>
+          </parameter>
+          <parameter name="alignment">
+            <type name="TabAlign" c:type="PangoTabAlign*"/>
+          </parameter>
+          <parameter name="location">
+            <type name="GLib.gint" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_tabs" c:identifier="pango_tab_array_get_tabs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+          <parameter name="alignments">
+            <type name="TabAlign" c:type="PangoTabAlign**"/>
+          </parameter>
+          <parameter name="locations">
+            <type name="GLib.gint" c:type="gint**"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_positions_in_pixels"
+              c:identifier="pango_tab_array_get_positions_in_pixels">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="tab_array">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <class name="Layout"
+           c:type="PangoLayout"
+           parent="GObject.Object"
+           glib:type-name="PangoLayout"
+           glib:get-type="pango_layout_get_type">
+      <constructor name="new" c:identifier="pango_layout_new">
+        <return-value>
+          <type name="Layout" c:type="PangoLayout*"/>
+        </return-value>
+        <parameters>
+          <parameter name="context">
+            <type name="Context" c:type="PangoContext*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="copy" c:identifier="pango_layout_copy">
+        <return-value>
+          <type name="Layout" c:type="PangoLayout*"/>
+        </return-value>
+        <parameters>
+          <parameter name="src">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="iter_get_layout"
+                   c:identifier="pango_layout_iter_get_layout">
+        <return-value>
+          <type name="Layout" c:type="PangoLayout*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="get_context" c:identifier="pango_layout_get_context">
+        <return-value>
+          <type name="Context" c:type="PangoContext*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_attributes" c:identifier="pango_layout_set_attributes">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="attrs">
+            <type name="AttrList" c:type="PangoAttrList*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_attributes" c:identifier="pango_layout_get_attributes">
+        <return-value>
+          <type name="AttrList" c:type="PangoAttrList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_text" c:identifier="pango_layout_set_text">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="text">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_text" c:identifier="pango_layout_get_text">
+        <return-value>
+          <type name="string" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_markup" c:identifier="pango_layout_set_markup">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="markup">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_markup_with_accel"
+              c:identifier="pango_layout_set_markup_with_accel">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="markup">
+            <type name="string" c:type="char*"/>
+          </parameter>
+          <parameter name="length">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="accel_marker">
+            <type name="GLib.gunichar" c:type="gunichar"/>
+          </parameter>
+          <parameter name="accel_char">
+            <type name="GLib.gunichar" c:type="gunichar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_font_description"
+              c:identifier="pango_layout_set_font_description">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="desc">
+            <type name="FontDescription" c:type="PangoFontDescription*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_font_description"
+              c:identifier="pango_layout_get_font_description">
+        <return-value>
+          <type name="FontDescription" c:type="PangoFontDescription*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_width" c:identifier="pango_layout_set_width">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_width" c:identifier="pango_layout_get_width">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_height" c:identifier="pango_layout_set_height">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_height" c:identifier="pango_layout_get_height">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_wrap" c:identifier="pango_layout_set_wrap">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="wrap">
+            <type name="WrapMode" c:type="PangoWrapMode"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_wrap" c:identifier="pango_layout_get_wrap">
+        <return-value>
+          <type name="WrapMode" c:type="PangoWrapMode"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="is_wrapped" c:identifier="pango_layout_is_wrapped">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_indent" c:identifier="pango_layout_set_indent">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="indent">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_indent" c:identifier="pango_layout_get_indent">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_spacing" c:identifier="pango_layout_set_spacing">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="spacing">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_spacing" c:identifier="pango_layout_get_spacing">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_justify" c:identifier="pango_layout_set_justify">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="justify">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_justify" c:identifier="pango_layout_get_justify">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_auto_dir" c:identifier="pango_layout_set_auto_dir">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="auto_dir">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_auto_dir" c:identifier="pango_layout_get_auto_dir">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_alignment" c:identifier="pango_layout_set_alignment">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="alignment">
+            <type name="Alignment" c:type="PangoAlignment"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_alignment" c:identifier="pango_layout_get_alignment">
+        <return-value>
+          <type name="Alignment" c:type="PangoAlignment"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_tabs" c:identifier="pango_layout_set_tabs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="tabs">
+            <type name="TabArray" c:type="PangoTabArray*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_tabs" c:identifier="pango_layout_get_tabs">
+        <return-value>
+          <type name="TabArray" c:type="PangoTabArray*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_single_paragraph_mode"
+              c:identifier="pango_layout_set_single_paragraph_mode">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="setting">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_single_paragraph_mode"
+              c:identifier="pango_layout_get_single_paragraph_mode">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_ellipsize" c:identifier="pango_layout_set_ellipsize">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="ellipsize">
+            <type name="EllipsizeMode" c:type="PangoEllipsizeMode"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_ellipsize" c:identifier="pango_layout_get_ellipsize">
+        <return-value>
+          <type name="EllipsizeMode" c:type="PangoEllipsizeMode"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="is_ellipsized" c:identifier="pango_layout_is_ellipsized">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_unknown_glyphs_count"
+              c:identifier="pango_layout_get_unknown_glyphs_count">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="context_changed"
+              c:identifier="pango_layout_context_changed">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_log_attrs" c:identifier="pango_layout_get_log_attrs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="attrs">
+            <type name="PangoLogAttr" c:type="PangoLogAttr**"/>
+          </parameter>
+          <parameter name="n_attrs">
+            <type name="GLib.gint" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="index_to_pos" c:identifier="pango_layout_index_to_pos">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="pos">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="index_to_line_x"
+              c:identifier="pango_layout_index_to_line_x">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="line">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="x_pos">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_cursor_pos" c:identifier="pango_layout_get_cursor_pos">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="strong_pos">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="weak_pos">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="move_cursor_visually"
+              c:identifier="pango_layout_move_cursor_visually">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="strong">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="old_index">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="old_trailing">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="direction">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="new_index">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="new_trailing">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="xy_to_index" c:identifier="pango_layout_xy_to_index">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_extents" c:identifier="pango_layout_get_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_pixel_extents"
+              c:identifier="pango_layout_get_pixel_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_size" c:identifier="pango_layout_get_size">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_pixel_size" c:identifier="pango_layout_get_pixel_size">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line_count" c:identifier="pango_layout_get_line_count">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line" c:identifier="pango_layout_get_line">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="line">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line_readonly"
+              c:identifier="pango_layout_get_line_readonly">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="line">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_lines" c:identifier="pango_layout_get_lines">
+        <return-value>
+          <type name="GLib.GSList" c:type="GSList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_lines_readonly"
+              c:identifier="pango_layout_get_lines_readonly">
+        <return-value>
+          <type name="GLib.GSList" c:type="GSList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_iter" c:identifier="pango_layout_get_iter">
+        <return-value>
+          <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <glib:boxed c:type="LayoutLine"
+                glib:name="LayoutLine"
+                glib:type-name="PangoLayoutLine"
+                glib:get-type="pango_layout_line_get_type">
+      <constructor name="ref" c:identifier="pango_layout_line_ref">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="unref" c:identifier="pango_layout_line_unref">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="x_to_index" c:identifier="pango_layout_line_x_to_index">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="x_pos">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="index_to_x" c:identifier="pango_layout_line_index_to_x">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="index_">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="trailing">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="x_pos">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_x_ranges"
+              c:identifier="pango_layout_line_get_x_ranges">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="start_index">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="end_index">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="ranges">
+            <type name="int" c:type="int**"/>
+          </parameter>
+          <parameter name="n_ranges">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_extents" c:identifier="pango_layout_line_get_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_pixel_extents"
+              c:identifier="pango_layout_line_get_pixel_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="layout_line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <glib:boxed c:type="LayoutIter"
+                glib:name="LayoutIter"
+                glib:type-name="PangoLayoutIter"
+                glib:get-type="pango_layout_iter_get_type">
+      <constructor name="copy" c:identifier="pango_layout_iter_copy">
+        <return-value>
+          <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="pango_layout_iter_free">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_index" c:identifier="pango_layout_iter_get_index">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_run" c:identifier="pango_layout_iter_get_run">
+        <return-value>
+          <type name="PangoLayoutRun" c:type="PangoLayoutRun*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_run_readonly"
+              c:identifier="pango_layout_iter_get_run_readonly">
+        <return-value>
+          <type name="PangoLayoutRun" c:type="PangoLayoutRun*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line" c:identifier="pango_layout_iter_get_line">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line_readonly"
+              c:identifier="pango_layout_iter_get_line_readonly">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="at_last_line"
+              c:identifier="pango_layout_iter_at_last_line">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="next_char" c:identifier="pango_layout_iter_next_char">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="next_cluster"
+              c:identifier="pango_layout_iter_next_cluster">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="next_run" c:identifier="pango_layout_iter_next_run">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="next_line" c:identifier="pango_layout_iter_next_line">
+        <return-value>
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_char_extents"
+              c:identifier="pango_layout_iter_get_char_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_cluster_extents"
+              c:identifier="pango_layout_iter_get_cluster_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_run_extents"
+              c:identifier="pango_layout_iter_get_run_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line_extents"
+              c:identifier="pango_layout_iter_get_line_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_line_yrange"
+              c:identifier="pango_layout_iter_get_line_yrange">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="y0_">
+            <type name="int" c:type="int*"/>
+          </parameter>
+          <parameter name="y1_">
+            <type name="int" c:type="int*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_layout_extents"
+              c:identifier="pango_layout_iter_get_layout_extents">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+          <parameter name="ink_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+          <parameter name="logical_rect">
+            <type name="PangoRectangle" c:type="PangoRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_baseline"
+              c:identifier="pango_layout_iter_get_baseline">
+        <return-value>
+          <type name="int32" c:type="int"/>
+        </return-value>
+        <parameters>
+          <parameter name="iter">
+            <type name="LayoutIter" c:type="PangoLayoutIter*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </glib:boxed>
+    <record name="PangoRendererPrivate" c:type="PangoRendererPrivate"/>
+    <class name="Renderer"
+           c:type="PangoRenderer"
+           parent="GObject.Object"
+           glib:type-name="PangoRenderer"
+           glib:get-type="pango_renderer_get_type">
+      <method name="draw_layout" c:identifier="pango_renderer_draw_layout">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="layout">
+            <type name="Layout" c:type="PangoLayout*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_layout_line"
+              c:identifier="pango_renderer_draw_layout_line">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="line">
+            <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_glyphs" c:identifier="pango_renderer_draw_glyphs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_rectangle"
+              c:identifier="pango_renderer_draw_rectangle">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_error_underline"
+              c:identifier="pango_renderer_draw_error_underline">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_trapezoid"
+              c:identifier="pango_renderer_draw_trapezoid">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="y1_">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x11">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x21">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="y2">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x12">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x22">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="draw_glyph" c:identifier="pango_renderer_draw_glyph">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="glyph">
+            <type name="PangoGlyph" c:type="PangoGlyph"/>
+          </parameter>
+          <parameter name="x">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="y">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="activate" c:identifier="pango_renderer_activate">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="deactivate" c:identifier="pango_renderer_deactivate">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="part_changed" c:identifier="pango_renderer_part_changed">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_color" c:identifier="pango_renderer_set_color">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="color">
+            <type name="Color" c:type="PangoColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_color" c:identifier="pango_renderer_get_color">
+        <return-value>
+          <type name="Color" c:type="PangoColor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_matrix" c:identifier="pango_renderer_set_matrix">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="matrix">
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_matrix" c:identifier="pango_renderer_get_matrix">
+        <return-value>
+          <type name="Matrix" c:type="PangoMatrix*"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_layout" c:identifier="pango_renderer_get_layout">
+        <return-value>
+          <type name="Layout" c:type="PangoLayout*"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_layout_line"
+              c:identifier="pango_renderer_get_layout_line">
+        <return-value>
+          <type name="LayoutLine" c:type="PangoLayoutLine*"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <callback name="draw_glyphs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="glyphs">
+            <type name="GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="draw_rectangle">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="draw_error_underline">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="width">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="height">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="draw_shape">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="attr">
+            <type name="PangoAttrShape" c:type="PangoAttrShape*"/>
+          </parameter>
+          <parameter name="x">
+            <type name="int32" c:type="int"/>
+          </parameter>
+          <parameter name="y">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="draw_trapezoid">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="y1_">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x11">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x21">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="y2">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x12">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="x22">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="draw_glyph">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="font">
+            <type name="Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="glyph">
+            <type name="PangoGlyph" c:type="PangoGlyph"/>
+          </parameter>
+          <parameter name="x">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="y">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="part_changed">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="begin">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="end">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="prepare_run">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="renderer">
+            <type name="Renderer" c:type="PangoRenderer*"/>
+          </parameter>
+          <parameter name="run">
+            <type name="PangoLayoutRun" c:type="PangoLayoutRun*"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="_pango_reserved1">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+      </callback>
+      <callback name="_pango_reserved2">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+      </callback>
+      <callback name="_pango_reserved3">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+      </callback>
+      <callback name="_pango_reserved4">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+      </callback>
+    </class>
+    <function name="split_file_list" c:identifier="pango_split_file_list">
+      <return-value>
+        <type name="char" c:type="char**"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="trim_string" c:identifier="pango_trim_string">
+      <return-value>
+        <type name="string" c:type="char*"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="read_line" c:identifier="pango_read_line">
+      <return-value>
+        <type name="int32" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="stream">
+          <type name="FILE" c:type="FILE*"/>
+        </parameter>
+        <parameter name="str">
+          <type name="GLib.GString" c:type="GString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="skip_space" c:identifier="pango_skip_space">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="pos">
+          <type name="char" c:type="char**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="scan_word" c:identifier="pango_scan_word">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="pos">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="out">
+          <type name="GLib.GString" c:type="GString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="scan_string" c:identifier="pango_scan_string">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="pos">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="out">
+          <type name="GLib.GString" c:type="GString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="scan_int" c:identifier="pango_scan_int">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="pos">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="out">
+          <type name="int" c:type="int*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_enum" c:identifier="pango_parse_enum">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="type">
+          <type name="GObject.GType" c:type="GType"/>
+        </parameter>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="value">
+          <type name="int" c:type="int*"/>
+        </parameter>
+        <parameter name="warn">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="possible_values">
+          <type name="char" c:type="char**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_style" c:identifier="pango_parse_style">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="style">
+          <type name="Style" c:type="PangoStyle*"/>
+        </parameter>
+        <parameter name="warn">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_variant" c:identifier="pango_parse_variant">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="variant">
+          <type name="Variant" c:type="PangoVariant*"/>
+        </parameter>
+        <parameter name="warn">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_weight" c:identifier="pango_parse_weight">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="weight">
+          <type name="Weight" c:type="PangoWeight*"/>
+        </parameter>
+        <parameter name="warn">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="parse_stretch" c:identifier="pango_parse_stretch">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="str">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="stretch">
+          <type name="Stretch" c:type="PangoStretch*"/>
+        </parameter>
+        <parameter name="warn">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="quantize_line_geometry"
+              c:identifier="pango_quantize_line_geometry">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="thickness">
+          <type name="int" c:type="int*"/>
+        </parameter>
+        <parameter name="position">
+          <type name="int" c:type="int*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="log2vis_get_embedding_levels"
+              c:identifier="pango_log2vis_get_embedding_levels">
+      <return-value>
+        <type name="guint8" c:type="guint8*"/>
+      </return-value>
+      <parameters>
+        <parameter name="text">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+        <parameter name="length">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="pbase_dir">
+          <type name="Direction" c:type="PangoDirection*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="is_zero_width" c:identifier="pango_is_zero_width">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="ch">
+          <type name="GLib.gunichar" c:type="gunichar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="version" c:identifier="pango_version">
+      <return-value>
+        <type name="int32" c:type="int"/>
+      </return-value>
+    </function>
+    <function name="version_string" c:identifier="pango_version_string">
+      <return-value>
+        <type name="string" c:type="char*"/>
+      </return-value>
+    </function>
+    <function name="version_check" c:identifier="pango_version_check">
+      <return-value>
+        <type name="string" c:type="char*"/>
+      </return-value>
+      <parameters>
+        <parameter name="required_major">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="required_minor">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="required_micro">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+  </namespace>
+</repository>

Added: trunk/gir/pangocairo.gir
==============================================================================
--- (empty file)
+++ trunk/gir/pangocairo.gir	Sat Aug 16 12:23:31 2008
@@ -0,0 +1,372 @@
+<repository version="1.0"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <namespace name="PangoX">
+    <record name="PangoCairoFont" c:type="PangoCairoFont"/>
+    <record name="PangoCairoFontMap" c:type="PangoCairoFontMap"/>
+    <callback name="PangoCairoShapeRendererFunc">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="attr">
+          <type name="PangoAttrShape" c:type="PangoAttrShape*"/>
+        </parameter>
+        <parameter name="do_path">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="pango_cairo_font_map_new"
+              c:identifier="pango_cairo_font_map_new">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+    </function>
+    <function name="pango_cairo_font_map_new_for_font_type"
+              c:identifier="pango_cairo_font_map_new_for_font_type">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+      <parameters>
+        <parameter name="fonttype">
+          <type name="cairo_font_type_t" c:type="cairo_font_type_t"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_font_map_get_default"
+              c:identifier="pango_cairo_font_map_get_default">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+    </function>
+    <function name="pango_cairo_font_map_get_font_type"
+              c:identifier="pango_cairo_font_map_get_font_type">
+      <return-value>
+        <type name="cairo_font_type_t" c:type="cairo_font_type_t"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontmap">
+          <type name="PangoCairoFontMap" c:type="PangoCairoFontMap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_font_map_set_resolution"
+              c:identifier="pango_cairo_font_map_set_resolution">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontmap">
+          <type name="PangoCairoFontMap" c:type="PangoCairoFontMap*"/>
+        </parameter>
+        <parameter name="dpi">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_font_map_get_resolution"
+              c:identifier="pango_cairo_font_map_get_resolution">
+      <return-value>
+        <type name="double" c:type="double"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontmap">
+          <type name="PangoCairoFontMap" c:type="PangoCairoFontMap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_font_map_create_context"
+              c:identifier="pango_cairo_font_map_create_context">
+      <return-value>
+        <type name="PangoContext" c:type="PangoContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontmap">
+          <type name="PangoCairoFontMap" c:type="PangoCairoFontMap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_font_get_scaled_font"
+              c:identifier="pango_cairo_font_get_scaled_font">
+      <return-value>
+        <type name="Cairo.cairo_scaled_font_t" c:type="cairo_scaled_font_t*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoCairoFont" c:type="PangoCairoFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_update_context"
+              c:identifier="pango_cairo_update_context">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_set_font_options"
+              c:identifier="pango_cairo_context_set_font_options">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="options">
+          <type name="Cairo.cairo_font_options_t"
+                c:type="cairo_font_options_t*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_get_font_options"
+              c:identifier="pango_cairo_context_get_font_options">
+      <return-value>
+        <type name="Cairo.cairo_font_options_t"
+              c:type="cairo_font_options_t*"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_set_resolution"
+              c:identifier="pango_cairo_context_set_resolution">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="dpi">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_get_resolution"
+              c:identifier="pango_cairo_context_get_resolution">
+      <return-value>
+        <type name="double" c:type="double"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_set_shape_renderer"
+              c:identifier="pango_cairo_context_set_shape_renderer">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="func">
+          <type name="PangoCairoShapeRendererFunc"
+                c:type="PangoCairoShapeRendererFunc"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="dnotify">
+          <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_context_get_shape_renderer"
+              c:identifier="pango_cairo_context_get_shape_renderer">
+      <return-value>
+        <type name="PangoCairoShapeRendererFunc"
+              c:type="PangoCairoShapeRendererFunc"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="gpointer" c:type="gpointer*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_create_layout"
+              c:identifier="pango_cairo_create_layout">
+      <return-value>
+        <type name="PangoLayout" c:type="PangoLayout*"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_update_layout"
+              c:identifier="pango_cairo_update_layout">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_show_glyph_string"
+              c:identifier="pango_cairo_show_glyph_string">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_show_layout_line"
+              c:identifier="pango_cairo_show_layout_line">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_show_layout"
+              c:identifier="pango_cairo_show_layout">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_show_error_underline"
+              c:identifier="pango_cairo_show_error_underline">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="y">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="width">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="height">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_glyph_string_path"
+              c:identifier="pango_cairo_glyph_string_path">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_layout_line_path"
+              c:identifier="pango_cairo_layout_line_path">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_layout_path"
+              c:identifier="pango_cairo_layout_path">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_cairo_error_underline_path"
+              c:identifier="pango_cairo_error_underline_path">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr">
+          <type name="Cairo.cairo_t" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="y">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="width">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="height">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+  </namespace>
+</repository>

Added: trunk/gir/pangoft2.gir
==============================================================================
--- (empty file)
+++ trunk/gir/pangoft2.gir	Sat Aug 16 12:23:31 2008
@@ -0,0 +1,400 @@
+<repository version="1.0"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <namespace name="PangoFT2">
+    <function name="pango_fc_font_lock_face"
+              c:identifier="pango_fc_font_lock_face">
+      <return-value>
+        <type name="FT_Face" c:type="FT_Face"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFcFont" c:type="PangoFcFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_fc_font_unlock_face"
+              c:identifier="pango_fc_font_unlock_face">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFcFont" c:type="PangoFcFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <callback name="PangoFT2SubstituteFunc">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pattern">
+          <type name="FcPattern" c:type="FcPattern*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="pango_ft2_render" c:identifier="pango_ft2_render">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_render_transformed"
+              c:identifier="pango_ft2_render_transformed">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="matrix">
+          <type name="PangoMatrix" c:type="PangoMatrix*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_render_layout_line"
+              c:identifier="pango_ft2_render_layout_line">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_render_layout_line_subpixel"
+              c:identifier="pango_ft2_render_layout_line_subpixel">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_render_layout"
+              c:identifier="pango_ft2_render_layout">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_render_layout_subpixel"
+              c:identifier="pango_ft2_render_layout_subpixel">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="bitmap">
+          <type name="FT_Bitmap" c:type="FT_Bitmap*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <class name="FontMap"
+           c:type="PangoFT2FontMap"
+           parent="PangoFcFontMap"
+           glib:type-name="PangoFT2FontMap"
+           glib:get-type="pango_ft2_font_map_get_type">
+      <method name="set_resolution"
+              c:identifier="pango_ft2_font_map_set_resolution">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFT2FontMap*"/>
+          </parameter>
+          <parameter name="dpi_x">
+            <type name="double" c:type="double"/>
+          </parameter>
+          <parameter name="dpi_y">
+            <type name="double" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_default_substitute"
+              c:identifier="pango_ft2_font_map_set_default_substitute">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFT2FontMap*"/>
+          </parameter>
+          <parameter name="func">
+            <type name="PangoFT2SubstituteFunc"
+                  c:type="PangoFT2SubstituteFunc"/>
+          </parameter>
+          <parameter name="data">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+          <parameter name="notify">
+            <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="substitute_changed"
+              c:identifier="pango_ft2_font_map_substitute_changed">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFT2FontMap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="create_context"
+              c:identifier="pango_ft2_font_map_create_context">
+        <return-value>
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontmap">
+            <type name="FontMap" c:type="PangoFT2FontMap*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </class>
+    <function name="pango_ft2_font_map_new"
+              c:identifier="pango_ft2_font_map_new">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+    </function>
+    <function name="pango_ft2_get_context"
+              c:identifier="pango_ft2_get_context">
+      <return-value>
+        <type name="PangoContext" c:type="PangoContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="dpi_x">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="dpi_y">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_font_map_for_display"
+              c:identifier="pango_ft2_font_map_for_display">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+    </function>
+    <function name="pango_ft2_shutdown_display"
+              c:identifier="pango_ft2_shutdown_display">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="pango_ft2_get_unknown_glyph"
+              c:identifier="pango_ft2_get_unknown_glyph">
+      <return-value>
+        <type name="PangoGlyph" c:type="PangoGlyph"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_font_get_kerning"
+              c:identifier="pango_ft2_font_get_kerning">
+      <return-value>
+        <type name="int32" c:type="int"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="left">
+          <type name="PangoGlyph" c:type="PangoGlyph"/>
+        </parameter>
+        <parameter name="right">
+          <type name="PangoGlyph" c:type="PangoGlyph"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_font_get_face"
+              c:identifier="pango_ft2_font_get_face">
+      <return-value>
+        <type name="FT_Face" c:type="FT_Face"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_ft2_font_get_coverage"
+              c:identifier="pango_ft2_font_get_coverage">
+      <return-value>
+        <type name="PangoCoverage" c:type="PangoCoverage*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="language">
+          <type name="PangoLanguage" c:type="PangoLanguage*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_fc_decoder_get_charset"
+              c:identifier="pango_fc_decoder_get_charset">
+      <return-value>
+        <type name="FcCharSet" c:type="FcCharSet*"/>
+      </return-value>
+      <parameters>
+        <parameter name="decoder">
+          <type name="PangoFcDecoder" c:type="PangoFcDecoder*"/>
+        </parameter>
+        <parameter name="fcfont">
+          <type name="PangoFcFont" c:type="PangoFcFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_fc_decoder_get_glyph"
+              c:identifier="pango_fc_decoder_get_glyph">
+      <return-value>
+        <type name="PangoGlyph" c:type="PangoGlyph"/>
+      </return-value>
+      <parameters>
+        <parameter name="decoder">
+          <type name="PangoFcDecoder" c:type="PangoFcDecoder*"/>
+        </parameter>
+        <parameter name="fcfont">
+          <type name="PangoFcFont" c:type="PangoFcFont*"/>
+        </parameter>
+        <parameter name="wc">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <record name="PangoFcFontMapPrivate" c:type="PangoFcFontMapPrivate"/>
+    <callback name="PangoFcDecoderFindFunc">
+      <return-value>
+        <type name="PangoFcDecoder" c:type="PangoFcDecoder*"/>
+      </return-value>
+      <parameters>
+        <parameter name="pattern">
+          <type name="FcPattern" c:type="FcPattern*"/>
+        </parameter>
+        <parameter name="user_data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="pango_fc_font_map_add_decoder_find_func"
+              c:identifier="pango_fc_font_map_add_decoder_find_func">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="fcfontmap">
+          <type name="PangoFcFontMap" c:type="PangoFcFontMap*"/>
+        </parameter>
+        <parameter name="findfunc">
+          <type name="PangoFcDecoderFindFunc" c:type="PangoFcDecoderFindFunc"/>
+        </parameter>
+        <parameter name="user_data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="dnotify">
+          <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_fc_font_description_from_pattern"
+              c:identifier="pango_fc_font_description_from_pattern">
+      <return-value>
+        <type name="PangoFontDescription" c:type="PangoFontDescription*"/>
+      </return-value>
+      <parameters>
+        <parameter name="pattern">
+          <type name="FcPattern" c:type="FcPattern*"/>
+        </parameter>
+        <parameter name="include_size">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+  </namespace>
+</repository>

Added: trunk/gir/pangox.gir
==============================================================================
--- (empty file)
+++ trunk/gir/pangox.gir	Sat Aug 16 12:23:31 2008
@@ -0,0 +1,365 @@
+<repository version="1.0"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <namespace name="PangoX">
+    <alias name="PangoXSubfont" target="guint16"/>
+    <callback name="PangoGetGCFunc">
+      <return-value>
+        <type name="GC" c:type="GC"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="color">
+          <type name="PangoColor" c:type="PangoColor*"/>
+        </parameter>
+        <parameter name="base_gc">
+          <type name="GC" c:type="GC"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <callback name="PangoFreeGCFunc">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="gc">
+          <type name="GC" c:type="GC"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="pango_x_get_context" c:identifier="pango_x_get_context">
+      <return-value>
+        <type name="PangoContext" c:type="PangoContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_context_set_funcs"
+              c:identifier="pango_x_context_set_funcs">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context">
+          <type name="PangoContext" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="get_gc_func">
+          <type name="PangoGetGCFunc" c:type="PangoGetGCFunc"/>
+        </parameter>
+        <parameter name="free_gc_func">
+          <type name="PangoFreeGCFunc" c:type="PangoFreeGCFunc"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_load_font" c:identifier="pango_x_load_font">
+      <return-value>
+        <type name="PangoFont" c:type="PangoFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="spec">
+          <type name="string" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_render" c:identifier="pango_x_render">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="d">
+          <type name="Drawable" c:type="Drawable"/>
+        </parameter>
+        <parameter name="gc">
+          <type name="GC" c:type="GC"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_render_layout_line"
+              c:identifier="pango_x_render_layout_line">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="drawable">
+          <type name="Drawable" c:type="Drawable"/>
+        </parameter>
+        <parameter name="gc">
+          <type name="GC" c:type="GC"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_render_layout"
+              c:identifier="pango_x_render_layout">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="drawable">
+          <type name="Drawable" c:type="Drawable"/>
+        </parameter>
+        <parameter name="gc">
+          <type name="GC" c:type="GC"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_list_subfonts"
+              c:identifier="pango_x_list_subfonts">
+      <return-value>
+        <type name="int32" c:type="int"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="charsets">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="n_charsets">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="subfont_ids">
+          <type name="PangoXSubfont" c:type="PangoXSubfont**"/>
+        </parameter>
+        <parameter name="subfont_charsets">
+          <type name="int" c:type="int**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_has_glyph" c:identifier="pango_x_has_glyph">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyph">
+          <type name="PangoGlyph" c:type="PangoGlyph"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_get_unknown_glyph"
+              c:identifier="pango_x_get_unknown_glyph">
+      <return-value>
+        <type name="PangoGlyph" c:type="PangoGlyph"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <record name="PangoXFontCache" c:type="PangoXFontCache"/>
+    <function name="pango_x_font_cache_new"
+              c:identifier="pango_x_font_cache_new">
+      <return-value>
+        <type name="PangoXFontCache" c:type="PangoXFontCache*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_cache_free"
+              c:identifier="pango_x_font_cache_free">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cache">
+          <type name="PangoXFontCache" c:type="PangoXFontCache*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_cache_load"
+              c:identifier="pango_x_font_cache_load">
+      <return-value>
+        <type name="XFontStruct" c:type="XFontStruct*"/>
+      </return-value>
+      <parameters>
+        <parameter name="cache">
+          <type name="PangoXFontCache" c:type="PangoXFontCache*"/>
+        </parameter>
+        <parameter name="xlfd">
+          <type name="string" c:type="char*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_cache_unload"
+              c:identifier="pango_x_font_cache_unload">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cache">
+          <type name="PangoXFontCache" c:type="PangoXFontCache*"/>
+        </parameter>
+        <parameter name="fs">
+          <type name="XFontStruct" c:type="XFontStruct*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_map_for_display"
+              c:identifier="pango_x_font_map_for_display">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_shutdown_display"
+              c:identifier="pango_x_shutdown_display">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_map_get_font_cache"
+              c:identifier="pango_x_font_map_get_font_cache">
+      <return-value>
+        <type name="PangoXFontCache" c:type="PangoXFontCache*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font_map">
+          <type name="PangoFontMap" c:type="PangoFontMap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_font_subfont_xlfd"
+              c:identifier="pango_x_font_subfont_xlfd">
+      <return-value>
+        <type name="string" c:type="char*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="subfont_id">
+          <type name="PangoXSubfont" c:type="PangoXSubfont"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_find_first_subfont"
+              c:identifier="pango_x_find_first_subfont">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="charsets">
+          <type name="char" c:type="char**"/>
+        </parameter>
+        <parameter name="n_charsets">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="rfont">
+          <type name="PangoXSubfont" c:type="PangoXSubfont*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_fallback_shape"
+              c:identifier="pango_x_fallback_shape">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="text">
+          <type name="string" c:type="char*"/>
+        </parameter>
+        <parameter name="n_chars">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_x_apply_ligatures"
+              c:identifier="pango_x_apply_ligatures">
+      <return-value>
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="subfont">
+          <type name="PangoXSubfont" c:type="PangoXSubfont"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="GLib.gunichar" c:type="gunichar**"/>
+        </parameter>
+        <parameter name="n_glyphs">
+          <type name="int" c:type="int*"/>
+        </parameter>
+        <parameter name="clusters">
+          <type name="int" c:type="int**"/>
+        </parameter>
+      </parameters>
+    </function>
+  </namespace>
+</repository>

Added: trunk/gir/pangoxft.gir
==============================================================================
--- (empty file)
+++ trunk/gir/pangoxft.gir	Sat Aug 16 12:23:31 2008
@@ -0,0 +1,332 @@
+<repository version="1.0"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <namespace name="PangoXFT">
+    <record name="PangoXftRendererPrivate" c:type="PangoXftRendererPrivate"/>
+    <class name="Renderer"
+           c:type="PangoXftRenderer"
+           parent="PangoRenderer"
+           glib:type-name="PangoXftRenderer"
+           glib:get-type="pango_xft_renderer_get_type">
+      <method name="set_draw" c:identifier="pango_xft_renderer_set_draw">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="xftrenderer">
+            <type name="Renderer" c:type="PangoXftRenderer*"/>
+          </parameter>
+          <parameter name="draw">
+            <type name="XftDraw" c:type="XftDraw*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_default_color"
+              c:identifier="pango_xft_renderer_set_default_color">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="xftrenderer">
+            <type name="Renderer" c:type="PangoXftRenderer*"/>
+          </parameter>
+          <parameter name="default_color">
+            <type name="PangoColor" c:type="PangoColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <property name="display">
+        <type name="any" c:type="gpointer"/>
+      </property>
+      <property name="screen">
+        <type name="int32" c:type="gint"/>
+      </property>
+      <callback name="composite_trapezoids">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="xftrenderer">
+            <type name="Renderer" c:type="PangoXftRenderer*"/>
+          </parameter>
+          <parameter name="part">
+            <type name="PangoRenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="trapezoids">
+            <type name="XTrapezoid" c:type="XTrapezoid*"/>
+          </parameter>
+          <parameter name="n_trapezoids">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+      <callback name="composite_glyphs">
+        <return-value>
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="xftrenderer">
+            <type name="Renderer" c:type="PangoXftRenderer*"/>
+          </parameter>
+          <parameter name="xft_font">
+            <type name="XftFont" c:type="XftFont*"/>
+          </parameter>
+          <parameter name="glyphs">
+            <type name="XftGlyphSpec" c:type="XftGlyphSpec*"/>
+          </parameter>
+          <parameter name="n_glyphs">
+            <type name="int32" c:type="int"/>
+          </parameter>
+        </parameters>
+      </callback>
+    </class>
+    <function name="pango_xft_renderer_new"
+              c:identifier="pango_xft_renderer_new">
+      <return-value>
+        <type name="PangoRenderer" c:type="PangoRenderer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_render" c:identifier="pango_xft_render">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="draw">
+          <type name="XftDraw" c:type="XftDraw*"/>
+        </parameter>
+        <parameter name="color">
+          <type name="XftColor" c:type="XftColor*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_picture_render"
+              c:identifier="pango_xft_picture_render">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="src_picture">
+          <type name="Picture" c:type="Picture"/>
+        </parameter>
+        <parameter name="dest_picture">
+          <type name="Picture" c:type="Picture"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_render_transformed"
+              c:identifier="pango_xft_render_transformed">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="draw">
+          <type name="XftDraw" c:type="XftDraw*"/>
+        </parameter>
+        <parameter name="color">
+          <type name="XftColor" c:type="XftColor*"/>
+        </parameter>
+        <parameter name="matrix">
+          <type name="PangoMatrix" c:type="PangoMatrix*"/>
+        </parameter>
+        <parameter name="font">
+          <type name="PangoFont" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="glyphs">
+          <type name="PangoGlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_render_layout_line"
+              c:identifier="pango_xft_render_layout_line">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="draw">
+          <type name="XftDraw" c:type="XftDraw*"/>
+        </parameter>
+        <parameter name="color">
+          <type name="XftColor" c:type="XftColor*"/>
+        </parameter>
+        <parameter name="line">
+          <type name="PangoLayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_render_layout"
+              c:identifier="pango_xft_render_layout">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="draw">
+          <type name="XftDraw" c:type="XftDraw*"/>
+        </parameter>
+        <parameter name="color">
+          <type name="XftColor" c:type="XftColor*"/>
+        </parameter>
+        <parameter name="layout">
+          <type name="PangoLayout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="x">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="y">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <callback name="PangoXftSubstituteFunc">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pattern">
+          <type name="FcPattern" c:type="FcPattern*"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <function name="pango_xft_get_font_map"
+              c:identifier="pango_xft_get_font_map">
+      <return-value>
+        <type name="PangoFontMap" c:type="PangoFontMap*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_get_context"
+              c:identifier="pango_xft_get_context">
+      <return-value>
+        <type name="PangoContext" c:type="PangoContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_shutdown_display"
+              c:identifier="pango_xft_shutdown_display">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_set_default_substitute"
+              c:identifier="pango_xft_set_default_substitute">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+        <parameter name="func">
+          <type name="PangoXftSubstituteFunc" c:type="PangoXftSubstituteFunc"/>
+        </parameter>
+        <parameter name="data">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="notify">
+          <type name="GLib.GDestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_xft_substitute_changed"
+              c:identifier="pango_xft_substitute_changed">
+      <return-value>
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display">
+          <type name="Display" c:type="Display*"/>
+        </parameter>
+        <parameter name="screen">
+          <type name="int32" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <class name="FontMap"
+           c:type="PangoXftFontMap"
+           parent="PangoFcFontMap"
+           glib:type-name="PangoXftFontMap"
+           glib:get-type="pango_xft_font_map_get_type">
+    </class>
+    <class name="Font"
+           c:type="PangoXftFont"
+           parent="PangoFcFont"
+           glib:type-name="PangoXftFont"
+           glib:get-type="pango_xft_font_get_type">
+    </class>
+  </namespace>
+</repository>



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