<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<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">
  <include name="GLib" version="2.0"/>
  <include name="GObject" version="2.0"/>
  <include name="Pango" version="1.0"/>
  <include name="PangoFT2" version="1.0"/>
  <include name="cairo" version="1.0"/>
  <include name="fontconfig" version="2.0"/>
  <include name="freetype2" version="2.0"/>
  <include name="xft" version="2.0"/>
  <include name="xlib" version="2.0"/>
  <package name="freetype2"/>
  <package name="gobject-2.0"/>
  <namespace name="PangoXft"
             version="1.0"
             shared-library="libpangoxft-1.0.so.0"
             c:prefix="PangoXft">
    <class name="Font"
           c:type="PangoXftFont"
           parent="PangoFT2.PangoFcFont"
           glib:type-name="PangoXftFont"
           glib:get-type="pango_xft_font_get_type">
      <field name="parent_instance">
        <type name="PangoFT2.PangoFcFont" c:type="PangoFcFont"/>
      </field>
      <field name="xft_font">
        <type name="xft.Font" c:type="XftFont*"/>
      </field>
      <field name="mini_font">
        <type name="Pango.Font" c:type="PangoFont*"/>
      </field>
      <field name="mini_width">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="mini_height">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="mini_pad">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="glyph_info">
        <type name="GLib.HashTable" c:type="GHashTable*"/>
      </field>
    </class>
    <class name="FontMap"
           c:type="PangoXftFontMap"
           parent="PangoFT2.PangoFcFontMap"
           glib:type-name="PangoXftFontMap"
           glib:get-type="pango_xft_font_map_get_type">
    </class>
    <constant name="PANGO_RENDER_TYPE_XFT" value="PangoRenderXft">
      <type name="utf8"/>
    </constant>
    <class name="Renderer"
           c:type="PangoXftRenderer"
           parent="Pango.Renderer"
           glib:type-name="PangoXftRenderer"
           glib:get-type="pango_xft_renderer_get_type"
           glib:type-struct="RendererClass">
      <constructor name="new"
                   c:identifier="pango_xft_renderer_new"
                   doc="Create a new #PangoXftRenderer to allow rendering Pango objects
with the Xft library. You must call pango_xft_renderer_set_draw() before
using the renderer.
be freed with g_object_unref()."
                   version="1.8">
        <return-value transfer-ownership="full">
          <type name="Renderer" c:type="PangoRenderer*"/>
        </return-value>
        <parameters>
          <parameter name="display" transfer-ownership="none">
            <type name="xlib.Display" c:type="Display*"/>
          </parameter>
          <parameter name="screen" transfer-ownership="none">
            <type name="int" c:type="int"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="composite_trapezoids">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="part" transfer-ownership="none">
            <type name="Pango.RenderPart" c:type="PangoRenderPart"/>
          </parameter>
          <parameter name="trapezoids" transfer-ownership="none">
            <type name="xlib.XTrapezoid" c:type="XTrapezoid*"/>
          </parameter>
          <parameter name="n_trapezoids" transfer-ownership="none">
            <type name="int" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="composite_glyphs">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="xft_font" transfer-ownership="none">
            <type name="xft.Font" c:type="XftFont*"/>
          </parameter>
          <parameter name="glyphs" transfer-ownership="none">
            <type name="xft.GlyphSpec" c:type="XftGlyphSpec*"/>
          </parameter>
          <parameter name="n_glyphs" transfer-ownership="none">
            <type name="int" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="set_draw"
              c:identifier="pango_xft_renderer_set_draw"
              doc="Sets the #XftDraw object that the renderer is drawing to.
The renderer must not be currently active."
              version="1.8">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="draw" transfer-ownership="none">
            <type name="xft.Draw" c:type="XftDraw*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_default_color"
              c:identifier="pango_xft_renderer_set_default_color"
              doc="Sets the default foreground color for a #XftRenderer."
              version="1.8">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="default_color" transfer-ownership="none">
            <type name="Pango.Color" c:type="PangoColor*"/>
          </parameter>
        </parameters>
      </method>
      <property name="display" readable="0" writable="1" construct-only="1">
        <type name="any" c:type="gpointer"/>
      </property>
      <property name="screen" readable="0" writable="1" construct-only="1">
        <type name="int" c:type="gint"/>
      </property>
      <field name="parent_instance">
        <type name="Pango.Renderer" c:type="PangoRenderer"/>
      </field>
      <field name="display">
        <type name="xlib.Display" c:type="Display*"/>
      </field>
      <field name="screen">
        <type name="int" c:type="int"/>
      </field>
      <field name="draw">
        <type name="xft.Draw" c:type="XftDraw*"/>
      </field>
      <field name="priv">
        <type name="RendererPrivate" c:type="PangoXftRendererPrivate*"/>
      </field>
    </class>
    <record name="RendererClass"
            c:type="PangoXftRendererClass"
            glib:is-gtype-struct-for="Renderer">
      <field name="parent_class">
        <type name="Pango.RendererClass" c:type="PangoRendererClass"/>
      </field>
      <field name="composite_trapezoids">
        <callback name="composite_trapezoids" c:type="composite_trapezoids">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="xftrenderer" transfer-ownership="none">
              <type name="Renderer" c:type="PangoXftRenderer*"/>
            </parameter>
            <parameter name="part" transfer-ownership="none">
              <type name="Pango.RenderPart" c:type="PangoRenderPart"/>
            </parameter>
            <parameter name="trapezoids" transfer-ownership="none">
              <type name="xlib.XTrapezoid" c:type="XTrapezoid*"/>
            </parameter>
            <parameter name="n_trapezoids" transfer-ownership="none">
              <type name="int" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="composite_glyphs">
        <callback name="composite_glyphs" c:type="composite_glyphs">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="xftrenderer" transfer-ownership="none">
              <type name="Renderer" c:type="PangoXftRenderer*"/>
            </parameter>
            <parameter name="xft_font" transfer-ownership="none">
              <type name="xft.Font" c:type="XftFont*"/>
            </parameter>
            <parameter name="glyphs" transfer-ownership="none">
              <type name="xft.GlyphSpec" c:type="XftGlyphSpec*"/>
            </parameter>
            <parameter name="n_glyphs" transfer-ownership="none">
              <type name="int" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="RendererPrivate" c:type="PangoXftRendererPrivate">
    </record>
    <callback name="SubstituteFunc" c:type="PangoXftSubstituteFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="fontconfig.Pattern" c:type="FcPattern*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <function name="get_context"
              c:identifier="pango_xft_get_context"
              doc="Retrieves a #PangoContext appropriate for rendering with
Xft fonts on the given screen of the given display.
pango_font_map_create_context() instead."
              deprecated="Use pango_xft_get_font_map() followed by"
              deprecated-version="1.22">
      <return-value transfer-ownership="full">
        <type name="Pango.Context" c:type="PangoContext*"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="screen" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_font_map"
              c:identifier="pango_xft_get_font_map"
              doc="Returns the #PangoXftFontmap for the given display and screen.
The fontmap is owned by Pango and will be valid until
the display is closed."
              version="1.2">
      <return-value transfer-ownership="full">
        <type name="Pango.FontMap" c:type="PangoFontMap*"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="screen" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="picture_render"
              c:identifier="pango_xft_picture_render"
              doc="Renders a #PangoGlyphString onto an Xrender &lt;type&gt;Picture&lt;/type&gt; object.">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="src_picture" transfer-ownership="none">
          <type name="xlib.Picture" c:type="Picture"/>
        </parameter>
        <parameter name="dest_picture" transfer-ownership="none">
          <type name="xlib.Picture" c:type="Picture"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="glyphs" transfer-ownership="none">
          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="render"
              c:identifier="pango_xft_render"
              doc="Renders a #PangoGlyphString onto an &lt;type&gt;XftDraw&lt;/type&gt; object wrapping an X drawable.">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="draw" transfer-ownership="none">
          <type name="xft.Draw" c:type="XftDraw*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="xft.Color" c:type="XftColor*"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="glyphs" transfer-ownership="none">
          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout"
              c:identifier="pango_xft_render_layout"
              doc="(may be overridden by color attributes)
Render a #PangoLayout onto a #XftDraw"
              version="1.8">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="draw" transfer-ownership="none">
          <type name="xft.Draw" c:type="XftDraw*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="xft.Color" c:type="XftColor*"/>
        </parameter>
        <parameter name="layout" transfer-ownership="none">
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_line"
              c:identifier="pango_xft_render_layout_line"
              doc="(may be overridden by color attributes)
Render a #PangoLayoutLine onto a #XftDraw"
              version="1.8">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="draw" transfer-ownership="none">
          <type name="xft.Draw" c:type="XftDraw*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="xft.Color" c:type="XftColor*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_transformed"
              c:identifier="pango_xft_render_transformed"
              doc="units in user space coordinates)
in user space coordinates)
Renders a #PangoGlyphString onto a #XftDraw, possibly
transforming the layed-out coordinates through a transformation
matrix. Note that the transformation matrix for @font is not
changed, so to produce correct rendering results, the @font
must have been loaded using a #PangoContext with an identical
transformation matrix to that passed in to this function."
              version="1.8">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="draw" transfer-ownership="none">
          <type name="xft.Draw" c:type="XftDraw*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="xft.Color" c:type="XftColor*"/>
        </parameter>
        <parameter name="matrix" transfer-ownership="none">
          <type name="Pango.Matrix" c:type="PangoMatrix*"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="glyphs" transfer-ownership="none">
          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_default_substitute"
              c:identifier="pango_xft_set_default_substitute"
              doc="on #FcPattern objects.
Sets a function that will be called to do final configuration
substitution on a #FcPattern before it is used to load
the font. This function can be used to do things like set
hinting and antialiasing options."
              version="1.2">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="screen" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func"
                   transfer-ownership="none"
                   scope="notified"
                   closure="3"
                   destroy="4">
          <type name="SubstituteFunc" c:type="PangoXftSubstituteFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none" scope="call">
          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="shutdown_display"
              c:identifier="pango_xft_shutdown_display"
              doc="Release any resources that have been cached for the
combination of @display and @screen. Note that when the
X display is closed, resources are released automatically,
without needing to call this function."
              version="1.2">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="screen" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="substitute_changed"
              c:identifier="pango_xft_substitute_changed"
              doc="Call this function any time the results of the
default substitution function set with
pango_xft_set_default_substitute() change.
That is, if your substitution function will return different
results for the same input pattern, you must call this function."
              version="1.2">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <type name="xlib.Display" c:type="Display*"/>
        </parameter>
        <parameter name="screen" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
