<?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.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="GLib" version="2.0"/>
  <include name="Gdk" version="3.0"/>
  <include name="GdkPixbuf" version="2.0"/>
  <include name="Gio" version="2.0"/>
  <include name="Gtk" version="3.0"/>
  <package name="evince-document-3.0"/>
  <doc:format name="unknown"/>
  <namespace name="EvinceDocument"
             version="3.0"
             shared-library="libevdocument3.so.4"
             c:identifier-prefixes="Ev"
             c:symbol-prefixes="ev">
    <alias name="BackendPage" c:type="EvBackendPage">
      <source-position filename="libdocument/ev-page.h" line="43"/>
      <type name="gpointer" c:type="gpointer"/>
    </alias>
    <alias name="BackendPageDestroyFunc" c:type="EvBackendPageDestroyFunc">
      <source-position filename="libdocument/ev-page.h" line="44"/>
      <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
    </alias>
    <function-macro name="ANNOTATION"
                    c:identifier="EV_ANNOTATION"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_ATTACHMENT"
                    c:identifier="EV_ANNOTATION_ATTACHMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="62"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_ATTACHMENT_CLASS"
                    c:identifier="EV_ANNOTATION_ATTACHMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="63"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_ATTACHMENT_GET_CLASS"
                    c:identifier="EV_ANNOTATION_ATTACHMENT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="66"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_CLASS"
                    c:identifier="EV_ANNOTATION_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="39"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_GET_CLASS"
                    c:identifier="EV_ANNOTATION_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="42"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_MARKUP"
                    c:identifier="EV_ANNOTATION_MARKUP"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="46"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_MARKUP_GET_IFACE"
                    c:identifier="EV_ANNOTATION_MARKUP_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="50"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_MARKUP_IFACE"
                    c:identifier="EV_ANNOTATION_MARKUP_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="47"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT"
                    c:identifier="EV_ANNOTATION_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="54"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT_CLASS"
                    c:identifier="EV_ANNOTATION_TEXT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="55"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT_GET_CLASS"
                    c:identifier="EV_ANNOTATION_TEXT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="58"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT_MARKUP"
                    c:identifier="EV_ANNOTATION_TEXT_MARKUP"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="70"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT_MARKUP_CLASS"
                    c:identifier="EV_ANNOTATION_TEXT_MARKUP_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="71"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ANNOTATION_TEXT_MARKUP_GET_CLASS"
                    c:identifier="EV_ANNOTATION_TEXT_MARKUP_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="74"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ASYNC_RENDERER"
                    c:identifier="EV_ASYNC_RENDERER"
                    introspectable="0">
      <source-position filename="libdocument/ev-async-renderer.h" line="36"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ASYNC_RENDERER_GET_IFACE"
                    c:identifier="EV_ASYNC_RENDERER_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-async-renderer.h" line="40"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ASYNC_RENDERER_IFACE"
                    c:identifier="EV_ASYNC_RENDERER_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-async-renderer.h" line="37"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ATTACHMENT"
                    c:identifier="EV_ATTACHMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-attachment.h" line="37"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ATTACHMENT_CLASS"
                    c:identifier="EV_ATTACHMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-attachment.h" line="38"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ATTACHMENT_GET_CLASS"
                    c:identifier="EV_ATTACHMENT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-attachment.h" line="41"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Annotation"
           c:symbol-prefix="annotation"
           c:type="EvAnnotation"
           parent="GObject.Object"
           abstract="1"
           glib:type-name="EvAnnotation"
           glib:get-type="ev_annotation_get_type"
           glib:type-struct="AnnotationClass">
      <source-position filename="libdocument/ev-annotation.h" line="77"/>
      <method name="equal" c:identifier="ev_annotation_equal">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="365">Compare @annot and @other.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="372">%TRUE if @annot is equal to @other, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="367">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="368">another #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_annotation_type"
              c:identifier="ev_annotation_get_annotation_type">
        <source-position filename="libdocument/ev-annotation.h" line="124"/>
        <return-value transfer-ownership="none">
          <type name="AnnotationType" c:type="EvAnnotationType"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_area"
              c:identifier="ev_annotation_get_area"
              glib:get-property="area"
              version="3.18">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="714">Gets the area of @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="172"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="716">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="area"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="717">a #EvRectangle to be filled with the annotation area</doc>
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_color"
              c:identifier="ev_annotation_get_color"
              glib:get-property="color"
              deprecated="1"
              deprecated-version="3.6">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="602">Get the color of @annot.</doc>
        <doc-deprecated xml:space="preserve">Use ev_annotation_get_rgba() instead.</doc-deprecated>
        <source-position filename="libdocument/ev-annotation.h" line="157"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="604">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="605">a #GdkColor to be filled with the Annotation color.</doc>
            <type name="Gdk.Color" c:type="GdkColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_contents"
              c:identifier="ev_annotation_get_contents"
              glib:get-property="contents">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="384">Get the contents of @annot. The contents of
@annot is the text that is displayed in the annotation, or an
alternate description of the annotation's content for non-text annotations</doc>
        <source-position filename="libdocument/ev-annotation.h" line="133"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="392">a string with the contents of the annotation or
%NULL if @annot has no contents.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="386">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modified"
              c:identifier="ev_annotation_get_modified"
              glib:get-property="modified">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="477">Get the last modification date of @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="143"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="483">A string containing the last modification date.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="479">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name"
              c:identifier="ev_annotation_get_name"
              glib:get-property="name">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="431">Get the name of @annot. The name of the annotation is a string
that uniquely indenftifies @annot amongs all the annotations
in the same page.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="138"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="439">the string with the annotation's name.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="433">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page" c:identifier="ev_annotation_get_page">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="332">Get the page where @annot appears.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="126"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="338">the #EvPage where @annot appears</doc>
          <type name="Page" c:type="EvPage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="334">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page_index"
              c:identifier="ev_annotation_get_page_index">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="348">Get the index of the page where @annot appears. Note that the index
is 0 based.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="355">the page index.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="350">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rgba"
              c:identifier="ev_annotation_get_rgba"
              glib:get-property="rgba"
              version="3.6">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="667">Gets the color of @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="166"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="669">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="670">a #GdkRGBA to be filled with the annotation color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_area"
              c:identifier="ev_annotation_set_area"
              glib:set-property="area"
              version="3.18">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="733">Set the area of the annotation to @area.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="175"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="740">%TRUE if the area has been changed, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="735">an #Evannotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="736">a #EvRectangle</doc>
            <type name="Rectangle" c:type="const EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color"
              c:identifier="ev_annotation_set_color"
              glib:set-property="color"
              deprecated="1"
              deprecated-version="3.6">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="628">Set the color of the annotation to @color. You can monitor
changes to the annotation's color by connecting to
notify::color signal on @annot.</doc>
        <doc-deprecated xml:space="preserve">Use ev_annotation_set_rgba() instead.</doc-deprecated>
        <source-position filename="libdocument/ev-annotation.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="637">%TRUE  when the color has been changed, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="630">an #Evannotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="631">a #GdkColor</doc>
            <type name="Gdk.Color" c:type="const GdkColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_contents"
              c:identifier="ev_annotation_set_contents"
              glib:set-property="contents">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="403">Set the contents of @annot. You can monitor
changes in the annotation's  contents by connecting to
notify::contents signal of @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="135"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="411">%TRUE if the contents have been changed, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="405">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="contents" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_modified"
              c:identifier="ev_annotation_set_modified"
              glib:set-property="modified">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="493">Set the last modification date of @annot to @modified. To
set the last modification date using a #time_t, use
ev_annotation_set_modified_from_time_t() instead. You can monitor
changes to the last modification date by connecting to the
notify::modified signal on @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="145"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="504">%TRUE if the last modification date has been updated, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="495">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="modified" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="496">string with the last modification date.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_modified_from_time"
              c:identifier="ev_annotation_set_modified_from_time"
              deprecated="1"
              deprecated-version="3.42">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="524">Set the last modification date of @annot to @utime.  You can
monitor changes to the last modification date by connecting to the
notify::modified sinal on @annot.
For the time-format used, see ev_document_misc_format_date().</doc>
        <doc-deprecated xml:space="preserve">use ev_annotation_set_modified_from_time_t instead as GTime is
                  deprecated because it is not year-2038 safe</doc-deprecated>
        <source-position filename="libdocument/ev-annotation.h" line="153"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="534">%TRUE if the last modified date has been updated, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="526">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="utime" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="527">a #GTime</doc>
            <type name="GLib.Time" c:type="GTime"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_modified_from_time_t"
              c:identifier="ev_annotation_set_modified_from_time_t">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="565">Set the last modification date of @annot to @utime.  You can
monitor changes to the last modification date by connecting to the
notify::modified sinal on @annot.
For the time-format used, see ev_document_misc_format_datetime().</doc>
        <source-position filename="libdocument/ev-annotation.h" line="148"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="575">%TRUE if the last modified date has been updated, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="567">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="utime" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="568">a #time_t</doc>
            <type name="time_t" c:type="time_t"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name"
              c:identifier="ev_annotation_set_name"
              glib:set-property="name">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="449">Set the name of @annot.
You can monitor changes of the annotation name by connecting
to the notify::name signal on @annot.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="140"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="457">%TRUE when the name has been changed, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="451">an #EvAnnotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rgba"
              c:identifier="ev_annotation_set_rgba"
              glib:set-property="rgba"
              version="3.6">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="686">Set the color of the annotation to @rgba.</doc>
        <source-position filename="libdocument/ev-annotation.h" line="169"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="693">%TRUE if the color has been changed, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="688">an #Evannotation</doc>
            <type name="Annotation" c:type="EvAnnotation*"/>
          </instance-parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="689">a #GdkRGBA</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <property name="area"
                writable="1"
                transfer-ownership="none"
                setter="set_area"
                getter="get_area">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="307">The area of the page where the annotation is placed.

Since 3.18</doc>
        <type name="Rectangle"/>
      </property>
      <property name="color"
                deprecated="1"
                deprecated-version="3.6"
                writable="1"
                transfer-ownership="none"
                setter="set_color"
                getter="get_color">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="278">The colour of the annotation as a #GdkColor.</doc>
        <doc-deprecated xml:space="preserve">Use #EvAnnotation:rgba instead.</doc-deprecated>
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="contents"
                writable="1"
                transfer-ownership="none"
                setter="set_contents"
                getter="get_contents"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="modified"
                writable="1"
                transfer-ownership="none"
                setter="set_modified"
                getter="get_modified"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="name"
                writable="1"
                transfer-ownership="none"
                setter="set_name"
                getter="get_name"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="page"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Page"/>
      </property>
      <property name="rgba"
                version="3.6"
                writable="1"
                transfer-ownership="none"
                setter="set_rgba"
                getter="get_rgba">
        <doc xml:space="preserve"
             filename="libdocument/ev-annotation.c"
             line="293">The colour of the annotation as a #GdkRGBA.</doc>
        <type name="Gdk.RGBA"/>
      </property>
    </class>
    <class name="AnnotationAttachment"
           c:symbol-prefix="annotation_attachment"
           c:type="EvAnnotationAttachment"
           parent="Annotation"
           glib:type-name="EvAnnotationAttachment"
           glib:get-type="ev_annotation_attachment_get_type"
           glib:type-struct="AnnotationAttachmentClass">
      <source-position filename="libdocument/ev-annotation.h" line="86"/>
      <implements name="AnnotationMarkup"/>
      <constructor name="new" c:identifier="ev_annotation_attachment_new">
        <source-position filename="libdocument/ev-annotation.h" line="230"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_attachment"
              c:identifier="ev_annotation_attachment_get_attachment"
              glib:get-property="attachment">
        <source-position filename="libdocument/ev-annotation.h" line="233"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-annotation.c"
               line="1365">an #EvAttachment</doc>
          <type name="Attachment" c:type="EvAttachment*"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-annotation.c"
                 line="1363">an #EvAnnotationAttachment</doc>
            <type name="AnnotationAttachment"
                  c:type="EvAnnotationAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_attachment"
              c:identifier="ev_annotation_attachment_set_attachment"
              glib:set-property="attachment">
        <source-position filename="libdocument/ev-annotation.h" line="235"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <type name="AnnotationAttachment"
                  c:type="EvAnnotationAttachment*"/>
          </instance-parameter>
          <parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </parameter>
        </parameters>
      </method>
      <property name="attachment"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_attachment"
                getter="get_attachment">
        <type name="Attachment"/>
      </property>
    </class>
    <record name="AnnotationAttachmentClass"
            c:type="EvAnnotationAttachmentClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="AnnotationAttachment">
      <source-position filename="libdocument/ev-annotation.h" line="86"/>
    </record>
    <record name="AnnotationClass"
            c:type="EvAnnotationClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="Annotation">
      <source-position filename="libdocument/ev-annotation.h" line="77"/>
    </record>
    <interface name="AnnotationMarkup"
               c:symbol-prefix="annotation_markup"
               c:type="EvAnnotationMarkup"
               glib:type-name="EvAnnotationMarkup"
               glib:get-type="ev_annotation_markup_get_type"
               glib:type-struct="AnnotationMarkupInterface">
      <source-position filename="libdocument/ev-annotation.h" line="80"/>
      <prerequisite name="Annotation"/>
      <method name="can_have_popup"
              c:identifier="ev_annotation_markup_can_have_popup">
        <source-position filename="libdocument/ev-annotation.h" line="192"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_label"
              c:identifier="ev_annotation_markup_get_label"
              glib:get-property="label">
        <source-position filename="libdocument/ev-annotation.h" line="182"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_opacity"
              c:identifier="ev_annotation_markup_get_opacity"
              glib:get-property="opacity">
        <source-position filename="libdocument/ev-annotation.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_popup_is_open"
              c:identifier="ev_annotation_markup_get_popup_is_open"
              glib:get-property="popup-is-open">
        <source-position filename="libdocument/ev-annotation.h" line="205"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rectangle"
              c:identifier="ev_annotation_markup_get_rectangle"
              glib:get-property="rectangle">
        <source-position filename="libdocument/ev-annotation.h" line="199"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="ev_rect" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_popup" c:identifier="ev_annotation_markup_has_popup">
        <source-position filename="libdocument/ev-annotation.h" line="194"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_has_popup"
              c:identifier="ev_annotation_markup_set_has_popup"
              glib:set-property="has-popup">
        <source-position filename="libdocument/ev-annotation.h" line="196"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="has_popup" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_label"
              c:identifier="ev_annotation_markup_set_label"
              glib:set-property="label">
        <source-position filename="libdocument/ev-annotation.h" line="184"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="label" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_opacity"
              c:identifier="ev_annotation_markup_set_opacity"
              glib:set-property="opacity">
        <source-position filename="libdocument/ev-annotation.h" line="189"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="opacity" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_popup_is_open"
              c:identifier="ev_annotation_markup_set_popup_is_open"
              glib:set-property="popup-is-open">
        <source-position filename="libdocument/ev-annotation.h" line="207"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="is_open" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rectangle"
              c:identifier="ev_annotation_markup_set_rectangle"
              glib:set-property="rectangle">
        <source-position filename="libdocument/ev-annotation.h" line="202"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="markup" transfer-ownership="none">
            <type name="AnnotationMarkup" c:type="EvAnnotationMarkup*"/>
          </instance-parameter>
          <parameter name="ev_rect" transfer-ownership="none">
            <type name="Rectangle" c:type="const EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <property name="can-have-popup"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="has-popup"
                writable="1"
                transfer-ownership="none"
                setter="set_has_popup"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="label"
                writable="1"
                transfer-ownership="none"
                setter="set_label"
                getter="get_label"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="opacity"
                writable="1"
                transfer-ownership="none"
                setter="set_opacity"
                getter="get_opacity"
                default-value="1.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="popup-is-open"
                writable="1"
                transfer-ownership="none"
                setter="set_popup_is_open"
                getter="get_popup_is_open"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="rectangle"
                writable="1"
                transfer-ownership="none"
                setter="set_rectangle"
                getter="get_rectangle">
        <type name="Rectangle"/>
      </property>
    </interface>
    <record name="AnnotationMarkupInterface"
            c:type="EvAnnotationMarkupInterface"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="AnnotationMarkup">
      <source-position filename="libdocument/ev-annotation.h" line="80"/>
    </record>
    <class name="AnnotationText"
           c:symbol-prefix="annotation_text"
           c:type="EvAnnotationText"
           parent="Annotation"
           glib:type-name="EvAnnotationText"
           glib:get-type="ev_annotation_text_get_type"
           glib:type-struct="AnnotationTextClass">
      <source-position filename="libdocument/ev-annotation.h" line="83"/>
      <implements name="AnnotationMarkup"/>
      <constructor name="new" c:identifier="ev_annotation_text_new">
        <source-position filename="libdocument/ev-annotation.h" line="214"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_icon"
              c:identifier="ev_annotation_text_get_icon"
              glib:get-property="icon">
        <source-position filename="libdocument/ev-annotation.h" line="216"/>
        <return-value transfer-ownership="none">
          <type name="AnnotationTextIcon" c:type="EvAnnotationTextIcon"/>
        </return-value>
        <parameters>
          <instance-parameter name="text" transfer-ownership="none">
            <type name="AnnotationText" c:type="EvAnnotationText*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_is_open"
              c:identifier="ev_annotation_text_get_is_open"
              glib:get-property="is-open">
        <source-position filename="libdocument/ev-annotation.h" line="221"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="text" transfer-ownership="none">
            <type name="AnnotationText" c:type="EvAnnotationText*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_icon"
              c:identifier="ev_annotation_text_set_icon"
              glib:set-property="icon">
        <source-position filename="libdocument/ev-annotation.h" line="218"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="text" transfer-ownership="none">
            <type name="AnnotationText" c:type="EvAnnotationText*"/>
          </instance-parameter>
          <parameter name="icon" transfer-ownership="none">
            <type name="AnnotationTextIcon" c:type="EvAnnotationTextIcon"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_is_open"
              c:identifier="ev_annotation_text_set_is_open"
              glib:set-property="is-open">
        <source-position filename="libdocument/ev-annotation.h" line="223"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="text" transfer-ownership="none">
            <type name="AnnotationText" c:type="EvAnnotationText*"/>
          </instance-parameter>
          <parameter name="is_open" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="icon"
                writable="1"
                transfer-ownership="none"
                setter="set_icon"
                getter="get_icon"
                default-value="EV_ANNOTATION_TEXT_ICON_NOTE">
        <type name="AnnotationTextIcon"/>
      </property>
      <property name="is-open"
                writable="1"
                transfer-ownership="none"
                setter="set_is_open"
                getter="get_is_open"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="AnnotationTextClass"
            c:type="EvAnnotationTextClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="AnnotationText">
      <source-position filename="libdocument/ev-annotation.h" line="83"/>
    </record>
    <enumeration name="AnnotationTextIcon"
                 glib:type-name="EvAnnotationTextIcon"
                 glib:get-type="ev_annotation_text_icon_get_type"
                 c:type="EvAnnotationTextIcon">
      <member name="note"
              value="0"
              c:identifier="EV_ANNOTATION_TEXT_ICON_NOTE"
              glib:nick="note"
              glib:name="EV_ANNOTATION_TEXT_ICON_NOTE">
      </member>
      <member name="comment"
              value="1"
              c:identifier="EV_ANNOTATION_TEXT_ICON_COMMENT"
              glib:nick="comment"
              glib:name="EV_ANNOTATION_TEXT_ICON_COMMENT">
      </member>
      <member name="key"
              value="2"
              c:identifier="EV_ANNOTATION_TEXT_ICON_KEY"
              glib:nick="key"
              glib:name="EV_ANNOTATION_TEXT_ICON_KEY">
      </member>
      <member name="help"
              value="3"
              c:identifier="EV_ANNOTATION_TEXT_ICON_HELP"
              glib:nick="help"
              glib:name="EV_ANNOTATION_TEXT_ICON_HELP">
      </member>
      <member name="new_paragraph"
              value="4"
              c:identifier="EV_ANNOTATION_TEXT_ICON_NEW_PARAGRAPH"
              glib:nick="new-paragraph"
              glib:name="EV_ANNOTATION_TEXT_ICON_NEW_PARAGRAPH">
      </member>
      <member name="paragraph"
              value="5"
              c:identifier="EV_ANNOTATION_TEXT_ICON_PARAGRAPH"
              glib:nick="paragraph"
              glib:name="EV_ANNOTATION_TEXT_ICON_PARAGRAPH">
      </member>
      <member name="insert"
              value="6"
              c:identifier="EV_ANNOTATION_TEXT_ICON_INSERT"
              glib:nick="insert"
              glib:name="EV_ANNOTATION_TEXT_ICON_INSERT">
      </member>
      <member name="cross"
              value="7"
              c:identifier="EV_ANNOTATION_TEXT_ICON_CROSS"
              glib:nick="cross"
              glib:name="EV_ANNOTATION_TEXT_ICON_CROSS">
      </member>
      <member name="circle"
              value="8"
              c:identifier="EV_ANNOTATION_TEXT_ICON_CIRCLE"
              glib:nick="circle"
              glib:name="EV_ANNOTATION_TEXT_ICON_CIRCLE">
      </member>
      <member name="unknown"
              value="9"
              c:identifier="EV_ANNOTATION_TEXT_ICON_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_ANNOTATION_TEXT_ICON_UNKNOWN">
      </member>
    </enumeration>
    <class name="AnnotationTextMarkup"
           c:symbol-prefix="annotation_text_markup"
           c:type="EvAnnotationTextMarkup"
           parent="Annotation"
           glib:type-name="EvAnnotationTextMarkup"
           glib:get-type="ev_annotation_text_markup_get_type"
           glib:type-struct="AnnotationTextMarkupClass">
      <source-position filename="libdocument/ev-annotation.h" line="89"/>
      <implements name="AnnotationMarkup"/>
      <constructor name="highlight_new"
                   c:identifier="ev_annotation_text_markup_highlight_new">
        <source-position filename="libdocument/ev-annotation.h" line="242"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="squiggly_new"
                   c:identifier="ev_annotation_text_markup_squiggly_new">
        <source-position filename="libdocument/ev-annotation.h" line="248"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="strike_out_new"
                   c:identifier="ev_annotation_text_markup_strike_out_new">
        <source-position filename="libdocument/ev-annotation.h" line="244"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="underline_new"
                   c:identifier="ev_annotation_text_markup_underline_new">
        <source-position filename="libdocument/ev-annotation.h" line="246"/>
        <return-value transfer-ownership="full">
          <type name="Annotation" c:type="EvAnnotation*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_markup_type"
              c:identifier="ev_annotation_text_markup_get_markup_type">
        <source-position filename="libdocument/ev-annotation.h" line="250"/>
        <return-value transfer-ownership="none">
          <type name="AnnotationTextMarkupType"
                c:type="EvAnnotationTextMarkupType"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <type name="AnnotationTextMarkup"
                  c:type="EvAnnotationTextMarkup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_markup_type"
              c:identifier="ev_annotation_text_markup_set_markup_type">
        <source-position filename="libdocument/ev-annotation.h" line="252"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="annot" transfer-ownership="none">
            <type name="AnnotationTextMarkup"
                  c:type="EvAnnotationTextMarkup*"/>
          </instance-parameter>
          <parameter name="markup_type" transfer-ownership="none">
            <type name="AnnotationTextMarkupType"
                  c:type="EvAnnotationTextMarkupType"/>
          </parameter>
        </parameters>
      </method>
      <property name="type"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="EV_ANNOTATION_TEXT_MARKUP_HIGHLIGHT">
        <type name="AnnotationTextMarkupType"/>
      </property>
    </class>
    <record name="AnnotationTextMarkupClass"
            c:type="EvAnnotationTextMarkupClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="AnnotationTextMarkup">
      <source-position filename="libdocument/ev-annotation.h" line="89"/>
    </record>
    <enumeration name="AnnotationTextMarkupType"
                 glib:type-name="EvAnnotationTextMarkupType"
                 glib:get-type="ev_annotation_text_markup_type_get_type"
                 c:type="EvAnnotationTextMarkupType">
      <member name="highlight"
              value="0"
              c:identifier="EV_ANNOTATION_TEXT_MARKUP_HIGHLIGHT"
              glib:nick="highlight"
              glib:name="EV_ANNOTATION_TEXT_MARKUP_HIGHLIGHT">
      </member>
      <member name="strike_out"
              value="1"
              c:identifier="EV_ANNOTATION_TEXT_MARKUP_STRIKE_OUT"
              glib:nick="strike-out"
              glib:name="EV_ANNOTATION_TEXT_MARKUP_STRIKE_OUT">
      </member>
      <member name="underline"
              value="2"
              c:identifier="EV_ANNOTATION_TEXT_MARKUP_UNDERLINE"
              glib:nick="underline"
              glib:name="EV_ANNOTATION_TEXT_MARKUP_UNDERLINE">
      </member>
      <member name="squiggly"
              value="3"
              c:identifier="EV_ANNOTATION_TEXT_MARKUP_SQUIGGLY"
              glib:nick="squiggly"
              glib:name="EV_ANNOTATION_TEXT_MARKUP_SQUIGGLY">
      </member>
    </enumeration>
    <enumeration name="AnnotationType"
                 glib:type-name="EvAnnotationType"
                 glib:get-type="ev_annotation_type_get_type"
                 c:type="EvAnnotationType">
      <member name="unknown"
              value="0"
              c:identifier="EV_ANNOTATION_TYPE_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_ANNOTATION_TYPE_UNKNOWN">
      </member>
      <member name="text"
              value="1"
              c:identifier="EV_ANNOTATION_TYPE_TEXT"
              glib:nick="text"
              glib:name="EV_ANNOTATION_TYPE_TEXT">
      </member>
      <member name="attachment"
              value="2"
              c:identifier="EV_ANNOTATION_TYPE_ATTACHMENT"
              glib:nick="attachment"
              glib:name="EV_ANNOTATION_TYPE_ATTACHMENT">
      </member>
      <member name="text_markup"
              value="3"
              c:identifier="EV_ANNOTATION_TYPE_TEXT_MARKUP"
              glib:nick="text-markup"
              glib:name="EV_ANNOTATION_TYPE_TEXT_MARKUP">
      </member>
    </enumeration>
    <enumeration name="AnnotationsOverMarkup"
                 glib:type-name="EvAnnotationsOverMarkup"
                 glib:get-type="ev_annotations_over_markup_get_type"
                 c:type="EvAnnotationsOverMarkup">
      <member name="not_implemented"
              value="0"
              c:identifier="EV_ANNOTATION_OVER_MARKUP_NOT_IMPLEMENTED"
              glib:nick="not-implemented"
              glib:name="EV_ANNOTATION_OVER_MARKUP_NOT_IMPLEMENTED">
      </member>
      <member name="unknown"
              value="1"
              c:identifier="EV_ANNOTATION_OVER_MARKUP_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_ANNOTATION_OVER_MARKUP_UNKNOWN">
      </member>
      <member name="yes"
              value="2"
              c:identifier="EV_ANNOTATION_OVER_MARKUP_YES"
              glib:nick="yes"
              glib:name="EV_ANNOTATION_OVER_MARKUP_YES">
      </member>
      <member name="not"
              value="3"
              c:identifier="EV_ANNOTATION_OVER_MARKUP_NOT"
              glib:nick="not"
              glib:name="EV_ANNOTATION_OVER_MARKUP_NOT">
      </member>
    </enumeration>
    <bitfield name="AnnotationsSaveMask"
              glib:type-name="EvAnnotationsSaveMask"
              glib:get-type="ev_annotations_save_mask_get_type"
              c:type="EvAnnotationsSaveMask">
      <member name="none"
              value="0"
              c:identifier="EV_ANNOTATIONS_SAVE_NONE"
              glib:nick="none"
              glib:name="EV_ANNOTATIONS_SAVE_NONE">
      </member>
      <member name="contents"
              value="1"
              c:identifier="EV_ANNOTATIONS_SAVE_CONTENTS"
              glib:nick="contents"
              glib:name="EV_ANNOTATIONS_SAVE_CONTENTS">
      </member>
      <member name="color"
              value="2"
              c:identifier="EV_ANNOTATIONS_SAVE_COLOR"
              glib:nick="color"
              glib:name="EV_ANNOTATIONS_SAVE_COLOR">
      </member>
      <member name="area"
              value="4"
              c:identifier="EV_ANNOTATIONS_SAVE_AREA"
              glib:nick="area"
              glib:name="EV_ANNOTATIONS_SAVE_AREA">
      </member>
      <member name="label"
              value="8"
              c:identifier="EV_ANNOTATIONS_SAVE_LABEL"
              glib:nick="label"
              glib:name="EV_ANNOTATIONS_SAVE_LABEL">
      </member>
      <member name="opacity"
              value="16"
              c:identifier="EV_ANNOTATIONS_SAVE_OPACITY"
              glib:nick="opacity"
              glib:name="EV_ANNOTATIONS_SAVE_OPACITY">
      </member>
      <member name="popup_rect"
              value="32"
              c:identifier="EV_ANNOTATIONS_SAVE_POPUP_RECT"
              glib:nick="popup-rect"
              glib:name="EV_ANNOTATIONS_SAVE_POPUP_RECT">
      </member>
      <member name="popup_is_open"
              value="64"
              c:identifier="EV_ANNOTATIONS_SAVE_POPUP_IS_OPEN"
              glib:nick="popup-is-open"
              glib:name="EV_ANNOTATIONS_SAVE_POPUP_IS_OPEN">
      </member>
      <member name="text_is_open"
              value="128"
              c:identifier="EV_ANNOTATIONS_SAVE_TEXT_IS_OPEN"
              glib:nick="text-is-open"
              glib:name="EV_ANNOTATIONS_SAVE_TEXT_IS_OPEN">
      </member>
      <member name="text_icon"
              value="256"
              c:identifier="EV_ANNOTATIONS_SAVE_TEXT_ICON"
              glib:nick="text-icon"
              glib:name="EV_ANNOTATIONS_SAVE_TEXT_ICON">
      </member>
      <member name="attachment"
              value="512"
              c:identifier="EV_ANNOTATIONS_SAVE_ATTACHMENT"
              glib:nick="attachment"
              glib:name="EV_ANNOTATIONS_SAVE_ATTACHMENT">
      </member>
      <member name="text_markup_type"
              value="1024"
              c:identifier="EV_ANNOTATIONS_SAVE_TEXT_MARKUP_TYPE"
              glib:nick="text-markup-type"
              glib:name="EV_ANNOTATIONS_SAVE_TEXT_MARKUP_TYPE">
      </member>
      <member name="all"
              value="2047"
              c:identifier="EV_ANNOTATIONS_SAVE_ALL"
              glib:nick="all"
              glib:name="EV_ANNOTATIONS_SAVE_ALL">
      </member>
    </bitfield>
    <interface name="AsyncRenderer"
               c:symbol-prefix="async_renderer"
               c:type="EvAsyncRenderer"
               glib:type-name="EvAsyncRenderer"
               glib:get-type="ev_async_renderer_get_type"
               glib:type-struct="AsyncRendererInterface">
      <source-position filename="libdocument/ev-async-renderer.h" line="56"/>
      <virtual-method name="render_finished">
        <source-position filename="libdocument/ev-async-renderer.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="renderer" transfer-ownership="none">
            <type name="AsyncRenderer" c:type="EvAsyncRenderer*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="render_pixbuf" invoker="render_pixbuf">
        <source-position filename="libdocument/ev-async-renderer.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="renderer" transfer-ownership="none">
            <type name="AsyncRenderer" c:type="EvAsyncRenderer*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="scale" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="rotation" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="render_pixbuf"
              c:identifier="ev_async_renderer_render_pixbuf">
        <source-position filename="libdocument/ev-async-renderer.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="renderer" transfer-ownership="none">
            <type name="AsyncRenderer" c:type="EvAsyncRenderer*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="scale" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="rotation" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <glib:signal name="render-finished" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf"/>
          </parameter>
        </parameters>
      </glib:signal>
    </interface>
    <record name="AsyncRendererInterface"
            c:type="EvAsyncRendererInterface"
            glib:is-gtype-struct-for="AsyncRenderer">
      <source-position filename="libdocument/ev-async-renderer.h" line="56"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="render_finished">
        <callback name="render_finished">
          <source-position filename="libdocument/ev-async-renderer.h"
                           line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="renderer" transfer-ownership="none">
              <type name="AsyncRenderer" c:type="EvAsyncRenderer*"/>
            </parameter>
            <parameter name="pixbuf" transfer-ownership="none">
              <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="render_pixbuf">
        <callback name="render_pixbuf">
          <source-position filename="libdocument/ev-async-renderer.h"
                           line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="renderer" transfer-ownership="none">
              <type name="AsyncRenderer" c:type="EvAsyncRenderer*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
            <parameter name="scale" transfer-ownership="none">
              <type name="gdouble" c:type="double"/>
            </parameter>
            <parameter name="rotation" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="Attachment"
           c:symbol-prefix="attachment"
           c:type="EvAttachment"
           parent="GObject.Object"
           glib:type-name="EvAttachment"
           glib:get-type="ev_attachment_get_type"
           glib:type-struct="AttachmentClass">
      <source-position filename="libdocument/ev-attachment.h" line="51"/>
      <constructor name="new" c:identifier="ev_attachment_new">
        <source-position filename="libdocument/ev-attachment.h" line="60"/>
        <return-value transfer-ownership="full">
          <type name="Attachment" c:type="EvAttachment*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="description" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="mtime" transfer-ownership="none">
            <type name="GLib.Time" c:type="GTime"/>
          </parameter>
          <parameter name="ctime" transfer-ownership="none">
            <type name="GLib.Time" c:type="GTime"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="error_quark" c:identifier="ev_attachment_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="get_creation_date"
              c:identifier="ev_attachment_get_creation_date">
        <source-position filename="libdocument/ev-attachment.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="GLib.Time" c:type="GTime"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_description"
              c:identifier="ev_attachment_get_description">
        <source-position filename="libdocument/ev-attachment.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_mime_type" c:identifier="ev_attachment_get_mime_type">
        <source-position filename="libdocument/ev-attachment.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modification_date"
              c:identifier="ev_attachment_get_modification_date">
        <source-position filename="libdocument/ev-attachment.h" line="75"/>
        <return-value transfer-ownership="none">
          <type name="GLib.Time" c:type="GTime"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="ev_attachment_get_name">
        <source-position filename="libdocument/ev-attachment.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="open" c:identifier="ev_attachment_open" throws="1">
        <source-position filename="libdocument/ev-attachment.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
          <parameter name="screen" transfer-ownership="none">
            <type name="Gdk.Screen" c:type="GdkScreen*"/>
          </parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="save" c:identifier="ev_attachment_save" throws="1">
        <source-position filename="libdocument/ev-attachment.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="attachment" transfer-ownership="none">
            <type name="Attachment" c:type="EvAttachment*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
        </parameters>
      </method>
      <property name="ctime"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gulong" c:type="gulong"/>
      </property>
      <property name="data"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="description"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="mtime"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gulong" c:type="gulong"/>
      </property>
      <property name="name"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="size"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <field name="base_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="AttachmentClass"
            c:type="EvAttachmentClass"
            glib:is-gtype-struct-for="Attachment">
      <source-position filename="libdocument/ev-attachment.h" line="51"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <function-macro name="BACKEND_IMPLEMENT_INTERFACE"
                    c:identifier="EV_BACKEND_IMPLEMENT_INTERFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="318"/>
      <parameters>
        <parameter name="TYPE_IFACE">
        </parameter>
        <parameter name="iface_init">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BACKEND_REGISTER"
                    c:identifier="EV_BACKEND_REGISTER"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="388"/>
      <parameters>
        <parameter name="BackendName">
        </parameter>
        <parameter name="backend_name">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BACKEND_REGISTER_WITH_CODE"
                    c:identifier="EV_BACKEND_REGISTER_WITH_CODE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="333"/>
      <parameters>
        <parameter name="BackendName">
        </parameter>
        <parameter name="backend_name">
        </parameter>
        <parameter name="CODE">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CHECK_VERSION"
                    c:identifier="EV_CHECK_VERSION"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="libdocument/ev-version.h"
           line="45">Macro to check the library version at compile time.
It returns &lt;literal&gt;1&lt;/literal&gt; if the version of EV is greater or
equal to the required one, and &lt;literal&gt;0&lt;/literal&gt; otherwise.</doc>
      <source-position filename="libdocument/ev-version.h" line="54"/>
      <parameters>
        <parameter name="major">
          <doc xml:space="preserve"
               filename="libdocument/ev-version.h"
               line="47">required major version</doc>
        </parameter>
        <parameter name="minor">
          <doc xml:space="preserve"
               filename="libdocument/ev-version.h"
               line="48">required minor version</doc>
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="CompressionType"
                 glib:type-name="EvCompressionType"
                 glib:get-type="ev_compression_type_get_type"
                 c:type="EvCompressionType">
      <member name="none"
              value="0"
              c:identifier="EV_COMPRESSION_NONE"
              glib:nick="none"
              glib:name="EV_COMPRESSION_NONE">
      </member>
      <member name="bzip2"
              value="1"
              c:identifier="EV_COMPRESSION_BZIP2"
              glib:nick="bzip2"
              glib:name="EV_COMPRESSION_BZIP2">
      </member>
      <member name="gzip"
              value="2"
              c:identifier="EV_COMPRESSION_GZIP"
              glib:nick="gzip"
              glib:name="EV_COMPRESSION_GZIP">
      </member>
      <member name="lzma"
              value="3"
              c:identifier="EV_COMPRESSION_LZMA"
              glib:nick="lzma"
              glib:name="EV_COMPRESSION_LZMA">
      </member>
    </enumeration>
    <function-macro name="DEPRECATED_FOR"
                    c:identifier="EV_DEPRECATED_FOR"
                    introspectable="0">
      <source-position filename="libdocument/ev-macros.h" line="23"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT"
                    c:identifier="EV_DOCUMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="40"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ANNOTATIONS"
                    c:identifier="EV_DOCUMENT_ANNOTATIONS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ANNOTATIONS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_ANNOTATIONS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="41"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ANNOTATIONS_IFACE"
                    c:identifier="EV_DOCUMENT_ANNOTATIONS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ATTACHMENTS"
                    c:identifier="EV_DOCUMENT_ATTACHMENTS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="35"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ATTACHMENTS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_ATTACHMENTS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="39"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_ATTACHMENTS_IFACE"
                    c:identifier="EV_DOCUMENT_ATTACHMENTS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="36"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_CLASS"
                    c:identifier="EV_DOCUMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="41"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FIND"
                    c:identifier="EV_DOCUMENT_FIND"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-find.h" line="35"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FIND_GET_IFACE"
                    c:identifier="EV_DOCUMENT_FIND_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-find.h" line="39"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FIND_IFACE"
                    c:identifier="EV_DOCUMENT_FIND_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-find.h" line="36"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FONTS"
                    c:identifier="EV_DOCUMENT_FONTS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-fonts.h" line="42"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FONTS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_FONTS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-fonts.h" line="46"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FONTS_IFACE"
                    c:identifier="EV_DOCUMENT_FONTS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-fonts.h" line="43"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FORMS"
                    c:identifier="EV_DOCUMENT_FORMS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-forms.h" line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FORMS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_FORMS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-forms.h" line="41"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_FORMS_IFACE"
                    c:identifier="EV_DOCUMENT_FORMS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-forms.h" line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_GET_CLASS"
                    c:identifier="EV_DOCUMENT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="44"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_IMAGES"
                    c:identifier="EV_DOCUMENT_IMAGES"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-images.h" line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_IMAGES_GET_IFACE"
                    c:identifier="EV_DOCUMENT_IMAGES_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-images.h" line="42"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_IMAGES_IFACE"
                    c:identifier="EV_DOCUMENT_IMAGES_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-images.h" line="39"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LAYERS"
                    c:identifier="EV_DOCUMENT_LAYERS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-layers.h" line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LAYERS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_LAYERS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-layers.h" line="41"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LAYERS_IFACE"
                    c:identifier="EV_DOCUMENT_LAYERS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-layers.h" line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LINKS"
                    c:identifier="EV_DOCUMENT_LINKS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-links.h" line="42"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LINKS_GET_IFACE"
                    c:identifier="EV_DOCUMENT_LINKS_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-links.h" line="46"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_LINKS_IFACE"
                    c:identifier="EV_DOCUMENT_LINKS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-links.h" line="43"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_MEDIA"
                    c:identifier="EV_DOCUMENT_MEDIA"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-media.h" line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_MEDIA_GET_IFACE"
                    c:identifier="EV_DOCUMENT_MEDIA_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-media.h" line="42"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_MEDIA_IFACE"
                    c:identifier="EV_DOCUMENT_MEDIA_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-media.h" line="40"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_PRINT"
                    c:identifier="EV_DOCUMENT_PRINT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-print.h" line="36"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_PRINT_GET_IFACE"
                    c:identifier="EV_DOCUMENT_PRINT_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-print.h" line="40"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_PRINT_IFACE"
                    c:identifier="EV_DOCUMENT_PRINT_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-print.h" line="37"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_SECURITY"
                    c:identifier="EV_DOCUMENT_SECURITY"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-security.h"
                       line="42"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_SECURITY_GET_IFACE"
                    c:identifier="EV_DOCUMENT_SECURITY_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-security.h"
                       line="46"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_SECURITY_IFACE"
                    c:identifier="EV_DOCUMENT_SECURITY_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-security.h"
                       line="43"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TEXT"
                    c:identifier="EV_DOCUMENT_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-text.h" line="36"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TEXT_GET_IFACE"
                    c:identifier="EV_DOCUMENT_TEXT_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-text.h" line="40"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TEXT_IFACE"
                    c:identifier="EV_DOCUMENT_TEXT_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-text.h" line="37"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TRANSITION"
                    c:identifier="EV_DOCUMENT_TRANSITION"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="36"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TRANSITION_GET_IFACE"
                    c:identifier="EV_DOCUMENT_TRANSITION_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="40"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DOCUMENT_TRANSITION_IFACE"
                    c:identifier="EV_DOCUMENT_TRANSITION_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="37"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Document"
           c:symbol-prefix="document"
           c:type="EvDocument"
           parent="GObject.Object"
           abstract="1"
           glib:type-name="EvDocument"
           glib:get-type="ev_document_get_type"
           glib:type-struct="DocumentClass">
      <source-position filename="libdocument/ev-document.h" line="137"/>
      <function name="doc_mutex_lock"
                c:identifier="ev_document_doc_mutex_lock">
        <source-position filename="libdocument/ev-document.h" line="146"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="doc_mutex_trylock"
                c:identifier="ev_document_doc_mutex_trylock">
        <source-position filename="libdocument/ev-document.h" line="150"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </function>
      <function name="doc_mutex_unlock"
                c:identifier="ev_document_doc_mutex_unlock">
        <source-position filename="libdocument/ev-document.h" line="148"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="factory_add_filters"
                c:identifier="ev_document_factory_add_filters">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="612">Adds some file filters to @chooser.

Always add a "All documents" format.

If @document is not %NULL, adds a #GtkFileFilter for @document's MIME type.

If @document is %NULL, adds a #GtkFileFilter for each document type that evince
can handle.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="614">a #GtkFileChooser</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="615">a #EvDocument, or %NULL</doc>
            <type name="Document" c:type="EvDocument*"/>
          </parameter>
        </parameters>
      </function>
      <function name="factory_get_document"
                c:identifier="ev_document_factory_get_document"
                throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="383">Creates a #EvDocument for the document at @uri; or, if no backend handling
the document's type is found, or an error occurred on opening the document,
returns %NULL and fills in @error.
If the document is encrypted, it is returned but also @error is set to
%EV_DOCUMENT_ERROR_ENCRYPTED.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="394">a new #EvDocument, or %NULL</doc>
          <type name="Document" c:type="EvDocument*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="385">an URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </function>
      <function name="factory_get_document_for_fd"
                c:identifier="ev_document_factory_get_document_for_fd"
                version="42.0"
                throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="538">Synchronously creates a #EvDocument for the document from @fd using the backend
for loading documents of type @mime_type; or, if the backend does not support
loading from file descriptors, or an error occurred on opening the document,
returns %NULL and fills in @error.
If the document is encrypted, it is returned but also @error is set to
%EV_DOCUMENT_ERROR_ENCRYPTED.

If the mime type cannot be inferred from the file descriptor, and @mime_type is %NULL,
an error is returned.

Note that this function takes ownership of @fd; you must not ever
operate on it again. It will be closed automatically if the document
is destroyed, or if this function returns %NULL.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="560">a new #EvDocument, or %NULL</doc>
          <type name="Document" c:type="EvDocument*"/>
        </return-value>
        <parameters>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="540">a file descriptor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="mime_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="541">the mime type</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="542">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="543">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </function>
      <function name="factory_get_document_for_gfile"
                c:identifier="ev_document_factory_get_document_for_gfile"
                version="3.6"
                throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="404">Synchronously creates a #EvDocument for the document at @file; or, if no
backend handling the document's type is found, or an error occurred on
opening the document, returns %NULL and fills in @error.
If the document is encrypted, it is returned but also @error is set to
%EV_DOCUMENT_ERROR_ENCRYPTED.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="43"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="417">a new #EvDocument, or %NULL</doc>
          <type name="Document" c:type="EvDocument*"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="406">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="407">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="408">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </function>
      <function name="factory_get_document_for_stream"
                c:identifier="ev_document_factory_get_document_for_stream"
                version="3.6"
                throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="467">Synchronously creates a #EvDocument for the document from @stream; or, if no
backend handling the document's type is found, or an error occurred
on opening the document, returns %NULL and fills in @error.
If the document is encrypted, it is returned but also @error is set to
%EV_DOCUMENT_ERROR_ENCRYPTED.

If @mime_type is non-%NULL, this overrides any type inferred from the stream.
If the mime type cannot be inferred from the stream, and @mime_type is %NULL,
an error is returned.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="48"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="485">a new #EvDocument, or %NULL</doc>
          <type name="Document" c:type="EvDocument*"/>
        </return-value>
        <parameters>
          <parameter name="stream" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="469">a #GInputStream</doc>
            <type name="Gio.InputStream" c:type="GInputStream*"/>
          </parameter>
          <parameter name="mime_type"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="470">a mime type hint</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="471">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="472">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </function>
      <function name="factory_get_document_full"
                c:identifier="ev_document_factory_get_document_full"
                throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="274">Creates a #EvDocument for the document at @uri; or, if no backend handling
the document's type is found, or an error occurred on opening the document,
returns %NULL and fills in @error.
If the document is encrypted, it is returned but also @error is set to
%EV_DOCUMENT_ERROR_ENCRYPTED.</doc>
        <source-position filename="libdocument/ev-document-factory.h"
                         line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="286">a new #EvDocument, or %NULL</doc>
          <type name="Document" c:type="EvDocument*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="276">an URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-factory.c"
                 line="277">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
        </parameters>
      </function>
      <function name="fc_mutex_lock" c:identifier="ev_document_fc_mutex_lock">
        <source-position filename="libdocument/ev-document.h" line="154"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="fc_mutex_trylock"
                c:identifier="ev_document_fc_mutex_trylock">
        <source-position filename="libdocument/ev-document.h" line="158"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </function>
      <function name="fc_mutex_unlock"
                c:identifier="ev_document_fc_mutex_unlock">
        <source-position filename="libdocument/ev-document.h" line="156"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="misc_format_date"
                c:identifier="ev_document_misc_format_date"
                deprecated="1"
                deprecated-version="3.38">
        <doc-deprecated xml:space="preserve">use ev_document_misc_format_datetime instead as GTime is
                  deprecated because it is not year-2038 safe.</doc-deprecated>
        <source-position filename="libdocument/ev-document-misc.h" line="103"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="605">a locale specific date and time representation.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <parameter name="utime" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="603">a #GTime</doc>
            <type name="GLib.Time" c:type="GTime"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_format_datetime"
                c:identifier="ev_document_misc_format_datetime"
                version="3.38">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-misc.c"
             line="619">Determine the preferred date and time representation for the current locale
for @dt.</doc>
        <source-position filename="libdocument/ev-document-misc.h" line="107"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="626">a new allocated string or NULL in the case
that there was an error (such as a format specifier not being supported
in the current locale). The string should be freed with g_free().</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <parameter name="dt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="621">a #GDateTime</doc>
            <type name="GLib.DateTime" c:type="GDateTime*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_loading_thumbnail"
                c:identifier="ev_document_misc_get_loading_thumbnail">
        <source-position filename="libdocument/ev-document-misc.h" line="42"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="119">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="115">the desired width</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="116">the desired height</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="inverted_colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="117">whether to invert colors</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_page_border_size"
                c:identifier="ev_document_misc_get_page_border_size">
        <source-position filename="libdocument/ev-document-misc.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="page_width" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="page_height" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="border" transfer-ownership="none">
            <type name="Gtk.Border" c:type="GtkBorder*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_pointer_position"
                c:identifier="ev_document_misc_get_pointer_position">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-misc.c"
             line="638">Get the pointer's x and y position relative to @widget.</doc>
        <source-position filename="libdocument/ev-document-misc.h" line="110"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="640">a #GtkWidget</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="x"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="641">the pointer's "x" position, or -1 if the position is not
  available</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="y"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="643">the pointer's "y" position, or -1 if the position is not
  available</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_screen_dpi"
                c:identifier="ev_document_misc_get_screen_dpi"
                deprecated="1"
                deprecated-version="3.36">
        <doc-deprecated xml:space="preserve">This uses a deprecated GDK API. Use
ev_document_misc_get_widget_dpi() instead, which uses GDK's per-monitor
information.</doc-deprecated>
        <source-position filename="libdocument/ev-document-misc.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="525">The DPI of @screen, or 96 if the DPI is not available</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <parameter name="screen" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="523">a #GdkScreen</doc>
            <type name="Gdk.Screen" c:type="GdkScreen*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_thumbnail_frame"
                c:identifier="ev_document_misc_get_thumbnail_frame">
        <source-position filename="libdocument/ev-document-misc.h" line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="103">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="99">the desired width</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="100">the desired height</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="source_pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="101">a #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_get_widget_dpi"
                c:identifier="ev_document_misc_get_widget_dpi">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-misc.c"
             line="551">Returns sensible guess for DPI of monitor on which given widget has been
realized. If HiDPI display, use 192, else 96.
Returns 96 as fallback value.</doc>
        <source-position filename="libdocument/ev-document-misc.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="559">DPI as gdouble</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="553">a #GtkWidget</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_invert_pixbuf"
                c:identifier="ev_document_misc_invert_pixbuf">
        <source-position filename="libdocument/ev-document-misc.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_invert_surface"
                c:identifier="ev_document_misc_invert_surface">
        <source-position filename="libdocument/ev-document-misc.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="surface" transfer-ownership="none">
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_paint_one_page"
                c:identifier="ev_document_misc_paint_one_page"
                deprecated="1"
                deprecated-version="3.10.">
        <source-position filename="libdocument/ev-document-misc.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="323">a #cairo_tEvannotation
@widget a #GtkWidget</doc>
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="325">a #GdkRectangle</doc>
            <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
          </parameter>
          <parameter name="border" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="326">a #GtkBorder</doc>
            <type name="Gtk.Border" c:type="GtkBorder*"/>
          </parameter>
          <parameter name="highlight" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="327">whether to highlight the text</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="inverted_colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="328">whether to invert colors</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_pixbuf_from_surface"
                c:identifier="ev_document_misc_pixbuf_from_surface">
        <source-position filename="libdocument/ev-document-misc.h" line="83"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="405">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <parameter name="surface" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="403">a #cairo_surface_t</doc>
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_render_loading_thumbnail"
                c:identifier="ev_document_misc_render_loading_thumbnail"
                version="3.8">
        <source-position filename="libdocument/ev-document-misc.h" line="47"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="215">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="210">a #GtkWidget to use for style information</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="211">the desired width</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="212">the desired height</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="inverted_colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="213">whether to invert colors</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_render_loading_thumbnail_surface"
                c:identifier="ev_document_misc_render_loading_thumbnail_surface"
                version="3.14">
        <source-position filename="libdocument/ev-document-misc.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="242">a #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="237">a #GtkWidget to use for style information</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="238">the desired width</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="239">the desired height</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="inverted_colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="240">whether to invert colors</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_render_thumbnail_surface_with_frame"
                c:identifier="ev_document_misc_render_thumbnail_surface_with_frame"
                version="3.14">
        <source-position filename="libdocument/ev-document-misc.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="287">a #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="282">a #GtkWidget to use for style information</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="source_surface" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="283">a #cairo_surface_t</doc>
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="284">the desired width</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="285">the desired height</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_render_thumbnail_with_frame"
                c:identifier="ev_document_misc_render_thumbnail_with_frame"
                version="3.8">
        <source-position filename="libdocument/ev-document-misc.h" line="52"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-misc.c"
               line="260">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="257">a #GtkWidget to use for style information</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="source_pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-misc.c"
                 line="258">a #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_surface_from_pixbuf"
                c:identifier="ev_document_misc_surface_from_pixbuf">
        <source-position filename="libdocument/ev-document-misc.h" line="81"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </function>
      <function name="misc_surface_rotate_and_scale"
                c:identifier="ev_document_misc_surface_rotate_and_scale">
        <source-position filename="libdocument/ev-document-misc.h" line="85"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <parameter name="surface" transfer-ownership="none">
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </parameter>
          <parameter name="dest_width" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="dest_height" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="dest_rotation" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="get_backend_info" invoker="get_backend_info">
        <source-position filename="libdocument/ev-document.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="info" transfer-ownership="none">
            <type name="DocumentBackendInfo" c:type="EvDocumentBackendInfo*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_info" invoker="get_info">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="930">Returns the #EvDocumentInfo for the document.</doc>
        <source-position filename="libdocument/ev-document.h" line="114"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="936">a #EvDocumentInfo</doc>
          <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="932">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_n_pages" invoker="get_n_pages">
        <source-position filename="libdocument/ev-document.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_page" invoker="get_page">
        <source-position filename="libdocument/ev-document.h" line="102"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="664">Newly created #EvPage for the given index.</doc>
          <type name="Page" c:type="EvPage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="661">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="index" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="662">index of page</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_page_label" invoker="get_page_label">
        <source-position filename="libdocument/ev-document.h" line="108"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_page_size" invoker="get_page_size">
        <source-position filename="libdocument/ev-document.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="849">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page_index" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="850">index of page</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="width"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="851">return location for the width of the page, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
          <parameter name="height"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="852">return location for the height of the page, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_thumbnail" invoker="get_thumbnail">
        <source-position filename="libdocument/ev-document.h" line="112"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="990">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="987">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="988">an #EvRenderContext</doc>
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_thumbnail_surface"
                      invoker="get_thumbnail_surface"
                      version="3.14">
        <source-position filename="libdocument/ev-document.h" line="130"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="1009">a #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="1006">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="1007">an #EvRenderContext</doc>
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="load" invoker="load" throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="426">Loads @document from @uri.

On failure, %FALSE is returned and @error is filled in.
If the document is encrypted, EV_DEFINE_ERROR_ENCRYPTED is returned.
If the backend cannot load the specific document, EV_DOCUMENT_ERROR_INVALID
is returned. If the backend does not support the format for the document's
contents, EV_DOCUMENT_ERROR_UNSUPPORTED_CONTENT is returned. Other errors
are possible too, depending on the backend used to load the document and
the URI, e.g. #GIOError, #GFileError, and #GConvertError.</doc>
        <source-position filename="libdocument/ev-document.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="442">%TRUE on success, or %FALSE on failure.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="428">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="429">the document's URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="load_fd"
                      invoker="load_fd"
                      version="42.0"
                      throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="553">Synchronously loads the document from @fd, which must refer to
a regular file.

Note that this function takes ownership of @fd; you must not ever
operate on it again. It will be closed automatically if the document
is destroyed, or if this function returns %NULL.

See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="132"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="570">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="555">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="556">a file descriptor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="557">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="558">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="load_gfile"
                      invoker="load_gfile"
                      version="3.6"
                      throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="501">Synchronously loads the document from @file.
See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="125"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="512">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="503">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="504">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="505">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="506">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="load_stream"
                      invoker="load_stream"
                      version="3.6"
                      throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="453">Synchronously loads the document from @stream.
See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="120"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="464">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="455">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="stream" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="456">a #GInputStream</doc>
            <type name="Gio.InputStream" c:type="GInputStream*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="457">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="458">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="render" invoker="render">
        <source-position filename="libdocument/ev-document.h" line="110"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save" invoker="save" throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="639">Saves @document to @uri.</doc>
        <source-position filename="libdocument/ev-document.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="647">%TRUE on success, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="641">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="642">the target URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="support_synctex">
        <source-position filename="libdocument/ev-document.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="check_dimensions"
              c:identifier="ev_document_check_dimensions">
        <source-position filename="libdocument/ev-document.h" line="240"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="find_page_by_label"
              c:identifier="ev_document_find_page_by_label">
        <source-position filename="libdocument/ev-document.h" line="246"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page_label" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="page_index" transfer-ownership="none">
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_backend_info"
              c:identifier="ev_document_get_backend_info">
        <source-position filename="libdocument/ev-document.h" line="163"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="info" transfer-ownership="none">
            <type name="DocumentBackendInfo" c:type="EvDocumentBackendInfo*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_info" c:identifier="ev_document_get_info">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="930">Returns the #EvDocumentInfo for the document.</doc>
        <source-position filename="libdocument/ev-document.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="936">a #EvDocumentInfo</doc>
          <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="932">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_max_label_len"
              c:identifier="ev_document_get_max_label_len">
        <source-position filename="libdocument/ev-document.h" line="242"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_max_page_size"
              c:identifier="ev_document_get_max_page_size">
        <source-position filename="libdocument/ev-document.h" line="232"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_min_page_size"
              c:identifier="ev_document_get_min_page_size">
        <source-position filename="libdocument/ev-document.h" line="236"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_modified"
              c:identifier="ev_document_get_modified"
              glib:get-property="modified"
              version="3.28">
        <source-position filename="libdocument/ev-document.h" line="166"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="196">%TRUE iff the document has been modified.

You can monitor changes to the modification state by connecting to the
notify::modified signal on @document.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="194">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_pages" c:identifier="ev_document_get_n_pages">
        <source-position filename="libdocument/ev-document.h" line="202"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page" c:identifier="ev_document_get_page">
        <source-position filename="libdocument/ev-document.h" line="204"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="664">Newly created #EvPage for the given index.</doc>
          <type name="Page" c:type="EvPage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="661">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="index" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="662">index of page</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_page_label" c:identifier="ev_document_get_page_label">
        <source-position filename="libdocument/ev-document.h" line="212"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page_index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_page_size" c:identifier="ev_document_get_page_size">
        <source-position filename="libdocument/ev-document.h" line="207"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="849">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page_index" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="850">index of page</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="width"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="851">return location for the width of the page, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
          <parameter name="height"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="852">return location for the height of the page, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_size" c:identifier="ev_document_get_size">
        <source-position filename="libdocument/ev-document.h" line="224"/>
        <return-value transfer-ownership="none">
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_thumbnail" c:identifier="ev_document_get_thumbnail">
        <source-position filename="libdocument/ev-document.h" line="218"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="990">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="987">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="988">an #EvRenderContext</doc>
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_thumbnail_surface"
              c:identifier="ev_document_get_thumbnail_surface"
              version="3.14">
        <source-position filename="libdocument/ev-document.h" line="221"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="1009">a #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="1006">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="1007">an #EvRenderContext</doc>
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_title" c:identifier="ev_document_get_title">
        <source-position filename="libdocument/ev-document.h" line="228"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_uri" c:identifier="ev_document_get_uri">
        <source-position filename="libdocument/ev-document.h" line="226"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_synctex" c:identifier="ev_document_has_synctex">
        <source-position filename="libdocument/ev-document.h" line="250"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_text_page_labels"
              c:identifier="ev_document_has_text_page_labels">
        <source-position filename="libdocument/ev-document.h" line="244"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_page_size_uniform"
              c:identifier="ev_document_is_page_size_uniform">
        <source-position filename="libdocument/ev-document.h" line="230"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load" c:identifier="ev_document_load" throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="426">Loads @document from @uri.

On failure, %FALSE is returned and @error is filled in.
If the document is encrypted, EV_DEFINE_ERROR_ENCRYPTED is returned.
If the backend cannot load the specific document, EV_DOCUMENT_ERROR_INVALID
is returned. If the backend does not support the format for the document's
contents, EV_DOCUMENT_ERROR_UNSUPPORTED_CONTENT is returned. Other errors
are possible too, depending on the backend used to load the document and
the URI, e.g. #GIOError, #GFileError, and #GConvertError.</doc>
        <source-position filename="libdocument/ev-document.h" line="171"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="442">%TRUE on success, or %FALSE on failure.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="428">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="429">the document's URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_fd"
              c:identifier="ev_document_load_fd"
              version="42.0"
              throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="553">Synchronously loads the document from @fd, which must refer to
a regular file.

Note that this function takes ownership of @fd; you must not ever
operate on it again. It will be closed automatically if the document
is destroyed, or if this function returns %NULL.

See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="192"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="570">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="555">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="556">a file descriptor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="557">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="558">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_full" c:identifier="ev_document_load_full" throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="371">Loads @document from @uri.

On failure, %FALSE is returned and @error is filled in.
If the document is encrypted, EV_DEFINE_ERROR_ENCRYPTED is returned.
If the backend cannot load the specific document, EV_DOCUMENT_ERROR_INVALID
is returned. Other errors are possible too, depending on the backend
used to load the document and the URI, e.g. #GIOError, #GFileError, and
#GConvertError.</doc>
        <source-position filename="libdocument/ev-document.h" line="175"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="387">%TRUE on success, or %FALSE on failure.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="373">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="374">the document's URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="375">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_gfile"
              c:identifier="ev_document_load_gfile"
              version="3.6"
              throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="501">Synchronously loads the document from @file.
See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="186"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="512">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="503">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="504">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="505">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="506">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_stream"
              c:identifier="ev_document_load_stream"
              version="3.6"
              throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="453">Synchronously loads the document from @stream.
See ev_document_load() for more information.</doc>
        <source-position filename="libdocument/ev-document.h" line="180"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="464">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="455">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="stream" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="456">a #GInputStream</doc>
            <type name="Gio.InputStream" c:type="GInputStream*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="457">flags from #EvDocumentLoadFlags</doc>
            <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="458">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="render" c:identifier="ev_document_render">
        <source-position filename="libdocument/ev-document.h" line="215"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save" c:identifier="ev_document_save" throws="1">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="639">Saves @document to @uri.</doc>
        <source-position filename="libdocument/ev-document.h" line="198"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="647">%TRUE on success, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="641">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="642">the target URI</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_modified"
              c:identifier="ev_document_set_modified"
              glib:set-property="modified"
              version="3.28">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="211">Set the @document modification state as @modified.</doc>
        <source-position filename="libdocument/ev-document.h" line="168"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="213">an #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="modified" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="214">a boolean value to set the document as modified or not.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="synctex_backward_search"
              c:identifier="ev_document_synctex_backward_search">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="691">Peforms a Synctex backward search to obtain the TeX input file, line and
(possibly) column  corresponding to the  position (@x,@y) (in 72dpi
coordinates) in the  @page of @document.</doc>
        <source-position filename="libdocument/ev-document.h" line="253"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="702">A pointer to the EvSourceLink structure that holds the result. @NULL if synctex
is not enabled for the document or no result is found.
The EvSourceLink pointer should be freed with g_free after it is used.</doc>
          <type name="SourceLink" c:type="EvSourceLink*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="693">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="page_index" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="694">the target page</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="695">X coordinate</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="696">Y coordinate</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="synctex_forward_search"
              c:identifier="ev_document_synctex_forward_search"
              introspectable="0">
        <doc xml:space="preserve"
             filename="libdocument/ev-document.c"
             line="742">Peforms a Synctex forward search to obtain the area in the document
corresponding to the position (line and column in @source_link) in
the source Tex file.</doc>
        <source-position filename="libdocument/ev-document.h" line="260"/>
        <return-value>
          <doc xml:space="preserve"
               filename="libdocument/ev-document.c"
               line="751">An EvMapping with the page number and area corresponding to
the given line in the source file. It must be free with g_free when done</doc>
          <type name="Mapping" c:type="EvMapping*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="744">a #EvDocument</doc>
            <type name="Document" c:type="EvDocument*"/>
          </instance-parameter>
          <parameter name="source_link" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="745">a #EvSourceLink</doc>
            <type name="SourceLink" c:type="EvSourceLink*"/>
          </parameter>
        </parameters>
      </method>
      <property name="modified"
                writable="1"
                transfer-ownership="none"
                setter="set_modified"
                getter="get_modified"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="base">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="DocumentPrivate" c:type="EvDocumentPrivate*"/>
      </field>
    </class>
    <interface name="DocumentAnnotations"
               c:symbol-prefix="document_annotations"
               c:type="EvDocumentAnnotations"
               glib:type-name="EvDocumentAnnotations"
               glib:get-type="ev_document_annotations_get_type"
               glib:type-struct="DocumentAnnotationsInterface">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="99"/>
      <virtual-method name="add_annotation" invoker="add_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="rect" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="document_is_modified"
                      invoker="document_is_modified">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="86"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_annotations" invoker="get_annotations">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="84"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="over_markup" invoker="over_markup">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="95"/>
        <return-value transfer-ownership="none">
          <type name="AnnotationsOverMarkup" c:type="EvAnnotationsOverMarkup"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="x" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="remove_annotation" invoker="remove_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save_annotation" invoker="save_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="mask" transfer-ownership="none">
            <type name="AnnotationsSaveMask" c:type="EvAnnotationsSaveMask"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_annotation"
              c:identifier="ev_document_annotations_add_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="rect" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="can_add_annotation"
              c:identifier="ev_document_annotations_can_add_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="121"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="can_remove_annotation"
              c:identifier="ev_document_annotations_can_remove_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="123"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="document_is_modified"
              c:identifier="ev_document_annotations_document_is_modified">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="107"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_annotations"
              c:identifier="ev_document_annotations_get_annotations">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="104"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="over_markup"
              c:identifier="ev_document_annotations_over_markup">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="125"/>
        <return-value transfer-ownership="none">
          <type name="AnnotationsOverMarkup" c:type="EvAnnotationsOverMarkup"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="x" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_annotation"
              c:identifier="ev_document_annotations_remove_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_annotation"
              c:identifier="ev_document_annotations_save_annotation">
        <source-position filename="libdocument/ev-document-annotations.h"
                         line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_annots" transfer-ownership="none">
            <type name="DocumentAnnotations" c:type="EvDocumentAnnotations*"/>
          </instance-parameter>
          <parameter name="annot" transfer-ownership="none">
            <type name="Annotation" c:type="EvAnnotation*"/>
          </parameter>
          <parameter name="mask" transfer-ownership="none">
            <type name="AnnotationsSaveMask" c:type="EvAnnotationsSaveMask"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentAnnotationsInterface"
            c:type="EvDocumentAnnotationsInterface"
            glib:is-gtype-struct-for="DocumentAnnotations">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="99"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_annotations">
        <callback name="get_annotations">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="84"/>
          <return-value transfer-ownership="full">
            <type name="MappingList" c:type="EvMappingList*"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="document_is_modified">
        <callback name="document_is_modified">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="86"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_annotation">
        <callback name="add_annotation">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="87"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
            <parameter name="annot" transfer-ownership="none">
              <type name="Annotation" c:type="EvAnnotation*"/>
            </parameter>
            <parameter name="rect" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="save_annotation">
        <callback name="save_annotation">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="90"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
            <parameter name="annot" transfer-ownership="none">
              <type name="Annotation" c:type="EvAnnotation*"/>
            </parameter>
            <parameter name="mask" transfer-ownership="none">
              <type name="AnnotationsSaveMask" c:type="EvAnnotationsSaveMask"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="remove_annotation">
        <callback name="remove_annotation">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="93"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
            <parameter name="annot" transfer-ownership="none">
              <type name="Annotation" c:type="EvAnnotation*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="over_markup">
        <callback name="over_markup">
          <source-position filename="libdocument/ev-document-annotations.h"
                           line="95"/>
          <return-value transfer-ownership="none">
            <type name="AnnotationsOverMarkup"
                  c:type="EvAnnotationsOverMarkup"/>
          </return-value>
          <parameters>
            <parameter name="document_annots" transfer-ownership="none">
              <type name="DocumentAnnotations"
                    c:type="EvDocumentAnnotations*"/>
            </parameter>
            <parameter name="annot" transfer-ownership="none">
              <type name="Annotation" c:type="EvAnnotation*"/>
            </parameter>
            <parameter name="x" transfer-ownership="none">
              <type name="gdouble" c:type="gdouble"/>
            </parameter>
            <parameter name="y" transfer-ownership="none">
              <type name="gdouble" c:type="gdouble"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentAttachments"
               c:symbol-prefix="document_attachments"
               c:type="EvDocumentAttachments"
               glib:type-name="EvDocumentAttachments"
               glib:get-type="ev_document_attachments_get_type"
               glib:type-struct="DocumentAttachmentsInterface">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="51"/>
      <virtual-method name="get_attachments" invoker="get_attachments">
        <source-position filename="libdocument/ev-document-attachments.h"
                         line="50"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-attachments.c"
               line="45">a list of #EvAttachment objects</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Attachment"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_attachments"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-attachments.c"
                 line="43">an #EvDocumentAttachments</doc>
            <type name="DocumentAttachments" c:type="EvDocumentAttachments*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="has_attachments" invoker="has_attachments">
        <source-position filename="libdocument/ev-document-attachments.h"
                         line="49"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_attachments"
                              transfer-ownership="none">
            <type name="DocumentAttachments" c:type="EvDocumentAttachments*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_attachments"
              c:identifier="ev_document_attachments_get_attachments">
        <source-position filename="libdocument/ev-document-attachments.h"
                         line="59"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-attachments.c"
               line="45">a list of #EvAttachment objects</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Attachment"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_attachments"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-attachments.c"
                 line="43">an #EvDocumentAttachments</doc>
            <type name="DocumentAttachments" c:type="EvDocumentAttachments*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_attachments"
              c:identifier="ev_document_attachments_has_attachments">
        <source-position filename="libdocument/ev-document-attachments.h"
                         line="57"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_attachments"
                              transfer-ownership="none">
            <type name="DocumentAttachments" c:type="EvDocumentAttachments*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentAttachmentsInterface"
            c:type="EvDocumentAttachmentsInterface"
            glib:is-gtype-struct-for="DocumentAttachments">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="51"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="has_attachments">
        <callback name="has_attachments">
          <source-position filename="libdocument/ev-document-attachments.h"
                           line="49"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_attachments" transfer-ownership="none">
              <type name="DocumentAttachments"
                    c:type="EvDocumentAttachments*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_attachments">
        <callback name="get_attachments">
          <source-position filename="libdocument/ev-document-attachments.h"
                           line="50"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-attachments.c"
                 line="45">a list of #EvAttachment objects</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Attachment"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="document_attachments" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-attachments.c"
                   line="43">an #EvDocumentAttachments</doc>
              <type name="DocumentAttachments"
                    c:type="EvDocumentAttachments*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="DocumentBackendInfo" c:type="EvDocumentBackendInfo">
      <source-position filename="libdocument/ev-document.h" line="81"/>
      <field name="name" writable="1">
        <type name="utf8" c:type="const gchar*"/>
      </field>
      <field name="version" writable="1">
        <type name="utf8" c:type="const gchar*"/>
      </field>
    </record>
    <record name="DocumentClass"
            c:type="EvDocumentClass"
            glib:is-gtype-struct-for="Document">
      <source-position filename="libdocument/ev-document.h" line="137"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="load">
        <callback name="load" throws="1">
          <source-position filename="libdocument/ev-document.h" line="95"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="442">%TRUE on success, or %FALSE on failure.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="428">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="uri" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="429">the document's URI</doc>
              <type name="utf8" c:type="const char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="save">
        <callback name="save" throws="1">
          <source-position filename="libdocument/ev-document.h" line="98"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="647">%TRUE on success, or %FALSE on error with @error filled in</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="641">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="uri" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="642">the target URI</doc>
              <type name="utf8" c:type="const char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_n_pages">
        <callback name="get_n_pages">
          <source-position filename="libdocument/ev-document.h" line="101"/>
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_page">
        <callback name="get_page">
          <source-position filename="libdocument/ev-document.h" line="102"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="664">Newly created #EvPage for the given index.</doc>
            <type name="Page" c:type="EvPage*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="661">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="index" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="662">index of page</doc>
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_page_size">
        <callback name="get_page_size">
          <source-position filename="libdocument/ev-document.h" line="104"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="849">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="page_index" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="850">index of page</doc>
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="width"
                       direction="out"
                       caller-allocates="0"
                       transfer-ownership="full"
                       optional="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="851">return location for the width of the page, or %NULL</doc>
              <type name="gdouble" c:type="double*"/>
            </parameter>
            <parameter name="height"
                       direction="out"
                       caller-allocates="0"
                       transfer-ownership="full"
                       optional="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="852">return location for the height of the page, or %NULL</doc>
              <type name="gdouble" c:type="double*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_page_label">
        <callback name="get_page_label">
          <source-position filename="libdocument/ev-document.h" line="108"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="render">
        <callback name="render">
          <source-position filename="libdocument/ev-document.h" line="110"/>
          <return-value transfer-ownership="full">
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_thumbnail">
        <callback name="get_thumbnail">
          <source-position filename="libdocument/ev-document.h" line="112"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="990">a #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="987">an #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="988">an #EvRenderContext</doc>
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_info">
        <callback name="get_info">
          <source-position filename="libdocument/ev-document.h" line="114"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="936">a #EvDocumentInfo</doc>
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="932">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_backend_info">
        <callback name="get_backend_info">
          <source-position filename="libdocument/ev-document.h" line="115"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="info" transfer-ownership="none">
              <type name="DocumentBackendInfo"
                    c:type="EvDocumentBackendInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="support_synctex">
        <callback name="support_synctex">
          <source-position filename="libdocument/ev-document.h" line="117"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="load_stream">
        <callback name="load_stream" throws="1">
          <source-position filename="libdocument/ev-document.h" line="120"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="464">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="455">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="stream" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="456">a #GInputStream</doc>
              <type name="Gio.InputStream" c:type="GInputStream*"/>
            </parameter>
            <parameter name="flags" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="457">flags from #EvDocumentLoadFlags</doc>
              <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
            </parameter>
            <parameter name="cancellable"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="458">a #GCancellable, or %NULL</doc>
              <type name="Gio.Cancellable" c:type="GCancellable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="load_gfile">
        <callback name="load_gfile" throws="1">
          <source-position filename="libdocument/ev-document.h" line="125"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="512">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="503">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="file" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="504">a #GFile</doc>
              <type name="Gio.File" c:type="GFile*"/>
            </parameter>
            <parameter name="flags" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="505">flags from #EvDocumentLoadFlags</doc>
              <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
            </parameter>
            <parameter name="cancellable"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="506">a #GCancellable, or %NULL</doc>
              <type name="Gio.Cancellable" c:type="GCancellable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_thumbnail_surface">
        <callback name="get_thumbnail_surface">
          <source-position filename="libdocument/ev-document.h" line="130"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="1009">a #cairo_surface_t</doc>
            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="1006">an #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="1007">an #EvRenderContext</doc>
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="load_fd">
        <callback name="load_fd" throws="1">
          <source-position filename="libdocument/ev-document.h" line="132"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document.c"
                 line="570">%TRUE if loading succeeded, or %FALSE on error with @error filled in</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="555">a #EvDocument</doc>
              <type name="Document" c:type="EvDocument*"/>
            </parameter>
            <parameter name="fd" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="556">a file descriptor</doc>
              <type name="gint" c:type="int"/>
            </parameter>
            <parameter name="flags" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="557">flags from #EvDocumentLoadFlags</doc>
              <type name="DocumentLoadFlags" c:type="EvDocumentLoadFlags"/>
            </parameter>
            <parameter name="cancellable"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document.c"
                   line="558">a #GCancellable, or %NULL</doc>
              <type name="Gio.Cancellable" c:type="GCancellable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="DocumentContainsJS"
                 glib:type-name="EvDocumentContainsJS"
                 glib:get-type="ev_document_contains_js_get_type"
                 c:type="EvDocumentContainsJS">
      <member name="unknown"
              value="0"
              c:identifier="EV_DOCUMENT_CONTAINS_JS_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_DOCUMENT_CONTAINS_JS_UNKNOWN">
      </member>
      <member name="no"
              value="1"
              c:identifier="EV_DOCUMENT_CONTAINS_JS_NO"
              glib:nick="no"
              glib:name="EV_DOCUMENT_CONTAINS_JS_NO">
      </member>
      <member name="yes"
              value="2"
              c:identifier="EV_DOCUMENT_CONTAINS_JS_YES"
              glib:nick="yes"
              glib:name="EV_DOCUMENT_CONTAINS_JS_YES">
      </member>
    </enumeration>
    <enumeration name="DocumentError"
                 glib:type-name="EvDocumentError"
                 glib:get-type="ev_document_error_get_type"
                 c:type="EvDocumentError"
                 glib:error-domain="ev-document-error-quark">
      <member name="invalid"
              value="0"
              c:identifier="EV_DOCUMENT_ERROR_INVALID"
              glib:nick="invalid"
              glib:name="EV_DOCUMENT_ERROR_INVALID">
      </member>
      <member name="unsupported_content"
              value="1"
              c:identifier="EV_DOCUMENT_ERROR_UNSUPPORTED_CONTENT"
              glib:nick="unsupported-content"
              glib:name="EV_DOCUMENT_ERROR_UNSUPPORTED_CONTENT">
      </member>
      <member name="encrypted"
              value="2"
              c:identifier="EV_DOCUMENT_ERROR_ENCRYPTED"
              glib:nick="encrypted"
              glib:name="EV_DOCUMENT_ERROR_ENCRYPTED">
      </member>
      <function name="quark" c:identifier="ev_document_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
    </enumeration>
    <interface name="DocumentFind"
               c:symbol-prefix="document_find"
               c:type="EvDocumentFind"
               glib:type-name="EvDocumentFind"
               glib:get-type="ev_document_find_get_type"
               glib:type-struct="DocumentFindInterface">
      <source-position filename="libdocument/ev-document-find.h" line="91"/>
      <virtual-method name="find_text" invoker="find_text">
        <source-position filename="libdocument/ev-document-find.h" line="78"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="39">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Rectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="34">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="35">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="36">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="case_sensitive" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="37">whether to match the string case</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="find_text_extended" invoker="find_text_extended">
        <source-position filename="libdocument/ev-document-find.h" line="87"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="82">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="FindRectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="77">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="78">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="79">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="options" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="80">a set of #EvFindOptions</doc>
            <type name="FindOptions" c:type="EvFindOptions"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="find_text_with_options"
                      invoker="find_text_with_options">
        <source-position filename="libdocument/ev-document-find.h" line="82"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="59">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Rectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="54">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="55">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="56">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="options" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="57">a set of #EvFindOptions</doc>
            <type name="FindOptions" c:type="EvFindOptions"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_supported_options"
                      invoker="get_supported_options">
        <source-position filename="libdocument/ev-document-find.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="FindOptions" c:type="EvFindOptions"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="find_text" c:identifier="ev_document_find_find_text">
        <source-position filename="libdocument/ev-document-find.h" line="98"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="39">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Rectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="34">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="35">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="36">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="case_sensitive" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="37">whether to match the string case</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_text_extended"
              c:identifier="ev_document_find_find_text_extended">
        <source-position filename="libdocument/ev-document-find.h" line="111"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="82">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="FindRectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="77">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="78">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="79">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="options" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="80">a set of #EvFindOptions</doc>
            <type name="FindOptions" c:type="EvFindOptions"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_text_with_options"
              c:identifier="ev_document_find_find_text_with_options">
        <source-position filename="libdocument/ev-document-find.h" line="104"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-find.c"
               line="59">a list of results</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Rectangle"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="54">an #EvDocumentFind</doc>
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="55">an #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="56">text to find</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="options" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="57">a set of #EvFindOptions</doc>
            <type name="FindOptions" c:type="EvFindOptions"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_supported_options"
              c:identifier="ev_document_find_get_supported_options">
        <source-position filename="libdocument/ev-document-find.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="FindOptions" c:type="EvFindOptions"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_find" transfer-ownership="none">
            <type name="DocumentFind" c:type="EvDocumentFind*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentFindInterface"
            c:type="EvDocumentFindInterface"
            glib:is-gtype-struct-for="DocumentFind">
      <source-position filename="libdocument/ev-document-find.h" line="91"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="find_text">
        <callback name="find_text">
          <source-position filename="libdocument/ev-document-find.h"
                           line="78"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="39">a list of results</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Rectangle"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="document_find" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="34">an #EvDocumentFind</doc>
              <type name="DocumentFind" c:type="EvDocumentFind*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="35">an #EvPage</doc>
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="36">text to find</doc>
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="case_sensitive" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="37">whether to match the string case</doc>
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="find_text_with_options">
        <callback name="find_text_with_options">
          <source-position filename="libdocument/ev-document-find.h"
                           line="82"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="59">a list of results</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Rectangle"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="document_find" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="54">an #EvDocumentFind</doc>
              <type name="DocumentFind" c:type="EvDocumentFind*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="55">an #EvPage</doc>
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="56">text to find</doc>
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="options" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="57">a set of #EvFindOptions</doc>
              <type name="FindOptions" c:type="EvFindOptions"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_supported_options">
        <callback name="get_supported_options">
          <source-position filename="libdocument/ev-document-find.h"
                           line="86"/>
          <return-value transfer-ownership="none">
            <type name="FindOptions" c:type="EvFindOptions"/>
          </return-value>
          <parameters>
            <parameter name="document_find" transfer-ownership="none">
              <type name="DocumentFind" c:type="EvDocumentFind*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="find_text_extended">
        <callback name="find_text_extended">
          <source-position filename="libdocument/ev-document-find.h"
                           line="87"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-find.c"
                 line="82">a list of results</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="FindRectangle"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="document_find" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="77">an #EvDocumentFind</doc>
              <type name="DocumentFind" c:type="EvDocumentFind*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="78">an #EvPage</doc>
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="79">text to find</doc>
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="options" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-find.c"
                   line="80">a set of #EvFindOptions</doc>
              <type name="FindOptions" c:type="EvFindOptions"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentFonts"
               c:symbol-prefix="document_fonts"
               c:type="EvDocumentFonts"
               glib:type-name="EvDocumentFonts"
               glib:get-type="ev_document_fonts_get_type"
               glib:type-struct="DocumentFontsInterface">
      <source-position filename="libdocument/ev-document-fonts.h" line="68"/>
      <virtual-method name="fill_model" invoker="fill_model">
        <source-position filename="libdocument/ev-document-fonts.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
          <parameter name="model" transfer-ownership="none">
            <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_fonts_summary" invoker="get_fonts_summary">
        <source-position filename="libdocument/ev-document-fonts.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_progress" invoker="get_progress">
        <source-position filename="libdocument/ev-document-fonts.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="scan" invoker="scan">
        <source-position filename="libdocument/ev-document-fonts.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
          <parameter name="n_pages" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="fill_model" c:identifier="ev_document_fonts_fill_model">
        <source-position filename="libdocument/ev-document-fonts.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
          <parameter name="model" transfer-ownership="none">
            <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_fonts_summary"
              c:identifier="ev_document_fonts_get_fonts_summary">
        <source-position filename="libdocument/ev-document-fonts.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_progress"
              c:identifier="ev_document_fonts_get_progress">
        <source-position filename="libdocument/ev-document-fonts.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="scan" c:identifier="ev_document_fonts_scan">
        <source-position filename="libdocument/ev-document-fonts.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_fonts" transfer-ownership="none">
            <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
          </instance-parameter>
          <parameter name="n_pages" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentFontsInterface"
            c:type="EvDocumentFontsInterface"
            glib:is-gtype-struct-for="DocumentFonts">
      <source-position filename="libdocument/ev-document-fonts.h" line="68"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="scan">
        <callback name="scan">
          <source-position filename="libdocument/ev-document-fonts.h"
                           line="62"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_fonts" transfer-ownership="none">
              <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
            </parameter>
            <parameter name="n_pages" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_progress">
        <callback name="get_progress">
          <source-position filename="libdocument/ev-document-fonts.h"
                           line="64"/>
          <return-value transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </return-value>
          <parameters>
            <parameter name="document_fonts" transfer-ownership="none">
              <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="fill_model">
        <callback name="fill_model">
          <source-position filename="libdocument/ev-document-fonts.h"
                           line="65"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_fonts" transfer-ownership="none">
              <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
            </parameter>
            <parameter name="model" transfer-ownership="none">
              <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_fonts_summary">
        <callback name="get_fonts_summary">
          <source-position filename="libdocument/ev-document-fonts.h"
                           line="67"/>
          <return-value transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document_fonts" transfer-ownership="none">
              <type name="DocumentFonts" c:type="EvDocumentFonts*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentForms"
               c:symbol-prefix="document_forms"
               c:type="EvDocumentForms"
               glib:type-name="EvDocumentForms"
               glib:get-type="ev_document_forms_get_type"
               glib:type-struct="DocumentFormsInterface">
      <source-position filename="libdocument/ev-document-forms.h" line="87"/>
      <virtual-method name="document_is_modified"
                      invoker="document_is_modified">
        <source-position filename="libdocument/ev-document-forms.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_button_get_state"
                      invoker="form_field_button_get_state">
        <source-position filename="libdocument/ev-document-forms.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_button_set_state"
                      invoker="form_field_button_set_state">
        <source-position filename="libdocument/ev-document-forms.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="state" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_get_item"
                      invoker="form_field_choice_get_item">
        <source-position filename="libdocument/ev-document-forms.h" line="64"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_get_n_items"
                      invoker="form_field_choice_get_n_items">
        <source-position filename="libdocument/ev-document-forms.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_get_text"
                      invoker="form_field_choice_get_text">
        <source-position filename="libdocument/ev-document-forms.h" line="83"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_is_item_selected"
                      invoker="form_field_choice_is_item_selected">
        <source-position filename="libdocument/ev-document-forms.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_select_item"
                      invoker="form_field_choice_select_item">
        <source-position filename="libdocument/ev-document-forms.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_set_text"
                      invoker="form_field_choice_set_text">
        <source-position filename="libdocument/ev-document-forms.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_toggle_item"
                      invoker="form_field_choice_toggle_item">
        <source-position filename="libdocument/ev-document-forms.h" line="75"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_choice_unselect_all"
                      invoker="form_field_choice_unselect_all">
        <source-position filename="libdocument/ev-document-forms.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_text_get_text"
                      invoker="form_field_text_get_text">
        <source-position filename="libdocument/ev-document-forms.h" line="54"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="form_field_text_set_text"
                      invoker="form_field_text_set_text">
        <source-position filename="libdocument/ev-document-forms.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_form_fields" invoker="get_form_fields">
        <source-position filename="libdocument/ev-document-forms.h" line="51"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="reset_form" invoker="reset_form">
        <source-position filename="libdocument/ev-document-forms.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="action" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="document_is_modified"
              c:identifier="ev_document_forms_document_is_modified">
        <source-position filename="libdocument/ev-document-forms.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="form_field_button_get_state"
              c:identifier="ev_document_forms_form_field_button_get_state">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="106"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_button_set_state"
              c:identifier="ev_document_forms_form_field_button_set_state">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="state" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_get_item"
              c:identifier="ev_document_forms_form_field_choice_get_item">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="114"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_get_n_items"
              c:identifier="ev_document_forms_form_field_choice_get_n_items">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="118"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_get_text"
              c:identifier="ev_document_forms_form_field_choice_get_text">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="140"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_is_item_selected"
              c:identifier="ev_document_forms_form_field_choice_is_item_selected">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="121"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_select_item"
              c:identifier="ev_document_forms_form_field_choice_select_item">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="125"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_set_text"
              c:identifier="ev_document_forms_form_field_choice_set_text">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="136"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_toggle_item"
              c:identifier="ev_document_forms_form_field_choice_toggle_item">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="129"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_choice_unselect_all"
              c:identifier="ev_document_forms_form_field_choice_unselect_all">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_text_get_text"
              c:identifier="ev_document_forms_form_field_text_get_text">
        <source-position filename="libdocument/ev-document-forms.h" line="98"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
        </parameters>
      </method>
      <method name="form_field_text_set_text"
              c:identifier="ev_document_forms_form_field_text_set_text">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <type name="FormField" c:type="EvFormField*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_form_fields"
              c:identifier="ev_document_forms_get_form_fields">
        <source-position filename="libdocument/ev-document-forms.h" line="92"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset_form" c:identifier="ev_document_forms_reset_form">
        <source-position filename="libdocument/ev-document-forms.h"
                         line="143"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_forms" transfer-ownership="none">
            <type name="DocumentForms" c:type="EvDocumentForms*"/>
          </instance-parameter>
          <parameter name="action" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentFormsInterface"
            c:type="EvDocumentFormsInterface"
            glib:is-gtype-struct-for="DocumentForms">
      <source-position filename="libdocument/ev-document-forms.h" line="87"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_form_fields">
        <callback name="get_form_fields">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="51"/>
          <return-value transfer-ownership="full">
            <type name="MappingList" c:type="EvMappingList*"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="document_is_modified">
        <callback name="document_is_modified">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="53"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_text_get_text">
        <callback name="form_field_text_get_text">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="54"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_text_set_text">
        <callback name="form_field_text_set_text">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_button_get_state">
        <callback name="form_field_button_get_state">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="59"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_button_set_state">
        <callback name="form_field_button_set_state">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="61"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="state" transfer-ownership="none">
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_get_item">
        <callback name="form_field_choice_get_item">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="64"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="index" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_get_n_items">
        <callback name="form_field_choice_get_n_items">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="67"/>
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_is_item_selected">
        <callback name="form_field_choice_is_item_selected">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="69"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="index" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_select_item">
        <callback name="form_field_choice_select_item">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="72"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="index" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_toggle_item">
        <callback name="form_field_choice_toggle_item">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="75"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="index" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_unselect_all">
        <callback name="form_field_choice_unselect_all">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="78"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_set_text">
        <callback name="form_field_choice_set_text">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="80"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="form_field_choice_get_text">
        <callback name="form_field_choice_get_text">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="83"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="field" transfer-ownership="none">
              <type name="FormField" c:type="EvFormField*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="reset_form">
        <callback name="reset_form">
          <source-position filename="libdocument/ev-document-forms.h"
                           line="85"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_forms" transfer-ownership="none">
              <type name="DocumentForms" c:type="EvDocumentForms*"/>
            </parameter>
            <parameter name="action" transfer-ownership="none">
              <type name="LinkAction" c:type="EvLinkAction*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentImages"
               c:symbol-prefix="document_images"
               c:type="EvDocumentImages"
               glib:type-name="EvDocumentImages"
               glib:get-type="ev_document_images_get_type"
               glib:type-struct="DocumentImagesInterface">
      <source-position filename="libdocument/ev-document-images.h" line="55"/>
      <virtual-method name="get_image" invoker="get_image">
        <source-position filename="libdocument/ev-document-images.h"
                         line="53"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-images.c"
               line="45">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_images" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-images.c"
                 line="42">an #EvDocumentImages</doc>
            <type name="DocumentImages" c:type="EvDocumentImages*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-images.c"
                 line="43">an #EvImage</doc>
            <type name="Image" c:type="EvImage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_image_mapping" invoker="get_image_mapping">
        <source-position filename="libdocument/ev-document-images.h"
                         line="51"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_images" transfer-ownership="none">
            <type name="DocumentImages" c:type="EvDocumentImages*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_image" c:identifier="ev_document_images_get_image">
        <source-position filename="libdocument/ev-document-images.h"
                         line="63"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-images.c"
               line="45">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_images" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-images.c"
                 line="42">an #EvDocumentImages</doc>
            <type name="DocumentImages" c:type="EvDocumentImages*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-images.c"
                 line="43">an #EvImage</doc>
            <type name="Image" c:type="EvImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image_mapping"
              c:identifier="ev_document_images_get_image_mapping">
        <source-position filename="libdocument/ev-document-images.h"
                         line="60"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_images" transfer-ownership="none">
            <type name="DocumentImages" c:type="EvDocumentImages*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentImagesInterface"
            c:type="EvDocumentImagesInterface"
            glib:is-gtype-struct-for="DocumentImages">
      <source-position filename="libdocument/ev-document-images.h" line="55"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_image_mapping">
        <callback name="get_image_mapping">
          <source-position filename="libdocument/ev-document-images.h"
                           line="51"/>
          <return-value transfer-ownership="full">
            <type name="MappingList" c:type="EvMappingList*"/>
          </return-value>
          <parameters>
            <parameter name="document_images" transfer-ownership="none">
              <type name="DocumentImages" c:type="EvDocumentImages*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_image">
        <callback name="get_image">
          <source-position filename="libdocument/ev-document-images.h"
                           line="53"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-images.c"
                 line="45">a #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </return-value>
          <parameters>
            <parameter name="document_images" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-images.c"
                   line="42">an #EvDocumentImages</doc>
              <type name="DocumentImages" c:type="EvDocumentImages*"/>
            </parameter>
            <parameter name="image" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-images.c"
                   line="43">an #EvImage</doc>
              <type name="Image" c:type="EvImage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="DocumentInfo"
            c:type="EvDocumentInfo"
            glib:type-name="EvDocumentInfo"
            glib:get-type="ev_document_info_get_type"
            c:symbol-prefix="document_info">
      <source-position filename="libdocument/ev-document-info.h" line="142"/>
      <field name="title" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="format" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="author" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="subject" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="keywords" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="creator" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="producer" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="linearized" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="security" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="creation_date" writable="1">
        <type name="GLib.Time" c:type="GTime"/>
      </field>
      <field name="modified_date" writable="1">
        <type name="GLib.Time" c:type="GTime"/>
      </field>
      <field name="layout" writable="1">
        <type name="DocumentLayout" c:type="EvDocumentLayout"/>
      </field>
      <field name="mode" writable="1">
        <type name="DocumentMode" c:type="EvDocumentMode"/>
      </field>
      <field name="ui_hints" writable="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="permissions" writable="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="n_pages" writable="1">
        <type name="gint" c:type="int"/>
      </field>
      <field name="paper_height" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <field name="paper_width" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <field name="license" writable="1">
        <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
      </field>
      <field name="contains_js" writable="1">
        <type name="DocumentContainsJS" c:type="EvDocumentContainsJS"/>
      </field>
      <field name="fields_mask" writable="1">
        <type name="guint" c:type="guint"/>
      </field>
      <constructor name="new" c:identifier="ev_document_info_new">
        <source-position filename="libdocument/ev-document-info.h" line="148"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="43">a new, empty #EvDocumentInfo</doc>
          <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="ev_document_info_copy">
        <source-position filename="libdocument/ev-document-info.h" line="150"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="60">a copy of @info</doc>
          <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="58">a #EvDocumentInfo</doc>
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="ev_document_info_free">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-info.c"
             line="101">Frees @info.</doc>
        <source-position filename="libdocument/ev-document-info.h" line="152"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="103">a #EvDocumentInfo</doc>
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_created_datetime"
              c:identifier="ev_document_info_get_created_datetime">
        <source-position filename="libdocument/ev-document-info.h" line="154"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="167">a #GDateTime for when the document was created</doc>
          <type name="GLib.DateTime" c:type="GDateTime*"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="165">a #EvDocumentInfo</doc>
            <type name="DocumentInfo" c:type="const EvDocumentInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modified_datetime"
              c:identifier="ev_document_info_get_modified_datetime">
        <source-position filename="libdocument/ev-document-info.h" line="156"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="213">a #GDateTime for when the document was last modified</doc>
          <type name="GLib.DateTime" c:type="GDateTime*"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="211">a #EvDocumentInfo</doc>
            <type name="DocumentInfo" c:type="const EvDocumentInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_from_xmp" c:identifier="ev_document_info_set_from_xmp">
        <source-position filename="libdocument/ev-document-info.h" line="165"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </instance-parameter>
          <parameter name="xmp" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="take_created_datetime"
              c:identifier="ev_document_info_take_created_datetime">
        <source-position filename="libdocument/ev-document-info.h" line="159"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </instance-parameter>
          <parameter name="datetime" transfer-ownership="none">
            <type name="GLib.DateTime" c:type="GDateTime*"/>
          </parameter>
        </parameters>
      </method>
      <method name="take_modified_datetime"
              c:identifier="ev_document_info_take_modified_datetime">
        <source-position filename="libdocument/ev-document-info.h" line="162"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="info" transfer-ownership="none">
            <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
          </instance-parameter>
          <parameter name="datetime" transfer-ownership="none">
            <type name="GLib.DateTime" c:type="GDateTime*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <bitfield name="DocumentInfoFields"
              glib:type-name="EvDocumentInfoFields"
              glib:get-type="ev_document_info_fields_get_type"
              c:type="EvDocumentInfoFields">
      <member name="title"
              value="1"
              c:identifier="EV_DOCUMENT_INFO_TITLE"
              glib:nick="title"
              glib:name="EV_DOCUMENT_INFO_TITLE">
      </member>
      <member name="format"
              value="2"
              c:identifier="EV_DOCUMENT_INFO_FORMAT"
              glib:nick="format"
              glib:name="EV_DOCUMENT_INFO_FORMAT">
      </member>
      <member name="author"
              value="4"
              c:identifier="EV_DOCUMENT_INFO_AUTHOR"
              glib:nick="author"
              glib:name="EV_DOCUMENT_INFO_AUTHOR">
      </member>
      <member name="subject"
              value="8"
              c:identifier="EV_DOCUMENT_INFO_SUBJECT"
              glib:nick="subject"
              glib:name="EV_DOCUMENT_INFO_SUBJECT">
      </member>
      <member name="keywords"
              value="16"
              c:identifier="EV_DOCUMENT_INFO_KEYWORDS"
              glib:nick="keywords"
              glib:name="EV_DOCUMENT_INFO_KEYWORDS">
      </member>
      <member name="layout"
              value="32"
              c:identifier="EV_DOCUMENT_INFO_LAYOUT"
              glib:nick="layout"
              glib:name="EV_DOCUMENT_INFO_LAYOUT">
      </member>
      <member name="creator"
              value="64"
              c:identifier="EV_DOCUMENT_INFO_CREATOR"
              glib:nick="creator"
              glib:name="EV_DOCUMENT_INFO_CREATOR">
      </member>
      <member name="producer"
              value="128"
              c:identifier="EV_DOCUMENT_INFO_PRODUCER"
              glib:nick="producer"
              glib:name="EV_DOCUMENT_INFO_PRODUCER">
      </member>
      <member name="creation_date"
              value="256"
              c:identifier="EV_DOCUMENT_INFO_CREATION_DATE"
              glib:nick="creation-date"
              glib:name="EV_DOCUMENT_INFO_CREATION_DATE">
      </member>
      <member name="mod_date"
              value="512"
              c:identifier="EV_DOCUMENT_INFO_MOD_DATE"
              glib:nick="mod-date"
              glib:name="EV_DOCUMENT_INFO_MOD_DATE">
      </member>
      <member name="linearized"
              value="1024"
              c:identifier="EV_DOCUMENT_INFO_LINEARIZED"
              glib:nick="linearized"
              glib:name="EV_DOCUMENT_INFO_LINEARIZED">
      </member>
      <member name="start_mode"
              value="2048"
              c:identifier="EV_DOCUMENT_INFO_START_MODE"
              glib:nick="start-mode"
              glib:name="EV_DOCUMENT_INFO_START_MODE">
      </member>
      <member name="ui_hints"
              value="4096"
              c:identifier="EV_DOCUMENT_INFO_UI_HINTS"
              glib:nick="ui-hints"
              glib:name="EV_DOCUMENT_INFO_UI_HINTS">
      </member>
      <member name="permissions"
              value="8192"
              c:identifier="EV_DOCUMENT_INFO_PERMISSIONS"
              glib:nick="permissions"
              glib:name="EV_DOCUMENT_INFO_PERMISSIONS">
      </member>
      <member name="n_pages"
              value="16384"
              c:identifier="EV_DOCUMENT_INFO_N_PAGES"
              glib:nick="n-pages"
              glib:name="EV_DOCUMENT_INFO_N_PAGES">
      </member>
      <member name="security"
              value="32768"
              c:identifier="EV_DOCUMENT_INFO_SECURITY"
              glib:nick="security"
              glib:name="EV_DOCUMENT_INFO_SECURITY">
      </member>
      <member name="paper_size"
              value="65536"
              c:identifier="EV_DOCUMENT_INFO_PAPER_SIZE"
              glib:nick="paper-size"
              glib:name="EV_DOCUMENT_INFO_PAPER_SIZE">
      </member>
      <member name="license"
              value="131072"
              c:identifier="EV_DOCUMENT_INFO_LICENSE"
              glib:nick="license"
              glib:name="EV_DOCUMENT_INFO_LICENSE">
      </member>
      <member name="contains_js"
              value="262144"
              c:identifier="EV_DOCUMENT_INFO_CONTAINS_JS"
              glib:nick="contains-js"
              glib:name="EV_DOCUMENT_INFO_CONTAINS_JS">
      </member>
    </bitfield>
    <interface name="DocumentLayers"
               c:symbol-prefix="document_layers"
               c:type="EvDocumentLayers"
               glib:type-name="EvDocumentLayers"
               glib:get-type="ev_document_layers_get_type"
               glib:type-struct="DocumentLayersInterface">
      <source-position filename="libdocument/ev-document-layers.h" line="70"/>
      <virtual-method name="get_layers" invoker="get_layers">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-layers.c"
               line="45">a #GtkTreeModel</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-layers.c"
                 line="43">an #EvDocumentLayers</doc>
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="has_layers" invoker="has_layers">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="61"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="hide_layer" invoker="hide_layer">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="layer_is_visible" invoker="layer_is_visible">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="68"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="show_layer" invoker="show_layer">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_layers" c:identifier="ev_document_layers_get_layers">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="78"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-layers.c"
               line="45">a #GtkTreeModel</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-layers.c"
                 line="43">an #EvDocumentLayers</doc>
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_layers" c:identifier="ev_document_layers_has_layers">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="76"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hide_layer" c:identifier="ev_document_layers_hide_layer">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="layer_is_visible"
              c:identifier="ev_document_layers_layer_is_visible">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="86"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_layer" c:identifier="ev_document_layers_show_layer">
        <source-position filename="libdocument/ev-document-layers.h"
                         line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_layers" transfer-ownership="none">
            <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentLayersInterface"
            c:type="EvDocumentLayersInterface"
            glib:is-gtype-struct-for="DocumentLayers">
      <source-position filename="libdocument/ev-document-layers.h" line="70"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="has_layers">
        <callback name="has_layers">
          <source-position filename="libdocument/ev-document-layers.h"
                           line="61"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_layers" transfer-ownership="none">
              <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_layers">
        <callback name="get_layers">
          <source-position filename="libdocument/ev-document-layers.h"
                           line="62"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-layers.c"
                 line="45">a #GtkTreeModel</doc>
            <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
          </return-value>
          <parameters>
            <parameter name="document_layers" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-layers.c"
                   line="43">an #EvDocumentLayers</doc>
              <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="show_layer">
        <callback name="show_layer">
          <source-position filename="libdocument/ev-document-layers.h"
                           line="64"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_layers" transfer-ownership="none">
              <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
            </parameter>
            <parameter name="layer" transfer-ownership="none">
              <type name="Layer" c:type="EvLayer*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="hide_layer">
        <callback name="hide_layer">
          <source-position filename="libdocument/ev-document-layers.h"
                           line="66"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_layers" transfer-ownership="none">
              <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
            </parameter>
            <parameter name="layer" transfer-ownership="none">
              <type name="Layer" c:type="EvLayer*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="layer_is_visible">
        <callback name="layer_is_visible">
          <source-position filename="libdocument/ev-document-layers.h"
                           line="68"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_layers" transfer-ownership="none">
              <type name="DocumentLayers" c:type="EvDocumentLayers*"/>
            </parameter>
            <parameter name="layer" transfer-ownership="none">
              <type name="Layer" c:type="EvLayer*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="DocumentLayout"
                 glib:type-name="EvDocumentLayout"
                 glib:get-type="ev_document_layout_get_type"
                 c:type="EvDocumentLayout">
      <member name="single_page"
              value="0"
              c:identifier="EV_DOCUMENT_LAYOUT_SINGLE_PAGE"
              glib:nick="single-page"
              glib:name="EV_DOCUMENT_LAYOUT_SINGLE_PAGE">
      </member>
      <member name="one_column"
              value="1"
              c:identifier="EV_DOCUMENT_LAYOUT_ONE_COLUMN"
              glib:nick="one-column"
              glib:name="EV_DOCUMENT_LAYOUT_ONE_COLUMN">
      </member>
      <member name="two_column_left"
              value="2"
              c:identifier="EV_DOCUMENT_LAYOUT_TWO_COLUMN_LEFT"
              glib:nick="two-column-left"
              glib:name="EV_DOCUMENT_LAYOUT_TWO_COLUMN_LEFT">
      </member>
      <member name="two_column_right"
              value="3"
              c:identifier="EV_DOCUMENT_LAYOUT_TWO_COLUMN_RIGHT"
              glib:nick="two-column-right"
              glib:name="EV_DOCUMENT_LAYOUT_TWO_COLUMN_RIGHT">
      </member>
      <member name="two_page_left"
              value="4"
              c:identifier="EV_DOCUMENT_LAYOUT_TWO_PAGE_LEFT"
              glib:nick="two-page-left"
              glib:name="EV_DOCUMENT_LAYOUT_TWO_PAGE_LEFT">
      </member>
      <member name="two_page_right"
              value="5"
              c:identifier="EV_DOCUMENT_LAYOUT_TWO_PAGE_RIGHT"
              glib:nick="two-page-right"
              glib:name="EV_DOCUMENT_LAYOUT_TWO_PAGE_RIGHT">
      </member>
    </enumeration>
    <record name="DocumentLicense"
            c:type="EvDocumentLicense"
            glib:type-name="EvDocumentLicense"
            glib:get-type="ev_document_license_get_type"
            c:symbol-prefix="document_license">
      <source-position filename="libdocument/ev-document-info.h" line="175"/>
      <field name="text" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="uri" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="web_statement" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <constructor name="new" c:identifier="ev_document_license_new">
        <source-position filename="libdocument/ev-document-info.h" line="179"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="250">a new, empty #EvDocumentLicense</doc>
          <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="ev_document_license_copy">
        <source-position filename="libdocument/ev-document-info.h" line="181"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="262">a copy of @license, or %NULL</doc>
          <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
        </return-value>
        <parameters>
          <instance-parameter name="license"
                              transfer-ownership="none"
                              nullable="1"
                              allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="260">a #EvDocumentLicense</doc>
            <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="ev_document_license_free">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-info.c"
             line="284">Frees @license.</doc>
        <source-position filename="libdocument/ev-document-info.h" line="183"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="license" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="286">a #EvDocumentLicense</doc>
            <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text" c:identifier="ev_document_license_get_text">
        <source-position filename="libdocument/ev-document-info.h" line="185"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="307">the license text</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="license" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="305">a #EvDocumentLicense</doc>
            <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_uri" c:identifier="ev_document_license_get_uri">
        <source-position filename="libdocument/ev-document-info.h" line="187"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="319">the license URI</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="license" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="317">a #EvDocumentLicense</doc>
            <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_web_statement"
              c:identifier="ev_document_license_get_web_statement">
        <source-position filename="libdocument/ev-document-info.h" line="189"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-info.c"
               line="331">the license web statement</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="license" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-info.c"
                 line="329">a #EvDocumentLicense</doc>
            <type name="DocumentLicense" c:type="EvDocumentLicense*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <interface name="DocumentLinks"
               c:symbol-prefix="document_links"
               c:type="EvDocumentLinks"
               glib:type-name="EvDocumentLinks"
               glib:get-type="ev_document_links_get_type"
               glib:type-struct="DocumentLinksInterface">
      <source-position filename="libdocument/ev-document-links.h" line="72"/>
      <virtual-method name="find_link_dest" invoker="find_link_dest">
        <source-position filename="libdocument/ev-document-links.h" line="68"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-links.c"
               line="77">an #EvLinkDest</doc>
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="74">an #EvDocumentLinks</doc>
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="75">the link name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="find_link_page" invoker="find_link_page">
        <source-position filename="libdocument/ev-document-links.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_links" invoker="get_links">
        <source-position filename="libdocument/ev-document-links.h" line="66"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_links_model" invoker="get_links_model">
        <source-position filename="libdocument/ev-document-links.h" line="65"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-links.c"
               line="50">a #GtkTreeModel</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="48">an #EvDocumentLinks</doc>
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="has_document_links" invoker="has_document_links">
        <source-position filename="libdocument/ev-document-links.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="find_link_dest"
              c:identifier="ev_document_links_find_link_dest">
        <source-position filename="libdocument/ev-document-links.h" line="85"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-links.c"
               line="77">an #EvLinkDest</doc>
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="74">an #EvDocumentLinks</doc>
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="75">the link name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_link_page"
              c:identifier="ev_document_links_find_link_page">
        <source-position filename="libdocument/ev-document-links.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_dest_page"
              c:identifier="ev_document_links_get_dest_page">
        <source-position filename="libdocument/ev-document-links.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_dest_page_label"
              c:identifier="ev_document_links_get_dest_page_label">
        <source-position filename="libdocument/ev-document-links.h" line="94"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_link_page"
              c:identifier="ev_document_links_get_link_page">
        <source-position filename="libdocument/ev-document-links.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link" transfer-ownership="none">
            <type name="Link" c:type="EvLink*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_link_page_label"
              c:identifier="ev_document_links_get_link_page_label">
        <source-position filename="libdocument/ev-document-links.h"
                         line="100"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="link" transfer-ownership="none">
            <type name="Link" c:type="EvLink*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_links" c:identifier="ev_document_links_get_links">
        <source-position filename="libdocument/ev-document-links.h" line="82"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_links_model"
              c:identifier="ev_document_links_get_links_model">
        <source-position filename="libdocument/ev-document-links.h" line="79"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-links.c"
               line="50">a #GtkTreeModel</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="48">an #EvDocumentLinks</doc>
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_document_links"
              c:identifier="ev_document_links_has_document_links">
        <source-position filename="libdocument/ev-document-links.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_links" transfer-ownership="none">
            <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentLinksInterface"
            c:type="EvDocumentLinksInterface"
            glib:is-gtype-struct-for="DocumentLinks">
      <source-position filename="libdocument/ev-document-links.h" line="72"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="has_document_links">
        <callback name="has_document_links">
          <source-position filename="libdocument/ev-document-links.h"
                           line="64"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_links" transfer-ownership="none">
              <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_links_model">
        <callback name="get_links_model">
          <source-position filename="libdocument/ev-document-links.h"
                           line="65"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="50">a #GtkTreeModel</doc>
            <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
          </return-value>
          <parameters>
            <parameter name="document_links" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-links.c"
                   line="48">an #EvDocumentLinks</doc>
              <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_links">
        <callback name="get_links">
          <source-position filename="libdocument/ev-document-links.h"
                           line="66"/>
          <return-value transfer-ownership="full">
            <type name="MappingList" c:type="EvMappingList*"/>
          </return-value>
          <parameters>
            <parameter name="document_links" transfer-ownership="none">
              <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="find_link_dest">
        <callback name="find_link_dest">
          <source-position filename="libdocument/ev-document-links.h"
                           line="68"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-links.c"
                 line="77">an #EvLinkDest</doc>
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </return-value>
          <parameters>
            <parameter name="document_links" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-links.c"
                   line="74">an #EvDocumentLinks</doc>
              <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
            </parameter>
            <parameter name="link_name" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-links.c"
                   line="75">the link name</doc>
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="find_link_page">
        <callback name="find_link_page">
          <source-position filename="libdocument/ev-document-links.h"
                           line="70"/>
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="document_links" transfer-ownership="none">
              <type name="DocumentLinks" c:type="EvDocumentLinks*"/>
            </parameter>
            <parameter name="link_name" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <bitfield name="DocumentLoadFlags"
              glib:type-name="EvDocumentLoadFlags"
              glib:get-type="ev_document_load_flags_get_type"
              c:type="EvDocumentLoadFlags">
      <member name="none"
              value="0"
              c:identifier="EV_DOCUMENT_LOAD_FLAG_NONE"
              glib:nick="none"
              glib:name="EV_DOCUMENT_LOAD_FLAG_NONE">
      </member>
      <member name="no_cache"
              value="1"
              c:identifier="EV_DOCUMENT_LOAD_FLAG_NO_CACHE"
              glib:nick="no-cache"
              glib:name="EV_DOCUMENT_LOAD_FLAG_NO_CACHE">
      </member>
    </bitfield>
    <interface name="DocumentMedia"
               c:symbol-prefix="document_media"
               c:type="EvDocumentMedia"
               glib:type-name="EvDocumentMedia"
               glib:get-type="ev_document_media_get_type"
               glib:type-struct="DocumentMediaInterface">
      <source-position filename="libdocument/ev-document-media.h" line="53"/>
      <virtual-method name="get_media_mapping" invoker="get_media_mapping">
        <source-position filename="libdocument/ev-document-media.h" line="51"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_media" transfer-ownership="none">
            <type name="DocumentMedia" c:type="EvDocumentMedia*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_media_mapping"
              c:identifier="ev_document_media_get_media_mapping">
        <source-position filename="libdocument/ev-document-media.h" line="58"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_media" transfer-ownership="none">
            <type name="DocumentMedia" c:type="EvDocumentMedia*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentMediaInterface"
            c:type="EvDocumentMediaInterface"
            glib:is-gtype-struct-for="DocumentMedia">
      <source-position filename="libdocument/ev-document-media.h" line="53"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_media_mapping">
        <callback name="get_media_mapping">
          <source-position filename="libdocument/ev-document-media.h"
                           line="51"/>
          <return-value transfer-ownership="full">
            <type name="MappingList" c:type="EvMappingList*"/>
          </return-value>
          <parameters>
            <parameter name="document_media" transfer-ownership="none">
              <type name="DocumentMedia" c:type="EvDocumentMedia*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="DocumentMode"
                 glib:type-name="EvDocumentMode"
                 glib:get-type="ev_document_mode_get_type"
                 c:type="EvDocumentMode">
      <member name="none"
              value="0"
              c:identifier="EV_DOCUMENT_MODE_NONE"
              glib:nick="none"
              glib:name="EV_DOCUMENT_MODE_NONE">
      </member>
      <member name="use_oc"
              value="1"
              c:identifier="EV_DOCUMENT_MODE_USE_OC"
              glib:nick="use-oc"
              glib:name="EV_DOCUMENT_MODE_USE_OC">
      </member>
      <member name="use_thumbs"
              value="2"
              c:identifier="EV_DOCUMENT_MODE_USE_THUMBS"
              glib:nick="use-thumbs"
              glib:name="EV_DOCUMENT_MODE_USE_THUMBS">
      </member>
      <member name="full_screen"
              value="3"
              c:identifier="EV_DOCUMENT_MODE_FULL_SCREEN"
              glib:nick="full-screen"
              glib:name="EV_DOCUMENT_MODE_FULL_SCREEN">
      </member>
      <member name="use_attachments"
              value="4"
              c:identifier="EV_DOCUMENT_MODE_USE_ATTACHMENTS"
              glib:nick="use-attachments"
              glib:name="EV_DOCUMENT_MODE_USE_ATTACHMENTS">
      </member>
      <member name="presentation"
              value="3"
              c:identifier="EV_DOCUMENT_MODE_PRESENTATION"
              glib:nick="presentation"
              glib:name="EV_DOCUMENT_MODE_PRESENTATION">
      </member>
    </enumeration>
    <bitfield name="DocumentPermissions"
              glib:type-name="EvDocumentPermissions"
              glib:get-type="ev_document_permissions_get_type"
              c:type="EvDocumentPermissions">
      <member name="ok_to_print"
              value="1"
              c:identifier="EV_DOCUMENT_PERMISSIONS_OK_TO_PRINT"
              glib:nick="ok-to-print"
              glib:name="EV_DOCUMENT_PERMISSIONS_OK_TO_PRINT">
      </member>
      <member name="ok_to_modify"
              value="2"
              c:identifier="EV_DOCUMENT_PERMISSIONS_OK_TO_MODIFY"
              glib:nick="ok-to-modify"
              glib:name="EV_DOCUMENT_PERMISSIONS_OK_TO_MODIFY">
      </member>
      <member name="ok_to_copy"
              value="4"
              c:identifier="EV_DOCUMENT_PERMISSIONS_OK_TO_COPY"
              glib:nick="ok-to-copy"
              glib:name="EV_DOCUMENT_PERMISSIONS_OK_TO_COPY">
      </member>
      <member name="ok_to_add_notes"
              value="8"
              c:identifier="EV_DOCUMENT_PERMISSIONS_OK_TO_ADD_NOTES"
              glib:nick="ok-to-add-notes"
              glib:name="EV_DOCUMENT_PERMISSIONS_OK_TO_ADD_NOTES">
      </member>
      <member name="full"
              value="15"
              c:identifier="EV_DOCUMENT_PERMISSIONS_FULL"
              glib:nick="full"
              glib:name="EV_DOCUMENT_PERMISSIONS_FULL">
      </member>
    </bitfield>
    <interface name="DocumentPrint"
               c:symbol-prefix="document_print"
               c:type="EvDocumentPrint"
               glib:type-name="EvDocumentPrint"
               glib:get-type="ev_document_print_get_type"
               glib:type-struct="DocumentPrintInterface">
      <source-position filename="libdocument/ev-document-print.h" line="53"/>
      <virtual-method name="print_page" invoker="print_page">
        <source-position filename="libdocument/ev-document-print.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_print" transfer-ownership="none">
            <type name="DocumentPrint" c:type="EvDocumentPrint*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="cr" transfer-ownership="none">
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="print_page" c:identifier="ev_document_print_print_page">
        <source-position filename="libdocument/ev-document-print.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_print" transfer-ownership="none">
            <type name="DocumentPrint" c:type="EvDocumentPrint*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="cr" transfer-ownership="none">
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentPrintInterface"
            c:type="EvDocumentPrintInterface"
            glib:is-gtype-struct-for="DocumentPrint">
      <source-position filename="libdocument/ev-document-print.h" line="53"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="print_page">
        <callback name="print_page">
          <source-position filename="libdocument/ev-document-print.h"
                           line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_print" transfer-ownership="none">
              <type name="DocumentPrint" c:type="EvDocumentPrint*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="cr" transfer-ownership="none">
              <type name="cairo.Context" c:type="cairo_t*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="DocumentPrivate"
            c:type="EvDocumentPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-document.h" line="48"/>
    </record>
    <interface name="DocumentSecurity"
               c:symbol-prefix="document_security"
               c:type="EvDocumentSecurity"
               glib:type-name="EvDocumentSecurity"
               glib:get-type="ev_document_security_get_type"
               glib:type-struct="DocumentSecurityInterface">
      <source-position filename="libdocument/ev-document-security.h"
                       line="59"/>
      <virtual-method name="has_document_security"
                      invoker="has_document_security">
        <source-position filename="libdocument/ev-document-security.h"
                         line="56"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_security"
                              transfer-ownership="none">
            <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="set_password" invoker="set_password">
        <source-position filename="libdocument/ev-document-security.h"
                         line="57"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_security"
                              transfer-ownership="none">
            <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
          </instance-parameter>
          <parameter name="password" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="has_document_security"
              c:identifier="ev_document_security_has_document_security">
        <source-position filename="libdocument/ev-document-security.h"
                         line="64"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_security"
                              transfer-ownership="none">
            <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_password"
              c:identifier="ev_document_security_set_password">
        <source-position filename="libdocument/ev-document-security.h"
                         line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_security"
                              transfer-ownership="none">
            <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
          </instance-parameter>
          <parameter name="password" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentSecurityInterface"
            c:type="EvDocumentSecurityInterface"
            glib:is-gtype-struct-for="DocumentSecurity">
      <source-position filename="libdocument/ev-document-security.h"
                       line="59"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="has_document_security">
        <callback name="has_document_security">
          <source-position filename="libdocument/ev-document-security.h"
                           line="56"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_security" transfer-ownership="none">
              <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="set_password">
        <callback name="set_password">
          <source-position filename="libdocument/ev-document-security.h"
                           line="57"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="document_security" transfer-ownership="none">
              <type name="DocumentSecurity" c:type="EvDocumentSecurity*"/>
            </parameter>
            <parameter name="password" transfer-ownership="none">
              <type name="utf8" c:type="const char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentText"
               c:symbol-prefix="document_text"
               c:type="EvDocumentText"
               glib:type-name="EvDocumentText"
               glib:get-type="ev_document_text_get_type"
               glib:type-struct="DocumentTextInterface">
      <source-position filename="libdocument/ev-document-text.h" line="60"/>
      <virtual-method name="get_text" invoker="get_text">
        <source-position filename="libdocument/ev-document-text.h" line="52"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_text_attrs"
                      invoker="get_text_attrs"
                      version="3.10">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-text.c"
             line="72">FIXME</doc>
        <source-position filename="libdocument/ev-document-text.h" line="58"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-text.c"
               line="79">a newly created #PangoAttrList</doc>
          <type name="Pango.AttrList" c:type="PangoAttrList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-text.c"
                 line="74">a #EvDocumentText</doc>
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-text.c"
                 line="75">a #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_text_layout" invoker="get_text_layout">
        <source-position filename="libdocument/ev-document-text.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="areas" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle**"/>
          </parameter>
          <parameter name="n_areas" transfer-ownership="none">
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_text_mapping" invoker="get_text_mapping">
        <source-position filename="libdocument/ev-document-text.h" line="50"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Region" c:type="cairo_region_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_text" c:identifier="ev_document_text_get_text">
        <source-position filename="libdocument/ev-document-text.h" line="66"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_attrs"
              c:identifier="ev_document_text_get_text_attrs"
              version="3.10">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-text.c"
             line="72">FIXME</doc>
        <source-position filename="libdocument/ev-document-text.h" line="77"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-text.c"
               line="79">a newly created #PangoAttrList</doc>
          <type name="Pango.AttrList" c:type="PangoAttrList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-text.c"
                 line="74">a #EvDocumentText</doc>
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-text.c"
                 line="75">a #EvPage</doc>
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_layout"
              c:identifier="ev_document_text_get_text_layout">
        <source-position filename="libdocument/ev-document-text.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="areas" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle**"/>
          </parameter>
          <parameter name="n_areas" transfer-ownership="none">
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_mapping"
              c:identifier="ev_document_text_get_text_mapping">
        <source-position filename="libdocument/ev-document-text.h" line="74"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Region" c:type="cairo_region_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_text" transfer-ownership="none">
            <type name="DocumentText" c:type="EvDocumentText*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentTextInterface"
            c:type="EvDocumentTextInterface"
            glib:is-gtype-struct-for="DocumentText">
      <source-position filename="libdocument/ev-document-text.h" line="60"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_text_mapping">
        <callback name="get_text_mapping">
          <source-position filename="libdocument/ev-document-text.h"
                           line="50"/>
          <return-value transfer-ownership="full">
            <type name="cairo.Region" c:type="cairo_region_t*"/>
          </return-value>
          <parameters>
            <parameter name="document_text" transfer-ownership="none">
              <type name="DocumentText" c:type="EvDocumentText*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_text">
        <callback name="get_text">
          <source-position filename="libdocument/ev-document-text.h"
                           line="52"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="document_text" transfer-ownership="none">
              <type name="DocumentText" c:type="EvDocumentText*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_text_layout">
        <callback name="get_text_layout">
          <source-position filename="libdocument/ev-document-text.h"
                           line="54"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="document_text" transfer-ownership="none">
              <type name="DocumentText" c:type="EvDocumentText*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="areas" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle**"/>
            </parameter>
            <parameter name="n_areas" transfer-ownership="none">
              <type name="guint" c:type="guint*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_text_attrs">
        <callback name="get_text_attrs">
          <source-position filename="libdocument/ev-document-text.h"
                           line="58"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-text.c"
                 line="79">a newly created #PangoAttrList</doc>
            <type name="Pango.AttrList" c:type="PangoAttrList*"/>
          </return-value>
          <parameters>
            <parameter name="document_text" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-text.c"
                   line="74">a #EvDocumentText</doc>
              <type name="DocumentText" c:type="EvDocumentText*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-text.c"
                   line="75">a #EvPage</doc>
              <type name="Page" c:type="EvPage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="DocumentTransition"
               c:symbol-prefix="document_transition"
               c:type="EvDocumentTransition"
               glib:type-name="EvDocumentTransition"
               glib:get-type="ev_document_transition_get_type"
               glib:type-struct="DocumentTransitionInterface">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="54"/>
      <virtual-method name="get_effect" invoker="get_effect">
        <source-position filename="libdocument/ev-document-transition.h"
                         line="52"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-transition.c"
               line="48">an #EvTransitionEffect</doc>
          <type name="TransitionEffect" c:type="EvTransitionEffect*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_trans" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-transition.c"
                 line="45">an #EvDocumentTransition</doc>
            <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-transition.c"
                 line="46">a page index</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_page_duration" invoker="get_page_duration">
        <source-position filename="libdocument/ev-document-transition.h"
                         line="50"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_trans" transfer-ownership="none">
            <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_effect"
              c:identifier="ev_document_transition_get_effect">
        <source-position filename="libdocument/ev-document-transition.h"
                         line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-transition.c"
               line="48">an #EvTransitionEffect</doc>
          <type name="TransitionEffect" c:type="EvTransitionEffect*"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_trans" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-transition.c"
                 line="45">an #EvDocumentTransition</doc>
            <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-transition.c"
                 line="46">a page index</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_page_duration"
              c:identifier="ev_document_transition_get_page_duration">
        <source-position filename="libdocument/ev-document-transition.h"
                         line="59"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="document_trans" transfer-ownership="none">
            <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="DocumentTransitionInterface"
            c:type="EvDocumentTransitionInterface"
            glib:is-gtype-struct-for="DocumentTransition">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="54"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_page_duration">
        <callback name="get_page_duration">
          <source-position filename="libdocument/ev-document-transition.h"
                           line="50"/>
          <return-value transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </return-value>
          <parameters>
            <parameter name="document_trans" transfer-ownership="none">
              <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_effect">
        <callback name="get_effect">
          <source-position filename="libdocument/ev-document-transition.h"
                           line="52"/>
          <return-value transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libdocument/ev-document-transition.c"
                 line="48">an #EvTransitionEffect</doc>
            <type name="TransitionEffect" c:type="EvTransitionEffect*"/>
          </return-value>
          <parameters>
            <parameter name="document_trans" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-transition.c"
                   line="45">an #EvDocumentTransition</doc>
              <type name="DocumentTransition" c:type="EvDocumentTransition*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="libdocument/ev-document-transition.c"
                   line="46">a page index</doc>
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <bitfield name="DocumentUIHints"
              glib:type-name="EvDocumentUIHints"
              glib:get-type="ev_document_ui_hints_get_type"
              c:type="EvDocumentUIHints">
      <member name="hide_toolbar"
              value="1"
              c:identifier="EV_DOCUMENT_UI_HINT_HIDE_TOOLBAR"
              glib:nick="hide-toolbar"
              glib:name="EV_DOCUMENT_UI_HINT_HIDE_TOOLBAR">
      </member>
      <member name="hide_menubar"
              value="2"
              c:identifier="EV_DOCUMENT_UI_HINT_HIDE_MENUBAR"
              glib:nick="hide-menubar"
              glib:name="EV_DOCUMENT_UI_HINT_HIDE_MENUBAR">
      </member>
      <member name="hide_windowui"
              value="4"
              c:identifier="EV_DOCUMENT_UI_HINT_HIDE_WINDOWUI"
              glib:nick="hide-windowui"
              glib:name="EV_DOCUMENT_UI_HINT_HIDE_WINDOWUI">
      </member>
      <member name="fit_window"
              value="8"
              c:identifier="EV_DOCUMENT_UI_HINT_FIT_WINDOW"
              glib:nick="fit-window"
              glib:name="EV_DOCUMENT_UI_HINT_FIT_WINDOW">
      </member>
      <member name="center_window"
              value="16"
              c:identifier="EV_DOCUMENT_UI_HINT_CENTER_WINDOW"
              glib:nick="center-window"
              glib:name="EV_DOCUMENT_UI_HINT_CENTER_WINDOW">
      </member>
      <member name="display_doc_title"
              value="32"
              c:identifier="EV_DOCUMENT_UI_HINT_DISPLAY_DOC_TITLE"
              glib:nick="display-doc-title"
              glib:name="EV_DOCUMENT_UI_HINT_DISPLAY_DOC_TITLE">
      </member>
      <member name="direction_rtl"
              value="64"
              c:identifier="EV_DOCUMENT_UI_HINT_DIRECTION_RTL"
              glib:nick="direction-rtl"
              glib:name="EV_DOCUMENT_UI_HINT_DIRECTION_RTL">
      </member>
    </bitfield>
    <function-macro name="FILE_EXPORTER"
                    c:identifier="EV_FILE_EXPORTER"
                    introspectable="0">
      <source-position filename="libdocument/ev-file-exporter.h" line="68"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FILE_EXPORTER_GET_IFACE"
                    c:identifier="EV_FILE_EXPORTER_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-file-exporter.h" line="72"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FILE_EXPORTER_IFACE"
                    c:identifier="EV_FILE_EXPORTER_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-file-exporter.h" line="69"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD"
                    c:identifier="EV_FORM_FIELD"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="36"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_BUTTON"
                    c:identifier="EV_FORM_FIELD_BUTTON"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="50"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_BUTTON_CLASS"
                    c:identifier="EV_FORM_FIELD_BUTTON_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="51"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_BUTTON_GET_CLASS"
                    c:identifier="EV_FORM_FIELD_BUTTON_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="54"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_CHOICE"
                    c:identifier="EV_FORM_FIELD_CHOICE"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="57"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_CHOICE_CLASS"
                    c:identifier="EV_FORM_FIELD_CHOICE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="58"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_CHOICE_GET_CLASS"
                    c:identifier="EV_FORM_FIELD_CHOICE_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="61"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_CLASS"
                    c:identifier="EV_FORM_FIELD_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_GET_CLASS"
                    c:identifier="EV_FORM_FIELD_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="40"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_SIGNATURE"
                    c:identifier="EV_FORM_FIELD_SIGNATURE"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="64"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_SIGNATURE_CLASS"
                    c:identifier="EV_FORM_FIELD_SIGNATURE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="65"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_SIGNATURE_GET_CLASS"
                    c:identifier="EV_FORM_FIELD_SIGNATURE_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="68"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_TEXT"
                    c:identifier="EV_FORM_FIELD_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="43"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_TEXT_CLASS"
                    c:identifier="EV_FORM_FIELD_TEXT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="44"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FORM_FIELD_TEXT_GET_CLASS"
                    c:identifier="EV_FORM_FIELD_TEXT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="47"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <interface name="FileExporter"
               c:symbol-prefix="file_exporter"
               c:type="EvFileExporter"
               glib:type-name="EvFileExporter"
               glib:get-type="ev_file_exporter_get_type"
               glib:type-struct="FileExporterInterface">
      <source-position filename="libdocument/ev-file-exporter.h" line="89"/>
      <virtual-method name="begin" invoker="begin">
        <source-position filename="libdocument/ev-file-exporter.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
          <parameter name="fc" transfer-ownership="none">
            <type name="FileExporterContext" c:type="EvFileExporterContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="begin_page" invoker="begin_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="do_page" invoker="do_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="end" invoker="end">
        <source-position filename="libdocument/ev-file-exporter.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="end_page" invoker="end_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_capabilities" invoker="get_capabilities">
        <source-position filename="libdocument/ev-file-exporter.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="FileExporterCapabilities"
                c:type="EvFileExporterCapabilities"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="begin" c:identifier="ev_file_exporter_begin">
        <source-position filename="libdocument/ev-file-exporter.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
          <parameter name="fc" transfer-ownership="none">
            <type name="FileExporterContext" c:type="EvFileExporterContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="begin_page" c:identifier="ev_file_exporter_begin_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="do_page" c:identifier="ev_file_exporter_do_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="99"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="end" c:identifier="ev_file_exporter_end">
        <source-position filename="libdocument/ev-file-exporter.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="end_page" c:identifier="ev_file_exporter_end_page">
        <source-position filename="libdocument/ev-file-exporter.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_capabilities"
              c:identifier="ev_file_exporter_get_capabilities">
        <source-position filename="libdocument/ev-file-exporter.h" line="106"/>
        <return-value transfer-ownership="none">
          <type name="FileExporterCapabilities"
                c:type="EvFileExporterCapabilities"/>
        </return-value>
        <parameters>
          <instance-parameter name="exporter" transfer-ownership="none">
            <type name="FileExporter" c:type="EvFileExporter*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <bitfield name="FileExporterCapabilities"
              glib:type-name="EvFileExporterCapabilities"
              glib:get-type="ev_file_exporter_capabilities_get_type"
              c:type="EvFileExporterCapabilities">
      <member name="page_set"
              value="1"
              c:identifier="EV_FILE_EXPORTER_CAN_PAGE_SET"
              glib:nick="page-set"
              glib:name="EV_FILE_EXPORTER_CAN_PAGE_SET">
      </member>
      <member name="copies"
              value="2"
              c:identifier="EV_FILE_EXPORTER_CAN_COPIES"
              glib:nick="copies"
              glib:name="EV_FILE_EXPORTER_CAN_COPIES">
      </member>
      <member name="collate"
              value="4"
              c:identifier="EV_FILE_EXPORTER_CAN_COLLATE"
              glib:nick="collate"
              glib:name="EV_FILE_EXPORTER_CAN_COLLATE">
      </member>
      <member name="reverse"
              value="8"
              c:identifier="EV_FILE_EXPORTER_CAN_REVERSE"
              glib:nick="reverse"
              glib:name="EV_FILE_EXPORTER_CAN_REVERSE">
      </member>
      <member name="scale"
              value="16"
              c:identifier="EV_FILE_EXPORTER_CAN_SCALE"
              glib:nick="scale"
              glib:name="EV_FILE_EXPORTER_CAN_SCALE">
      </member>
      <member name="generate_pdf"
              value="32"
              c:identifier="EV_FILE_EXPORTER_CAN_GENERATE_PDF"
              glib:nick="generate-pdf"
              glib:name="EV_FILE_EXPORTER_CAN_GENERATE_PDF">
      </member>
      <member name="generate_ps"
              value="64"
              c:identifier="EV_FILE_EXPORTER_CAN_GENERATE_PS"
              glib:nick="generate-ps"
              glib:name="EV_FILE_EXPORTER_CAN_GENERATE_PS">
      </member>
      <member name="preview"
              value="128"
              c:identifier="EV_FILE_EXPORTER_CAN_PREVIEW"
              glib:nick="preview"
              glib:name="EV_FILE_EXPORTER_CAN_PREVIEW">
      </member>
      <member name="number_up"
              value="256"
              c:identifier="EV_FILE_EXPORTER_CAN_NUMBER_UP"
              glib:nick="number-up"
              glib:name="EV_FILE_EXPORTER_CAN_NUMBER_UP">
      </member>
    </bitfield>
    <record name="FileExporterContext" c:type="EvFileExporterContext">
      <source-position filename="libdocument/ev-file-exporter.h" line="65"/>
      <field name="format" writable="1">
        <type name="FileExporterFormat" c:type="EvFileExporterFormat"/>
      </field>
      <field name="filename" writable="1">
        <type name="utf8" c:type="const gchar*"/>
      </field>
      <field name="first_page" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="last_page" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="paper_width" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="paper_height" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="duplex" writable="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="pages_per_sheet" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
    </record>
    <enumeration name="FileExporterFormat"
                 glib:type-name="EvFileExporterFormat"
                 glib:get-type="ev_file_exporter_format_get_type"
                 c:type="EvFileExporterFormat">
      <member name="unknown"
              value="0"
              c:identifier="EV_FILE_FORMAT_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_FILE_FORMAT_UNKNOWN">
      </member>
      <member name="ps"
              value="1"
              c:identifier="EV_FILE_FORMAT_PS"
              glib:nick="ps"
              glib:name="EV_FILE_FORMAT_PS">
      </member>
      <member name="pdf"
              value="2"
              c:identifier="EV_FILE_FORMAT_PDF"
              glib:nick="pdf"
              glib:name="EV_FILE_FORMAT_PDF">
      </member>
    </enumeration>
    <record name="FileExporterInterface"
            c:type="EvFileExporterInterface"
            glib:is-gtype-struct-for="FileExporter">
      <source-position filename="libdocument/ev-file-exporter.h" line="89"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="begin">
        <callback name="begin">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="81"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
            <parameter name="fc" transfer-ownership="none">
              <type name="FileExporterContext"
                    c:type="EvFileExporterContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="begin_page">
        <callback name="begin_page">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="83"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="do_page">
        <callback name="do_page">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="84"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="end_page">
        <callback name="end_page">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="86"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="end">
        <callback name="end">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="87"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_capabilities">
        <callback name="get_capabilities">
          <source-position filename="libdocument/ev-file-exporter.h"
                           line="88"/>
          <return-value transfer-ownership="none">
            <type name="FileExporterCapabilities"
                  c:type="EvFileExporterCapabilities"/>
          </return-value>
          <parameters>
            <parameter name="exporter" transfer-ownership="none">
              <type name="FileExporter" c:type="EvFileExporter*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <bitfield name="FindOptions"
              glib:type-name="EvFindOptions"
              glib:get-type="ev_find_options_get_type"
              c:type="EvFindOptions">
      <member name="default"
              value="0"
              c:identifier="EV_FIND_DEFAULT"
              glib:nick="default"
              glib:name="EV_FIND_DEFAULT">
      </member>
      <member name="case_sensitive"
              value="1"
              c:identifier="EV_FIND_CASE_SENSITIVE"
              glib:nick="case-sensitive"
              glib:name="EV_FIND_CASE_SENSITIVE">
      </member>
      <member name="whole_words_only"
              value="2"
              c:identifier="EV_FIND_WHOLE_WORDS_ONLY"
              glib:nick="whole-words-only"
              glib:name="EV_FIND_WHOLE_WORDS_ONLY">
      </member>
    </bitfield>
    <record name="FindRectangle"
            c:type="EvFindRectangle"
            glib:type-name="EvFindRectangle"
            glib:get-type="ev_find_rectangle_get_type"
            c:symbol-prefix="find_rectangle">
      <source-position filename="libdocument/ev-document-find.h" line="56"/>
      <field name="x1" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y1" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="x2" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y2" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="next_line" writable="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="after_hyphen" writable="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="_ev_reserved1" introspectable="0">
        <callback name="_ev_reserved1">
          <source-position filename="libdocument/ev-document-find.h"
                           line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_ev_reserved2" introspectable="0">
        <callback name="_ev_reserved2">
          <source-position filename="libdocument/ev-document-find.h"
                           line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <constructor name="new" c:identifier="ev_find_rectangle_new">
        <source-position filename="libdocument/ev-document-find.h" line="61"/>
        <return-value transfer-ownership="full">
          <type name="FindRectangle" c:type="EvFindRectangle*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="ev_find_rectangle_copy">
        <source-position filename="libdocument/ev-document-find.h" line="63"/>
        <return-value transfer-ownership="full">
          <type name="FindRectangle" c:type="EvFindRectangle*"/>
        </return-value>
        <parameters>
          <instance-parameter name="ev_find_rect" transfer-ownership="none">
            <type name="FindRectangle" c:type="EvFindRectangle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="ev_find_rectangle_free">
        <source-position filename="libdocument/ev-document-find.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="ev_find_rect" transfer-ownership="none">
            <type name="FindRectangle" c:type="EvFindRectangle*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <class name="FormField"
           c:symbol-prefix="form_field"
           c:type="EvFormField"
           parent="GObject.Object"
           abstract="1"
           glib:type-name="EvFormField"
           glib:get-type="ev_form_field_get_type"
           glib:type-struct="FormFieldClass">
      <source-position filename="libdocument/ev-form-field.h" line="121"/>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="id">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="is_read_only">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="font_size">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="activation_link">
        <type name="Link" c:type="EvLink*"/>
      </field>
      <field name="page">
        <type name="Page" c:type="EvPage*"/>
      </field>
      <field name="changed">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </class>
    <class name="FormFieldButton"
           c:symbol-prefix="form_field_button"
           c:type="EvFormFieldButton"
           parent="FormField"
           glib:type-name="EvFormFieldButton"
           glib:get-type="ev_form_field_button_get_type"
           glib:type-struct="FormFieldButtonClass">
      <source-position filename="libdocument/ev-form-field.h" line="156"/>
      <constructor name="new" c:identifier="ev_form_field_button_new">
        <source-position filename="libdocument/ev-form-field.h" line="205"/>
        <return-value transfer-ownership="full">
          <type name="FormField" c:type="EvFormField*"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <type name="FormFieldButtonType" c:type="EvFormFieldButtonType"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="FormField" c:type="EvFormField"/>
      </field>
      <field name="type">
        <type name="FormFieldButtonType" c:type="EvFormFieldButtonType"/>
      </field>
      <field name="state">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </class>
    <record name="FormFieldButtonClass"
            c:type="EvFormFieldButtonClass"
            glib:is-gtype-struct-for="FormFieldButton">
      <source-position filename="libdocument/ev-form-field.h" line="156"/>
      <field name="parent_class">
        <type name="FormFieldClass" c:type="EvFormFieldClass"/>
      </field>
    </record>
    <enumeration name="FormFieldButtonType"
                 glib:type-name="EvFormFieldButtonType"
                 glib:get-type="ev_form_field_button_type_get_type"
                 c:type="EvFormFieldButtonType">
      <member name="push"
              value="0"
              c:identifier="EV_FORM_FIELD_BUTTON_PUSH"
              glib:nick="push"
              glib:name="EV_FORM_FIELD_BUTTON_PUSH">
      </member>
      <member name="check"
              value="1"
              c:identifier="EV_FORM_FIELD_BUTTON_CHECK"
              glib:nick="check"
              glib:name="EV_FORM_FIELD_BUTTON_CHECK">
      </member>
      <member name="radio"
              value="2"
              c:identifier="EV_FORM_FIELD_BUTTON_RADIO"
              glib:nick="radio"
              glib:name="EV_FORM_FIELD_BUTTON_RADIO">
      </member>
    </enumeration>
    <class name="FormFieldChoice"
           c:symbol-prefix="form_field_choice"
           c:type="EvFormFieldChoice"
           parent="FormField"
           glib:type-name="EvFormFieldChoice"
           glib:get-type="ev_form_field_choice_get_type"
           glib:type-struct="FormFieldChoiceClass">
      <source-position filename="libdocument/ev-form-field.h" line="176"/>
      <constructor name="new" c:identifier="ev_form_field_choice_new">
        <source-position filename="libdocument/ev-form-field.h" line="212"/>
        <return-value transfer-ownership="full">
          <type name="FormField" c:type="EvFormField*"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <type name="FormFieldChoiceType" c:type="EvFormFieldChoiceType"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="FormField" c:type="EvFormField"/>
      </field>
      <field name="type">
        <type name="FormFieldChoiceType" c:type="EvFormFieldChoiceType"/>
      </field>
      <field name="multi_select" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="is_editable" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="do_spell_check" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="commit_on_sel_change" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="selected_items">
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </field>
      <field name="text">
        <type name="utf8" c:type="gchar*"/>
      </field>
    </class>
    <record name="FormFieldChoiceClass"
            c:type="EvFormFieldChoiceClass"
            glib:is-gtype-struct-for="FormFieldChoice">
      <source-position filename="libdocument/ev-form-field.h" line="176"/>
      <field name="parent_class">
        <type name="FormFieldClass" c:type="EvFormFieldClass"/>
      </field>
    </record>
    <enumeration name="FormFieldChoiceType"
                 glib:type-name="EvFormFieldChoiceType"
                 glib:get-type="ev_form_field_choice_type_get_type"
                 c:type="EvFormFieldChoiceType">
      <member name="combo"
              value="0"
              c:identifier="EV_FORM_FIELD_CHOICE_COMBO"
              glib:nick="combo"
              glib:name="EV_FORM_FIELD_CHOICE_COMBO">
      </member>
      <member name="list"
              value="1"
              c:identifier="EV_FORM_FIELD_CHOICE_LIST"
              glib:nick="list"
              glib:name="EV_FORM_FIELD_CHOICE_LIST">
      </member>
    </enumeration>
    <record name="FormFieldClass"
            c:type="EvFormFieldClass"
            glib:is-gtype-struct-for="FormField">
      <source-position filename="libdocument/ev-form-field.h" line="121"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <class name="FormFieldSignature"
           c:symbol-prefix="form_field_signature"
           c:type="EvFormFieldSignature"
           parent="FormField"
           glib:type-name="EvFormFieldSignature"
           glib:get-type="ev_form_field_signature_get_type"
           glib:type-struct="FormFieldSignatureClass">
      <source-position filename="libdocument/ev-form-field.h" line="188"/>
      <constructor name="new" c:identifier="ev_form_field_signature_new">
        <source-position filename="libdocument/ev-form-field.h" line="219"/>
        <return-value transfer-ownership="full">
          <type name="FormField" c:type="EvFormField*"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="FormField" c:type="EvFormField"/>
      </field>
    </class>
    <record name="FormFieldSignatureClass"
            c:type="EvFormFieldSignatureClass"
            glib:is-gtype-struct-for="FormFieldSignature">
      <source-position filename="libdocument/ev-form-field.h" line="188"/>
      <field name="parent_class">
        <type name="FormFieldClass" c:type="EvFormFieldClass"/>
      </field>
    </record>
    <class name="FormFieldText"
           c:symbol-prefix="form_field_text"
           c:type="EvFormFieldText"
           parent="FormField"
           glib:type-name="EvFormFieldText"
           glib:get-type="ev_form_field_text_get_type"
           glib:type-struct="FormFieldTextClass">
      <source-position filename="libdocument/ev-form-field.h" line="142"/>
      <constructor name="new" c:identifier="ev_form_field_text_new">
        <source-position filename="libdocument/ev-form-field.h" line="198"/>
        <return-value transfer-ownership="full">
          <type name="FormField" c:type="EvFormField*"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <type name="FormFieldTextType" c:type="EvFormFieldTextType"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="FormField" c:type="EvFormField"/>
      </field>
      <field name="type">
        <type name="FormFieldTextType" c:type="EvFormFieldTextType"/>
      </field>
      <field name="do_spell_check" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="do_scroll" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="comb" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="is_rich_text" bits="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="is_password">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="max_len">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="text">
        <type name="utf8" c:type="gchar*"/>
      </field>
    </class>
    <record name="FormFieldTextClass"
            c:type="EvFormFieldTextClass"
            glib:is-gtype-struct-for="FormFieldText">
      <source-position filename="libdocument/ev-form-field.h" line="142"/>
      <field name="parent_class">
        <type name="FormFieldClass" c:type="EvFormFieldClass"/>
      </field>
    </record>
    <enumeration name="FormFieldTextType"
                 glib:type-name="EvFormFieldTextType"
                 glib:get-type="ev_form_field_text_type_get_type"
                 c:type="EvFormFieldTextType">
      <member name="normal"
              value="0"
              c:identifier="EV_FORM_FIELD_TEXT_NORMAL"
              glib:nick="normal"
              glib:name="EV_FORM_FIELD_TEXT_NORMAL">
      </member>
      <member name="multiline"
              value="1"
              c:identifier="EV_FORM_FIELD_TEXT_MULTILINE"
              glib:nick="multiline"
              glib:name="EV_FORM_FIELD_TEXT_MULTILINE">
      </member>
      <member name="file_select"
              value="2"
              c:identifier="EV_FORM_FIELD_TEXT_FILE_SELECT"
              glib:nick="file-select"
              glib:name="EV_FORM_FIELD_TEXT_FILE_SELECT">
      </member>
    </enumeration>
    <function-macro name="IMAGE" c:identifier="EV_IMAGE" introspectable="0">
      <source-position filename="libdocument/ev-image.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IMAGE_CLASS"
                    c:identifier="EV_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-image.h" line="39"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IMAGE_GET_CLASS"
                    c:identifier="EV_IMAGE_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-image.h" line="42"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION"
                    c:identifier="EV_IS_ANNOTATION"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="40"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_ATTACHMENT"
                    c:identifier="EV_IS_ANNOTATION_ATTACHMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="64"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_ATTACHMENT_CLASS"
                    c:identifier="EV_IS_ANNOTATION_ATTACHMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="65"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_CLASS"
                    c:identifier="EV_IS_ANNOTATION_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="41"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_MARKUP"
                    c:identifier="EV_IS_ANNOTATION_MARKUP"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="48"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_MARKUP_IFACE"
                    c:identifier="EV_IS_ANNOTATION_MARKUP_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="49"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_TEXT"
                    c:identifier="EV_IS_ANNOTATION_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="56"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_TEXT_CLASS"
                    c:identifier="EV_IS_ANNOTATION_TEXT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="57"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_TEXT_MARKUP"
                    c:identifier="EV_IS_ANNOTATION_TEXT_MARKUP"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="72"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ANNOTATION_TEXT_MARKUP_CLASS"
                    c:identifier="EV_IS_ANNOTATION_TEXT_MARKUP_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-annotation.h" line="73"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ASYNC_RENDERER"
                    c:identifier="EV_IS_ASYNC_RENDERER"
                    introspectable="0">
      <source-position filename="libdocument/ev-async-renderer.h" line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ASYNC_RENDERER_IFACE"
                    c:identifier="EV_IS_ASYNC_RENDERER_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-async-renderer.h" line="39"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ATTACHMENT"
                    c:identifier="EV_IS_ATTACHMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-attachment.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ATTACHMENT_CLASS"
                    c:identifier="EV_IS_ATTACHMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-attachment.h" line="40"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT"
                    c:identifier="EV_IS_DOCUMENT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="42"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_ANNOTATIONS"
                    c:identifier="EV_IS_DOCUMENT_ANNOTATIONS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="39"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_ANNOTATIONS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_ANNOTATIONS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-annotations.h"
                       line="40"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_ATTACHMENTS"
                    c:identifier="EV_IS_DOCUMENT_ATTACHMENTS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_ATTACHMENTS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_ATTACHMENTS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-attachments.h"
                       line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_CLASS"
                    c:identifier="EV_IS_DOCUMENT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document.h" line="43"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FIND"
                    c:identifier="EV_IS_DOCUMENT_FIND"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-find.h" line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FIND_IFACE"
                    c:identifier="EV_IS_DOCUMENT_FIND_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-find.h" line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FONTS"
                    c:identifier="EV_IS_DOCUMENT_FONTS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-fonts.h" line="44"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FONTS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_FONTS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-fonts.h" line="45"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FORMS"
                    c:identifier="EV_IS_DOCUMENT_FORMS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-forms.h" line="39"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_FORMS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_FORMS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-forms.h" line="40"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_IMAGES"
                    c:identifier="EV_IS_DOCUMENT_IMAGES"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-images.h" line="40"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_IMAGES_IFACE"
                    c:identifier="EV_IS_DOCUMENT_IMAGES_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-images.h" line="41"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_LAYERS"
                    c:identifier="EV_IS_DOCUMENT_LAYERS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-layers.h" line="39"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_LAYERS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_LAYERS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-layers.h" line="40"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_LINKS"
                    c:identifier="EV_IS_DOCUMENT_LINKS"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-links.h" line="44"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_LINKS_IFACE"
                    c:identifier="EV_IS_DOCUMENT_LINKS_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-links.h" line="45"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_MEDIA"
                    c:identifier="EV_IS_DOCUMENT_MEDIA"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-media.h" line="39"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_MEDIA_IFACE"
                    c:identifier="EV_IS_DOCUMENT_MEDIA_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-media.h" line="41"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_PRINT"
                    c:identifier="EV_IS_DOCUMENT_PRINT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-print.h" line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_PRINT_IFACE"
                    c:identifier="EV_IS_DOCUMENT_PRINT_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-print.h" line="39"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_SECURITY"
                    c:identifier="EV_IS_DOCUMENT_SECURITY"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-security.h"
                       line="44"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_SECURITY_IFACE"
                    c:identifier="EV_IS_DOCUMENT_SECURITY_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-security.h"
                       line="45"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_TEXT"
                    c:identifier="EV_IS_DOCUMENT_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-text.h" line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_TEXT_IFACE"
                    c:identifier="EV_IS_DOCUMENT_TEXT_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-text.h" line="39"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_TRANSITION"
                    c:identifier="EV_IS_DOCUMENT_TRANSITION"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="38"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DOCUMENT_TRANSITION_IFACE"
                    c:identifier="EV_IS_DOCUMENT_TRANSITION_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-document-transition.h"
                       line="39"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FILE_EXPORTER"
                    c:identifier="EV_IS_FILE_EXPORTER"
                    introspectable="0">
      <source-position filename="libdocument/ev-file-exporter.h" line="70"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FILE_EXPORTER_IFACE"
                    c:identifier="EV_IS_FILE_EXPORTER_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-file-exporter.h" line="71"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD"
                    c:identifier="EV_IS_FORM_FIELD"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_BUTTON"
                    c:identifier="EV_IS_FORM_FIELD_BUTTON"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="52"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_BUTTON_CLASS"
                    c:identifier="EV_IS_FORM_FIELD_BUTTON_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="53"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_CHOICE"
                    c:identifier="EV_IS_FORM_FIELD_CHOICE"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="59"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_CHOICE_CLASS"
                    c:identifier="EV_IS_FORM_FIELD_CHOICE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="60"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_CLASS"
                    c:identifier="EV_IS_FORM_FIELD_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="39"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_SIGNATURE"
                    c:identifier="EV_IS_FORM_FIELD_SIGNATURE"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="66"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_SIGNATURE_CLASS"
                    c:identifier="EV_IS_FORM_FIELD_SIGNATURE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="67"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_TEXT"
                    c:identifier="EV_IS_FORM_FIELD_TEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="45"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FORM_FIELD_TEXT_CLASS"
                    c:identifier="EV_IS_FORM_FIELD_TEXT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-form-field.h" line="46"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_IMAGE"
                    c:identifier="EV_IS_IMAGE"
                    introspectable="0">
      <source-position filename="libdocument/ev-image.h" line="40"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_IMAGE_CLASS"
                    c:identifier="EV_IS_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-image.h" line="41"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LAYER"
                    c:identifier="EV_IS_LAYER"
                    introspectable="0">
      <source-position filename="libdocument/ev-layer.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LAYER_CLASS"
                    c:identifier="EV_IS_LAYER_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-layer.h" line="40"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK"
                    c:identifier="EV_IS_LINK"
                    introspectable="0">
      <source-position filename="libdocument/ev-link.h" line="41"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK_ACTION"
                    c:identifier="EV_IS_LINK_ACTION"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-action.h" line="41"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK_ACTION_CLASS"
                    c:identifier="EV_IS_LINK_ACTION_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-action.h" line="42"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK_CLASS"
                    c:identifier="EV_IS_LINK_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link.h" line="42"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK_DEST"
                    c:identifier="EV_IS_LINK_DEST"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-dest.h" line="40"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LINK_DEST_CLASS"
                    c:identifier="EV_IS_LINK_DEST_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-dest.h" line="41"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MEDIA"
                    c:identifier="EV_IS_MEDIA"
                    introspectable="0">
      <source-position filename="libdocument/ev-media.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MEDIA_CLASS"
                    c:identifier="EV_IS_MEDIA_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-media.h" line="41"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_PAGE"
                    c:identifier="EV_IS_PAGE"
                    introspectable="0">
      <source-position filename="libdocument/ev-page.h" line="36"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_PAGE_CLASS"
                    c:identifier="EV_IS_PAGE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-page.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_RENDER_CONTEXT"
                    c:identifier="EV_IS_RENDER_CONTEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-render-context.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SELECTION"
                    c:identifier="EV_IS_SELECTION"
                    introspectable="0">
      <source-position filename="libdocument/ev-selection.h" line="39"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SELECTION_IFACE"
                    c:identifier="EV_IS_SELECTION_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-selection.h" line="40"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TRANSITION_EFFECT"
                    c:identifier="EV_IS_TRANSITION_EFFECT"
                    introspectable="0">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TRANSITION_EFFECT_CLASS"
                    c:identifier="EV_IS_TRANSITION_EFFECT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Image"
           c:symbol-prefix="image"
           c:type="EvImage"
           parent="GObject.Object"
           glib:type-name="EvImage"
           glib:get-type="ev_image_get_type"
           glib:type-struct="ImageClass">
      <source-position filename="libdocument/ev-image.h" line="52"/>
      <constructor name="new" c:identifier="ev_image_new">
        <source-position filename="libdocument/ev-image.h" line="57"/>
        <return-value transfer-ownership="full">
          <type name="Image" c:type="EvImage*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="img_id" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_pixbuf"
                   c:identifier="ev_image_new_from_pixbuf">
        <source-position filename="libdocument/ev-image.h" line="60"/>
        <return-value transfer-ownership="full">
          <type name="Image" c:type="EvImage*"/>
        </return-value>
        <parameters>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_id" c:identifier="ev_image_get_id">
        <source-position filename="libdocument/ev-image.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EvImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page" c:identifier="ev_image_get_page">
        <source-position filename="libdocument/ev-image.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EvImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pixbuf" c:identifier="ev_image_get_pixbuf">
        <source-position filename="libdocument/ev-image.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-image.c"
               line="119">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-image.c"
                 line="117">an #EvImage</doc>
            <type name="Image" c:type="EvImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tmp_uri" c:identifier="ev_image_get_tmp_uri">
        <source-position filename="libdocument/ev-image.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EvImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="save_tmp" c:identifier="ev_image_save_tmp">
        <source-position filename="libdocument/ev-image.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EvImage*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <field name="base_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="ImagePrivate" c:type="EvImagePrivate*"/>
      </field>
    </class>
    <record name="ImageClass"
            c:type="EvImageClass"
            glib:is-gtype-struct-for="Image">
      <source-position filename="libdocument/ev-image.h" line="52"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="ImagePrivate"
            c:type="EvImagePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-image.h" line="35"/>
    </record>
    <function-macro name="LAYER" c:identifier="EV_LAYER" introspectable="0">
      <source-position filename="libdocument/ev-layer.h" line="37"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LAYER_CLASS"
                    c:identifier="EV_LAYER_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-layer.h" line="38"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LAYER_GET_CLASS"
                    c:identifier="EV_LAYER_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-layer.h" line="41"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK" c:identifier="EV_LINK" introspectable="0">
      <source-position filename="libdocument/ev-link.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_ACTION"
                    c:identifier="EV_LINK_ACTION"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-action.h" line="39"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_ACTION_CLASS"
                    c:identifier="EV_LINK_ACTION_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-action.h" line="40"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_ACTION_GET_CLASS"
                    c:identifier="EV_LINK_ACTION_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-action.h" line="43"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_CLASS"
                    c:identifier="EV_LINK_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link.h" line="40"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_DEST"
                    c:identifier="EV_LINK_DEST"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-dest.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_DEST_CLASS"
                    c:identifier="EV_LINK_DEST_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-dest.h" line="39"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_DEST_GET_CLASS"
                    c:identifier="EV_LINK_DEST_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link-dest.h" line="42"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LINK_GET_CLASS"
                    c:identifier="EV_LINK_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-link.h" line="43"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Layer"
           c:symbol-prefix="layer"
           c:type="EvLayer"
           parent="GObject.Object"
           glib:type-name="EvLayer"
           glib:get-type="ev_layer_get_type"
           glib:type-struct="LayerClass">
      <source-position filename="libdocument/ev-layer.h" line="51"/>
      <constructor name="new" c:identifier="ev_layer_new">
        <source-position filename="libdocument/ev-layer.h" line="56"/>
        <return-value transfer-ownership="full">
          <type name="Layer" c:type="EvLayer*"/>
        </return-value>
        <parameters>
          <parameter name="is_parent" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="rb_group" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_rb_group" c:identifier="ev_layer_get_rb_group">
        <source-position filename="libdocument/ev-layer.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_parent" c:identifier="ev_layer_is_parent">
        <source-position filename="libdocument/ev-layer.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="layer" transfer-ownership="none">
            <type name="Layer" c:type="EvLayer*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="base_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="LayerPrivate" c:type="EvLayerPrivate*"/>
      </field>
    </class>
    <record name="LayerClass"
            c:type="EvLayerClass"
            glib:is-gtype-struct-for="Layer">
      <source-position filename="libdocument/ev-layer.h" line="51"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="LayerPrivate"
            c:type="EvLayerPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-layer.h" line="34"/>
    </record>
    <class name="Link"
           c:symbol-prefix="link"
           c:type="EvLink"
           parent="GObject.Object"
           glib:type-name="EvLink"
           glib:get-type="ev_link_get_type"
           glib:type-struct="LinkClass">
      <source-position filename="libdocument/ev-link.h" line="35"/>
      <constructor name="new" c:identifier="ev_link_new">
        <source-position filename="libdocument/ev-link.h" line="49"/>
        <return-value transfer-ownership="full">
          <type name="Link" c:type="EvLink*"/>
        </return-value>
        <parameters>
          <parameter name="title" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="action" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_action"
              c:identifier="ev_link_get_action"
              glib:get-property="action">
        <source-position filename="libdocument/ev-link.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link.c"
               line="58">an #EvLinkAction</doc>
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link.c"
                 line="56">an #EvLink</doc>
            <type name="Link" c:type="EvLink*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title"
              c:identifier="ev_link_get_title"
              glib:get-property="title">
        <source-position filename="libdocument/ev-link.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Link" c:type="EvLink*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="action"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_action">
        <type name="LinkAction"/>
      </property>
      <property name="title"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_title"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
    </class>
    <class name="LinkAction"
           c:symbol-prefix="link_action"
           c:type="EvLinkAction"
           parent="GObject.Object"
           glib:type-name="EvLinkAction"
           glib:get-type="ev_link_action_get_type"
           glib:type-struct="LinkActionClass">
      <source-position filename="libdocument/ev-link-action.h" line="35"/>
      <constructor name="new_dest" c:identifier="ev_link_action_new_dest">
        <source-position filename="libdocument/ev-link-action.h" line="84"/>
        <return-value transfer-ownership="full">
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="dest" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_external_uri"
                   c:identifier="ev_link_action_new_external_uri">
        <source-position filename="libdocument/ev-link-action.h" line="89"/>
        <return-value transfer-ownership="full">
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_launch" c:identifier="ev_link_action_new_launch">
        <source-position filename="libdocument/ev-link-action.h" line="91"/>
        <return-value transfer-ownership="full">
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="filename" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="params" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_layers_state"
                   c:identifier="ev_link_action_new_layers_state">
        <source-position filename="libdocument/ev-link-action.h" line="96"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="497">a new #EvLinkAction</doc>
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="show_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="493">a list of #EvLayer objects</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Layer"/>
            </type>
          </parameter>
          <parameter name="hide_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="494">a list of #EvLayer objects</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Layer"/>
            </type>
          </parameter>
          <parameter name="toggle_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="495">a list of #EvLayer objects</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Layer"/>
            </type>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_named" c:identifier="ev_link_action_new_named">
        <source-position filename="libdocument/ev-link-action.h" line="94"/>
        <return-value transfer-ownership="full">
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_remote" c:identifier="ev_link_action_new_remote">
        <source-position filename="libdocument/ev-link-action.h" line="86"/>
        <return-value transfer-ownership="full">
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="dest" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </parameter>
          <parameter name="filename" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_reset_form"
                   c:identifier="ev_link_action_new_reset_form">
        <source-position filename="libdocument/ev-link-action.h" line="100"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="517">a new #EvLinkAction</doc>
          <type name="LinkAction" c:type="EvLinkAction*"/>
        </return-value>
        <parameters>
          <parameter name="fields" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="514">a list of fields to reset</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="exclude_fields" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="515">whether to exclude reset fields when resetting form</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="equal" c:identifier="ev_link_action_equal" version="3.8">
        <doc xml:space="preserve"
             filename="libdocument/ev-link-action.c"
             line="530">Checks whether @a and @b are equal.</doc>
        <source-position filename="libdocument/ev-link-action.h" line="104"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="537">%TRUE iff @a and @b are equal</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="a" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="532">a #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
          <parameter name="b" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="533">a #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_action_type"
              c:identifier="ev_link_action_get_action_type">
        <source-position filename="libdocument/ev-link-action.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="LinkActionType" c:type="EvLinkActionType"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_dest"
              c:identifier="ev_link_action_get_dest"
              glib:get-property="dest">
        <source-position filename="libdocument/ev-link-action.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="78">an #EvLinkDest</doc>
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="76">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_exclude_reset_fields"
              c:identifier="ev_link_action_get_exclude_reset_fields"
              glib:get-property="exclude-reset-fields">
        <source-position filename="libdocument/ev-link-action.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="180">whether to exclude reset fields when resetting form</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="178">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filename"
              c:identifier="ev_link_action_get_filename"
              glib:get-property="filename">
        <source-position filename="libdocument/ev-link-action.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_hide_list"
              c:identifier="ev_link_action_get_hide_list"
              glib:get-property="hide-list">
        <source-position filename="libdocument/ev-link-action.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="138">a list of #EvLayer objects</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Layer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="136">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name"
              c:identifier="ev_link_action_get_name"
              glib:get-property="name">
        <source-position filename="libdocument/ev-link-action.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_params"
              c:identifier="ev_link_action_get_params"
              glib:get-property="params">
        <source-position filename="libdocument/ev-link-action.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reset_fields"
              c:identifier="ev_link_action_get_reset_fields"
              glib:get-property="reset-fields">
        <source-position filename="libdocument/ev-link-action.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="166">a list of fields to reset</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="164">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_list"
              c:identifier="ev_link_action_get_show_list"
              glib:get-property="show-list">
        <source-position filename="libdocument/ev-link-action.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="124">a list of #EvLayer objects</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Layer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="122">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_toggle_list"
              c:identifier="ev_link_action_get_toggle_list"
              glib:get-property="toggle-list">
        <source-position filename="libdocument/ev-link-action.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-action.c"
               line="152">a list of #EvLayer objects</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Layer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-action.c"
                 line="150">an #EvLinkAction</doc>
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_uri"
              c:identifier="ev_link_action_get_uri"
              glib:get-property="uri">
        <source-position filename="libdocument/ev-link-action.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkAction" c:type="EvLinkAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="dest"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_dest">
        <type name="LinkDest"/>
      </property>
      <property name="exclude-reset-fields"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_exclude_reset_fields"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="filename"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_filename"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="hide-list"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_hide_list">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="name"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_name"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="params"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_params"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="reset-fields"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_reset_fields">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="show-list"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_show_list">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="toggle-list"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_toggle_list">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="type"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="EV_LINK_ACTION_TYPE_GOTO_DEST">
        <type name="LinkActionType"/>
      </property>
      <property name="uri"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_uri"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
    </class>
    <record name="LinkActionClass"
            c:type="EvLinkActionClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="LinkAction">
      <source-position filename="libdocument/ev-link-action.h" line="35"/>
    </record>
    <record name="LinkActionPrivate"
            c:type="EvLinkActionPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-link-action.h" line="36"/>
    </record>
    <enumeration name="LinkActionType"
                 glib:type-name="EvLinkActionType"
                 glib:get-type="ev_link_action_type_get_type"
                 c:type="EvLinkActionType">
      <member name="goto_dest"
              value="0"
              c:identifier="EV_LINK_ACTION_TYPE_GOTO_DEST"
              glib:nick="goto-dest"
              glib:name="EV_LINK_ACTION_TYPE_GOTO_DEST">
      </member>
      <member name="goto_remote"
              value="1"
              c:identifier="EV_LINK_ACTION_TYPE_GOTO_REMOTE"
              glib:nick="goto-remote"
              glib:name="EV_LINK_ACTION_TYPE_GOTO_REMOTE">
      </member>
      <member name="external_uri"
              value="2"
              c:identifier="EV_LINK_ACTION_TYPE_EXTERNAL_URI"
              glib:nick="external-uri"
              glib:name="EV_LINK_ACTION_TYPE_EXTERNAL_URI">
      </member>
      <member name="launch"
              value="3"
              c:identifier="EV_LINK_ACTION_TYPE_LAUNCH"
              glib:nick="launch"
              glib:name="EV_LINK_ACTION_TYPE_LAUNCH">
      </member>
      <member name="named"
              value="4"
              c:identifier="EV_LINK_ACTION_TYPE_NAMED"
              glib:nick="named"
              glib:name="EV_LINK_ACTION_TYPE_NAMED">
      </member>
      <member name="layers_state"
              value="5"
              c:identifier="EV_LINK_ACTION_TYPE_LAYERS_STATE"
              glib:nick="layers-state"
              glib:name="EV_LINK_ACTION_TYPE_LAYERS_STATE">
      </member>
      <member name="reset_form"
              value="6"
              c:identifier="EV_LINK_ACTION_TYPE_RESET_FORM"
              glib:nick="reset-form"
              glib:name="EV_LINK_ACTION_TYPE_RESET_FORM">
      </member>
    </enumeration>
    <record name="LinkClass"
            c:type="EvLinkClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="Link">
      <source-position filename="libdocument/ev-link.h" line="35"/>
    </record>
    <class name="LinkDest"
           c:symbol-prefix="link_dest"
           c:type="EvLinkDest"
           parent="GObject.Object"
           glib:type-name="EvLinkDest"
           glib:get-type="ev_link_dest_get_type"
           glib:type-struct="LinkDestClass">
      <source-position filename="libdocument/ev-link-dest.h" line="34"/>
      <constructor name="new_fit" c:identifier="ev_link_dest_new_fit">
        <source-position filename="libdocument/ev-link-dest.h" line="92"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_fith" c:identifier="ev_link_dest_new_fith">
        <source-position filename="libdocument/ev-link-dest.h" line="94"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="top" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="change_top" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_fitr" c:identifier="ev_link_dest_new_fitr">
        <source-position filename="libdocument/ev-link-dest.h" line="102"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="left" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="bottom" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="right" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="top" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_fitv" c:identifier="ev_link_dest_new_fitv">
        <source-position filename="libdocument/ev-link-dest.h" line="98"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="left" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="change_left" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_named" c:identifier="ev_link_dest_new_named">
        <source-position filename="libdocument/ev-link-dest.h" line="108"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="named_dest" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_page" c:identifier="ev_link_dest_new_page">
        <source-position filename="libdocument/ev-link-dest.h" line="82"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_page_label"
                   c:identifier="ev_link_dest_new_page_label">
        <source-position filename="libdocument/ev-link-dest.h" line="110"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page_label" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_xyz" c:identifier="ev_link_dest_new_xyz">
        <source-position filename="libdocument/ev-link-dest.h" line="84"/>
        <return-value transfer-ownership="full">
          <type name="LinkDest" c:type="EvLinkDest*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="left" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="top" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="zoom" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="change_left" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="change_top" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="change_zoom" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="equal" c:identifier="ev_link_dest_equal" version="3.8">
        <doc xml:space="preserve"
             filename="libdocument/ev-link-dest.c"
             line="512">Checks whether @a and @b are equal.</doc>
        <source-position filename="libdocument/ev-link-dest.h" line="113"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-link-dest.c"
               line="519">%TRUE iff @a and @b are equal</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="a" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-dest.c"
                 line="514">a #EvLinkDest</doc>
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
          <parameter name="b" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-link-dest.c"
                 line="515">a #EvLinkDest</doc>
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_bottom"
              c:identifier="ev_link_dest_get_bottom"
              glib:get-property="bottom">
        <source-position filename="libdocument/ev-link-dest.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_dest_type" c:identifier="ev_link_dest_get_dest_type">
        <source-position filename="libdocument/ev-link-dest.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="LinkDestType" c:type="EvLinkDestType"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_left"
              c:identifier="ev_link_dest_get_left"
              glib:get-property="left">
        <source-position filename="libdocument/ev-link-dest.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
          <parameter name="change_left" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_named_dest" c:identifier="ev_link_dest_get_named_dest">
        <source-position filename="libdocument/ev-link-dest.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page"
              c:identifier="ev_link_dest_get_page"
              glib:get-property="page">
        <source-position filename="libdocument/ev-link-dest.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page_label"
              c:identifier="ev_link_dest_get_page_label"
              glib:get-property="page-label">
        <source-position filename="libdocument/ev-link-dest.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_right"
              c:identifier="ev_link_dest_get_right"
              glib:get-property="right">
        <source-position filename="libdocument/ev-link-dest.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_top"
              c:identifier="ev_link_dest_get_top"
              glib:get-property="top">
        <source-position filename="libdocument/ev-link-dest.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
          <parameter name="change_top" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_zoom"
              c:identifier="ev_link_dest_get_zoom"
              glib:get-property="zoom">
        <source-position filename="libdocument/ev-link-dest.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="LinkDest" c:type="EvLinkDest*"/>
          </instance-parameter>
          <parameter name="change_zoom" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <property name="bottom"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_bottom"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="change"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="left"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_left"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="named"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="page"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_page"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="page-label"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_page_label"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="right"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_right"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="top"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_top"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="type"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="EV_LINK_DEST_TYPE_UNKNOWN">
        <type name="LinkDestType"/>
      </property>
      <property name="zoom"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_zoom"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
    </class>
    <record name="LinkDestClass"
            c:type="EvLinkDestClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="LinkDest">
      <source-position filename="libdocument/ev-link-dest.h" line="34"/>
    </record>
    <record name="LinkDestPrivate"
            c:type="EvLinkDestPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-link-dest.h" line="35"/>
    </record>
    <enumeration name="LinkDestType"
                 glib:type-name="EvLinkDestType"
                 glib:get-type="ev_link_dest_type_get_type"
                 c:type="EvLinkDestType">
      <member name="page"
              value="0"
              c:identifier="EV_LINK_DEST_TYPE_PAGE"
              glib:nick="page"
              glib:name="EV_LINK_DEST_TYPE_PAGE">
      </member>
      <member name="xyz"
              value="1"
              c:identifier="EV_LINK_DEST_TYPE_XYZ"
              glib:nick="xyz"
              glib:name="EV_LINK_DEST_TYPE_XYZ">
      </member>
      <member name="fit"
              value="2"
              c:identifier="EV_LINK_DEST_TYPE_FIT"
              glib:nick="fit"
              glib:name="EV_LINK_DEST_TYPE_FIT">
      </member>
      <member name="fith"
              value="3"
              c:identifier="EV_LINK_DEST_TYPE_FITH"
              glib:nick="fith"
              glib:name="EV_LINK_DEST_TYPE_FITH">
      </member>
      <member name="fitv"
              value="4"
              c:identifier="EV_LINK_DEST_TYPE_FITV"
              glib:nick="fitv"
              glib:name="EV_LINK_DEST_TYPE_FITV">
      </member>
      <member name="fitr"
              value="5"
              c:identifier="EV_LINK_DEST_TYPE_FITR"
              glib:nick="fitr"
              glib:name="EV_LINK_DEST_TYPE_FITR">
      </member>
      <member name="named"
              value="6"
              c:identifier="EV_LINK_DEST_TYPE_NAMED"
              glib:nick="named"
              glib:name="EV_LINK_DEST_TYPE_NAMED">
      </member>
      <member name="page_label"
              value="7"
              c:identifier="EV_LINK_DEST_TYPE_PAGE_LABEL"
              glib:nick="page-label"
              glib:name="EV_LINK_DEST_TYPE_PAGE_LABEL">
      </member>
      <member name="unknown"
              value="8"
              c:identifier="EV_LINK_DEST_TYPE_UNKNOWN"
              glib:nick="unknown"
              glib:name="EV_LINK_DEST_TYPE_UNKNOWN">
      </member>
    </enumeration>
    <record name="LinkPrivate" c:type="EvLinkPrivate" disguised="1" opaque="1">
      <source-position filename="libdocument/ev-link.h" line="36"/>
    </record>
    <constant name="MAJOR_VERSION" value="48" c:type="EV_MAJOR_VERSION">
      <doc xml:space="preserve"
           filename="libdocument/ev-version.h"
           line="28">The major version number of the EV library
(e.g. in version 3.1.4 this is 3).</doc>
      <source-position filename="libdocument/ev-version.h" line="35"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="MEDIA" c:identifier="EV_MEDIA" introspectable="0">
      <source-position filename="libdocument/ev-media.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MEDIA_CLASS"
                    c:identifier="EV_MEDIA_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-media.h" line="40"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MEDIA_GET_CLASS"
                    c:identifier="EV_MEDIA_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-media.h" line="42"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="MINOR_VERSION" value="0" c:type="EV_MINOR_VERSION">
      <doc xml:space="preserve"
           filename="libdocument/ev-version.h"
           line="37">The minor version number of the EV library
(e.g. in version 3.1.4 this is 1).</doc>
      <source-position filename="libdocument/ev-version.h" line="43"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <record name="Mapping" c:type="EvMapping">
      <source-position filename="libdocument/ev-document.h" line="289"/>
      <field name="area" writable="1">
        <type name="Rectangle" c:type="EvRectangle"/>
      </field>
      <field name="data" writable="1">
        <type name="gpointer" c:type="gpointer"/>
      </field>
    </record>
    <record name="MappingList"
            c:type="EvMappingList"
            opaque="1"
            glib:type-name="EvMappingList"
            glib:get-type="ev_mapping_list_get_type"
            c:symbol-prefix="mapping_list">
      <source-position filename="libdocument/ev-mapping-list.h" line="32"/>
      <constructor name="new" c:identifier="ev_mapping_list_new">
        <source-position filename="libdocument/ev-mapping-list.h" line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="235">an #EvMappingList</doc>
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="231">page index for this mapping</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="232">a #GList of data for the page</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Mapping"/>
            </type>
          </parameter>
          <parameter name="data_destroy_func"
                     transfer-ownership="none"
                     scope="async">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="233">function to free a list element</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="find" c:identifier="ev_mapping_list_find">
        <source-position filename="libdocument/ev-mapping-list.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="43">an #EvMapping</doc>
          <type name="Mapping" c:type="EvMapping*"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="40">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="41">mapping data to find</doc>
            <type name="gpointer" c:type="gconstpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_custom" c:identifier="ev_mapping_list_find_custom">
        <source-position filename="libdocument/ev-mapping-list.h" line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="67">an #EvMapping</doc>
          <type name="Mapping" c:type="EvMapping*"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="63">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="64">mapping data to find</doc>
            <type name="gpointer" c:type="gconstpointer"/>
          </parameter>
          <parameter name="func" transfer-ownership="none" scope="call">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="65">function to use for equality check</doc>
            <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="get" c:identifier="ev_mapping_list_get" version="3.12">
        <source-position filename="libdocument/ev-mapping-list.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="132">the #EvMapping in the list at coordinates (x, y)</doc>
          <type name="Mapping" c:type="EvMapping*"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="128">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="129">X coordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="130">Y coordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_data" c:identifier="ev_mapping_list_get_data">
        <source-position filename="libdocument/ev-mapping-list.h" line="66"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="171">the data of a mapping in the list at coordinates (x, y)</doc>
          <type name="gpointer" c:type="gpointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="167">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="168">X coordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="169">Y coordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_list" c:identifier="ev_mapping_list_get_list">
        <source-position filename="libdocument/ev-mapping-list.h" line="50"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="191">the data for this mapping list</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Mapping"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="189">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page" c:identifier="ev_mapping_list_get_page">
        <source-position filename="libdocument/ev-mapping-list.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="length" c:identifier="ev_mapping_list_length">
        <source-position filename="libdocument/ev-mapping-list.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="nth" c:identifier="ev_mapping_list_nth">
        <source-position filename="libdocument/ev-mapping-list.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-mapping-list.c"
               line="91">the #Evmapping at position @n in @mapping_list</doc>
          <type name="Mapping" c:type="EvMapping*"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="88">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="n" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="89">the position to retrieve</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="ev_mapping_list_ref">
        <source-position filename="libdocument/ev-mapping-list.h" line="43"/>
        <return-value transfer-ownership="full">
          <type name="MappingList" c:type="EvMappingList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove"
              c:identifier="ev_mapping_list_remove"
              version="3.14">
        <source-position filename="libdocument/ev-mapping-list.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="201">an #EvMappingList</doc>
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
          <parameter name="mapping" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libdocument/ev-mapping-list.c"
                 line="202">#EvMapping to remove</doc>
            <type name="Mapping" c:type="EvMapping*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="ev_mapping_list_unref">
        <source-position filename="libdocument/ev-mapping-list.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="mapping_list" transfer-ownership="none">
            <type name="MappingList" c:type="EvMappingList*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <class name="Media"
           c:symbol-prefix="media"
           c:type="EvMedia"
           parent="GObject.Object"
           glib:type-name="EvMedia"
           glib:get-type="ev_media_get_type"
           glib:type-struct="MediaClass">
      <source-position filename="libdocument/ev-media.h" line="52"/>
      <constructor name="new_for_uri" c:identifier="ev_media_new_for_uri">
        <source-position filename="libdocument/ev-media.h" line="58"/>
        <return-value transfer-ownership="full">
          <type name="Media" c:type="EvMedia*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="uri" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_page_index" c:identifier="ev_media_get_page_index">
        <source-position filename="libdocument/ev-media.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="media" transfer-ownership="none">
            <type name="Media" c:type="EvMedia*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_controls"
              c:identifier="ev_media_get_show_controls">
        <source-position filename="libdocument/ev-media.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="media" transfer-ownership="none">
            <type name="Media" c:type="EvMedia*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_uri" c:identifier="ev_media_get_uri">
        <source-position filename="libdocument/ev-media.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="media" transfer-ownership="none">
            <type name="Media" c:type="EvMedia*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_show_controls"
              c:identifier="ev_media_set_show_controls">
        <source-position filename="libdocument/ev-media.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="media" transfer-ownership="none">
            <type name="Media" c:type="EvMedia*"/>
          </instance-parameter>
          <parameter name="show_controls" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <field name="base_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MediaPrivate" c:type="EvMediaPrivate*"/>
      </field>
    </class>
    <record name="MediaClass"
            c:type="EvMediaClass"
            glib:is-gtype-struct-for="Media">
      <source-position filename="libdocument/ev-media.h" line="52"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MediaPrivate"
            c:type="EvMediaPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="libdocument/ev-media.h" line="35"/>
    </record>
    <function-macro name="PAGE" c:identifier="EV_PAGE" introspectable="0">
      <source-position filename="libdocument/ev-page.h" line="34"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PAGE_CLASS"
                    c:identifier="EV_PAGE_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-page.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PAGE_GET_CLASS"
                    c:identifier="EV_PAGE_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-page.h" line="38"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Page"
           c:symbol-prefix="page"
           c:type="EvPage"
           parent="GObject.Object"
           glib:type-name="EvPage"
           glib:get-type="ev_page_get_type"
           glib:type-struct="PageClass">
      <source-position filename="libdocument/ev-page.h" line="57"/>
      <constructor name="new" c:identifier="ev_page_new">
        <source-position filename="libdocument/ev-page.h" line="63"/>
        <return-value transfer-ownership="full">
          <type name="Page" c:type="EvPage*"/>
        </return-value>
        <parameters>
          <parameter name="index" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="base_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="index">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="backend_page">
        <type name="BackendPage" c:type="EvBackendPage"/>
      </field>
      <field name="backend_destroy_func">
        <type name="BackendPageDestroyFunc" c:type="EvBackendPageDestroyFunc"/>
      </field>
    </class>
    <record name="PageClass"
            c:type="EvPageClass"
            glib:is-gtype-struct-for="Page">
      <source-position filename="libdocument/ev-page.h" line="57"/>
      <field name="base_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="Point" c:type="EvPoint">
      <source-position filename="libdocument/ev-document.h" line="75"/>
      <field name="x" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <field name="y" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
    </record>
    <function-macro name="RENDER_CONTEXT"
                    c:identifier="EV_RENDER_CONTEXT"
                    introspectable="0">
      <source-position filename="libdocument/ev-render-context.h" line="37"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="RENDER_CONTEXT_CLASS"
                    c:identifier="EV_RENDER_CONTEXT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-render-context.h" line="38"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <record name="Rectangle"
            c:type="EvRectangle"
            glib:type-name="EvRectangle"
            glib:get-type="ev_rectangle_get_type"
            c:symbol-prefix="rectangle">
      <source-position filename="libdocument/ev-document.h" line="275"/>
      <field name="x1" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y1" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="x2" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y2" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="ev_rectangle_new">
        <source-position filename="libdocument/ev-document.h" line="280"/>
        <return-value transfer-ownership="full">
          <type name="Rectangle" c:type="EvRectangle*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="ev_rectangle_copy">
        <source-position filename="libdocument/ev-document.h" line="282"/>
        <return-value transfer-ownership="full">
          <type name="Rectangle" c:type="EvRectangle*"/>
        </return-value>
        <parameters>
          <instance-parameter name="ev_rect" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="ev_rectangle_free">
        <source-position filename="libdocument/ev-document.h" line="284"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="ev_rect" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <class name="RenderContext"
           c:symbol-prefix="render_context"
           c:type="EvRenderContext"
           parent="GObject.Object"
           glib:type-name="EvRenderContext"
           glib:get-type="ev_render_context_get_type"
           glib:type-struct="RenderContextClass">
      <source-position filename="libdocument/ev-render-context.h" line="44"/>
      <constructor name="new" c:identifier="ev_render_context_new">
        <source-position filename="libdocument/ev-render-context.h" line="61"/>
        <return-value transfer-ownership="full">
          <type name="RenderContext" c:type="EvRenderContext*"/>
        </return-value>
        <parameters>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="rotation" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="scale" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="compute_scaled_size"
              c:identifier="ev_render_context_compute_scaled_size">
        <source-position filename="libdocument/ev-render-context.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="width_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="height_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="scaled_width" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="scaled_height" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="compute_scales"
              c:identifier="ev_render_context_compute_scales">
        <source-position filename="libdocument/ev-render-context.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="width_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="height_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="scale_x" transfer-ownership="none">
            <type name="gdouble" c:type="double*"/>
          </parameter>
          <parameter name="scale_y" transfer-ownership="none">
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </method>
      <method name="compute_transformed_size"
              c:identifier="ev_render_context_compute_transformed_size">
        <source-position filename="libdocument/ev-render-context.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="width_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="height_points" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="transformed_width" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="transformed_height" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_page" c:identifier="ev_render_context_set_page">
        <source-position filename="libdocument/ev-render-context.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rotation"
              c:identifier="ev_render_context_set_rotation">
        <source-position filename="libdocument/ev-render-context.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="rotation" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scale" c:identifier="ev_render_context_set_scale">
        <source-position filename="libdocument/ev-render-context.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="scale" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_target_size"
              c:identifier="ev_render_context_set_target_size">
        <source-position filename="libdocument/ev-render-context.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </instance-parameter>
          <parameter name="target_width" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="target_height" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="page">
        <type name="Page" c:type="EvPage*"/>
      </field>
      <field name="rotation">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="scale">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="target_width">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="target_height">
        <type name="gint" c:type="gint"/>
      </field>
    </class>
    <record name="RenderContextClass"
            c:type="EvRenderContextClass"
            glib:is-gtype-struct-for="RenderContext">
      <source-position filename="libdocument/ev-render-context.h" line="44"/>
      <field name="klass">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <function-macro name="SELECTION"
                    c:identifier="EV_SELECTION"
                    introspectable="0">
      <source-position filename="libdocument/ev-selection.h" line="37"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SELECTION_GET_IFACE"
                    c:identifier="EV_SELECTION_GET_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-selection.h" line="41"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SELECTION_IFACE"
                    c:identifier="EV_SELECTION_IFACE"
                    introspectable="0">
      <source-position filename="libdocument/ev-selection.h" line="38"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <interface name="Selection"
               c:symbol-prefix="selection"
               c:type="EvSelection"
               glib:type-name="EvSelection"
               glib:get-type="ev_selection_get_type"
               glib:type-struct="SelectionInterface">
      <source-position filename="libdocument/ev-selection.h" line="72"/>
      <virtual-method name="get_selected_text" invoker="get_selected_text">
        <source-position filename="libdocument/ev-selection.h" line="64"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_selection_region"
                      invoker="get_selection_region">
        <source-position filename="libdocument/ev-selection.h" line="68"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Region" c:type="cairo_region_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="render_selection" invoker="render_selection">
        <source-position filename="libdocument/ev-selection.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
          <parameter name="surface" transfer-ownership="none">
            <type name="cairo.Surface" c:type="cairo_surface_t**"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
          <parameter name="old_points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="Gdk.Color" c:type="GdkColor*"/>
          </parameter>
          <parameter name="base" transfer-ownership="none">
            <type name="Gdk.Color" c:type="GdkColor*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_selected_text"
              c:identifier="ev_selection_get_selected_text">
        <source-position filename="libdocument/ev-selection.h" line="86"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="Page" c:type="EvPage*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_selection_region"
              c:identifier="ev_selection_get_selection_region">
        <source-position filename="libdocument/ev-selection.h" line="91"/>
        <return-value transfer-ownership="full">
          <type name="cairo.Region" c:type="cairo_region_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="render_selection"
              c:identifier="ev_selection_render_selection">
        <source-position filename="libdocument/ev-selection.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="selection" transfer-ownership="none">
            <type name="Selection" c:type="EvSelection*"/>
          </instance-parameter>
          <parameter name="rc" transfer-ownership="none">
            <type name="RenderContext" c:type="EvRenderContext*"/>
          </parameter>
          <parameter name="surface" transfer-ownership="none">
            <type name="cairo.Surface" c:type="cairo_surface_t**"/>
          </parameter>
          <parameter name="points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
          <parameter name="old_points" transfer-ownership="none">
            <type name="Rectangle" c:type="EvRectangle*"/>
          </parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="SelectionStyle" c:type="EvSelectionStyle"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="Gdk.Color" c:type="GdkColor*"/>
          </parameter>
          <parameter name="base" transfer-ownership="none">
            <type name="Gdk.Color" c:type="GdkColor*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="SelectionInterface"
            c:type="EvSelectionInterface"
            glib:is-gtype-struct-for="Selection">
      <source-position filename="libdocument/ev-selection.h" line="72"/>
      <field name="base_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="render_selection">
        <callback name="render_selection">
          <source-position filename="libdocument/ev-selection.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="selection" transfer-ownership="none">
              <type name="Selection" c:type="EvSelection*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
            <parameter name="surface" transfer-ownership="none">
              <type name="cairo.Surface" c:type="cairo_surface_t**"/>
            </parameter>
            <parameter name="points" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle*"/>
            </parameter>
            <parameter name="old_points" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle*"/>
            </parameter>
            <parameter name="style" transfer-ownership="none">
              <type name="SelectionStyle" c:type="EvSelectionStyle"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <type name="Gdk.Color" c:type="GdkColor*"/>
            </parameter>
            <parameter name="base" transfer-ownership="none">
              <type name="Gdk.Color" c:type="GdkColor*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_selected_text">
        <callback name="get_selected_text">
          <source-position filename="libdocument/ev-selection.h" line="64"/>
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="selection" transfer-ownership="none">
              <type name="Selection" c:type="EvSelection*"/>
            </parameter>
            <parameter name="page" transfer-ownership="none">
              <type name="Page" c:type="EvPage*"/>
            </parameter>
            <parameter name="style" transfer-ownership="none">
              <type name="SelectionStyle" c:type="EvSelectionStyle"/>
            </parameter>
            <parameter name="points" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_selection_region">
        <callback name="get_selection_region">
          <source-position filename="libdocument/ev-selection.h" line="68"/>
          <return-value transfer-ownership="full">
            <type name="cairo.Region" c:type="cairo_region_t*"/>
          </return-value>
          <parameters>
            <parameter name="selection" transfer-ownership="none">
              <type name="Selection" c:type="EvSelection*"/>
            </parameter>
            <parameter name="rc" transfer-ownership="none">
              <type name="RenderContext" c:type="EvRenderContext*"/>
            </parameter>
            <parameter name="style" transfer-ownership="none">
              <type name="SelectionStyle" c:type="EvSelectionStyle"/>
            </parameter>
            <parameter name="points" transfer-ownership="none">
              <type name="Rectangle" c:type="EvRectangle*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="SelectionStyle"
                 glib:type-name="EvSelectionStyle"
                 glib:get-type="ev_selection_style_get_type"
                 c:type="EvSelectionStyle">
      <member name="glyph"
              value="0"
              c:identifier="EV_SELECTION_STYLE_GLYPH"
              glib:nick="glyph"
              glib:name="EV_SELECTION_STYLE_GLYPH">
      </member>
      <member name="word"
              value="1"
              c:identifier="EV_SELECTION_STYLE_WORD"
              glib:nick="word"
              glib:name="EV_SELECTION_STYLE_WORD">
      </member>
      <member name="line"
              value="2"
              c:identifier="EV_SELECTION_STYLE_LINE"
              glib:nick="line"
              glib:name="EV_SELECTION_STYLE_LINE">
      </member>
    </enumeration>
    <record name="SourceLink"
            c:type="EvSourceLink"
            glib:type-name="EvSourceLink"
            glib:get-type="ev_source_link_get_type"
            c:symbol-prefix="source_link">
      <source-position filename="libdocument/ev-document.h" line="297"/>
      <field name="filename" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="line" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="col" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
      <constructor name="new" c:identifier="ev_source_link_new">
        <source-position filename="libdocument/ev-document.h" line="302"/>
        <return-value transfer-ownership="full">
          <type name="SourceLink" c:type="EvSourceLink*"/>
        </return-value>
        <parameters>
          <parameter name="filename" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="line" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="col" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy" c:identifier="ev_source_link_copy">
        <source-position filename="libdocument/ev-document.h" line="306"/>
        <return-value transfer-ownership="full">
          <type name="SourceLink" c:type="EvSourceLink*"/>
        </return-value>
        <parameters>
          <instance-parameter name="link" transfer-ownership="none">
            <type name="SourceLink" c:type="EvSourceLink*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="ev_source_link_free">
        <source-position filename="libdocument/ev-document.h" line="308"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="link" transfer-ownership="none">
            <type name="SourceLink" c:type="EvSourceLink*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function-macro name="TRANSITION_EFFECT"
                    c:identifier="EV_TRANSITION_EFFECT"
                    introspectable="0">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TRANSITION_EFFECT_CLASS"
                    c:identifier="EV_TRANSITION_EFFECT_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TRANSITION_EFFECT_GET_CLASS"
                    c:identifier="EV_TRANSITION_EFFECT_GET_CLASS"
                    introspectable="0">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="38"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="TransitionEffect"
           c:symbol-prefix="transition_effect"
           c:type="EvTransitionEffect"
           parent="GObject.Object"
           glib:type-name="EvTransitionEffect"
           glib:get-type="ev_transition_effect_get_type"
           glib:type-struct="TransitionEffectClass">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="77"/>
      <constructor name="new"
                   c:identifier="ev_transition_effect_new"
                   introspectable="0">
        <source-position filename="libdocument/ev-transition-effect.h"
                         line="83"/>
        <return-value transfer-ownership="full">
          <type name="TransitionEffect" c:type="EvTransitionEffect*"/>
        </return-value>
        <parameters>
          <parameter name="type" transfer-ownership="none">
            <type name="TransitionEffectType" c:type="EvTransitionEffectType"/>
          </parameter>
          <parameter name="first_property_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </constructor>
      <property name="alignment"
                writable="1"
                transfer-ownership="none"
                default-value="EV_TRANSITION_ALIGNMENT_HORIZONTAL">
        <type name="TransitionEffectAlignment"/>
      </property>
      <property name="angle"
                writable="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="direction"
                writable="1"
                transfer-ownership="none"
                default-value="EV_TRANSITION_DIRECTION_INWARD">
        <type name="TransitionEffectDirection"/>
      </property>
      <property name="duration"
                writable="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="duration-real"
                writable="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="rectangular"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scale"
                writable="1"
                transfer-ownership="none"
                default-value="1.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="type"
                writable="1"
                transfer-ownership="none"
                default-value="EV_TRANSITION_EFFECT_REPLACE">
        <type name="TransitionEffectType"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <enumeration name="TransitionEffectAlignment"
                 glib:type-name="EvTransitionEffectAlignment"
                 glib:get-type="ev_transition_effect_alignment_get_type"
                 c:type="EvTransitionEffectAlignment">
      <member name="horizontal"
              value="0"
              c:identifier="EV_TRANSITION_ALIGNMENT_HORIZONTAL"
              glib:nick="horizontal"
              glib:name="EV_TRANSITION_ALIGNMENT_HORIZONTAL">
      </member>
      <member name="vertical"
              value="1"
              c:identifier="EV_TRANSITION_ALIGNMENT_VERTICAL"
              glib:nick="vertical"
              glib:name="EV_TRANSITION_ALIGNMENT_VERTICAL">
      </member>
    </enumeration>
    <record name="TransitionEffectClass"
            c:type="EvTransitionEffectClass"
            glib:is-gtype-struct-for="TransitionEffect">
      <source-position filename="libdocument/ev-transition-effect.h"
                       line="77"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="TransitionEffectDirection"
                 glib:type-name="EvTransitionEffectDirection"
                 glib:get-type="ev_transition_effect_direction_get_type"
                 c:type="EvTransitionEffectDirection">
      <member name="inward"
              value="0"
              c:identifier="EV_TRANSITION_DIRECTION_INWARD"
              glib:nick="inward"
              glib:name="EV_TRANSITION_DIRECTION_INWARD">
      </member>
      <member name="outward"
              value="1"
              c:identifier="EV_TRANSITION_DIRECTION_OUTWARD"
              glib:nick="outward"
              glib:name="EV_TRANSITION_DIRECTION_OUTWARD">
      </member>
    </enumeration>
    <enumeration name="TransitionEffectType"
                 glib:type-name="EvTransitionEffectType"
                 glib:get-type="ev_transition_effect_type_get_type"
                 c:type="EvTransitionEffectType">
      <member name="replace"
              value="0"
              c:identifier="EV_TRANSITION_EFFECT_REPLACE"
              glib:nick="replace"
              glib:name="EV_TRANSITION_EFFECT_REPLACE">
      </member>
      <member name="split"
              value="1"
              c:identifier="EV_TRANSITION_EFFECT_SPLIT"
              glib:nick="split"
              glib:name="EV_TRANSITION_EFFECT_SPLIT">
      </member>
      <member name="blinds"
              value="2"
              c:identifier="EV_TRANSITION_EFFECT_BLINDS"
              glib:nick="blinds"
              glib:name="EV_TRANSITION_EFFECT_BLINDS">
      </member>
      <member name="box"
              value="3"
              c:identifier="EV_TRANSITION_EFFECT_BOX"
              glib:nick="box"
              glib:name="EV_TRANSITION_EFFECT_BOX">
      </member>
      <member name="wipe"
              value="4"
              c:identifier="EV_TRANSITION_EFFECT_WIPE"
              glib:nick="wipe"
              glib:name="EV_TRANSITION_EFFECT_WIPE">
      </member>
      <member name="dissolve"
              value="5"
              c:identifier="EV_TRANSITION_EFFECT_DISSOLVE"
              glib:nick="dissolve"
              glib:name="EV_TRANSITION_EFFECT_DISSOLVE">
      </member>
      <member name="glitter"
              value="6"
              c:identifier="EV_TRANSITION_EFFECT_GLITTER"
              glib:nick="glitter"
              glib:name="EV_TRANSITION_EFFECT_GLITTER">
      </member>
      <member name="fly"
              value="7"
              c:identifier="EV_TRANSITION_EFFECT_FLY"
              glib:nick="fly"
              glib:name="EV_TRANSITION_EFFECT_FLY">
      </member>
      <member name="push"
              value="8"
              c:identifier="EV_TRANSITION_EFFECT_PUSH"
              glib:nick="push"
              glib:name="EV_TRANSITION_EFFECT_PUSH">
      </member>
      <member name="cover"
              value="9"
              c:identifier="EV_TRANSITION_EFFECT_COVER"
              glib:nick="cover"
              glib:name="EV_TRANSITION_EFFECT_COVER">
      </member>
      <member name="uncover"
              value="10"
              c:identifier="EV_TRANSITION_EFFECT_UNCOVER"
              glib:nick="uncover"
              glib:name="EV_TRANSITION_EFFECT_UNCOVER">
      </member>
      <member name="fade"
              value="11"
              c:identifier="EV_TRANSITION_EFFECT_FADE"
              glib:nick="fade"
              glib:name="EV_TRANSITION_EFFECT_FADE">
      </member>
    </enumeration>
    <record name="TypeInfo" c:type="EvTypeInfo">
      <source-position filename="libdocument/ev-backends-manager.h" line="36"/>
      <field name="desc" writable="1">
        <type name="utf8" c:type="const gchar*"/>
      </field>
      <field name="mime_types" writable="1">
        <type name="utf8" c:type="const gchar**"/>
      </field>
    </record>
    <function-macro name="UNAVAILABLE"
                    c:identifier="EV_UNAVAILABLE"
                    introspectable="0">
      <source-position filename="libdocument/ev-macros.h" line="24"/>
      <parameters>
        <parameter name="maj">
        </parameter>
        <parameter name="min">
        </parameter>
      </parameters>
    </function-macro>
    <function name="backends_manager_get_all_types_info"
              c:identifier="ev_backends_manager_get_all_types_info"
              introspectable="0">
      <source-position filename="libdocument/ev-backends-manager.h" line="49"/>
      <return-value>
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="709">@list: (element-type EvBackendInfo): a shallow copy of #GList
   containing #EvBackendInfo objects</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
    </function>
    <function name="backends_manager_get_document"
              c:identifier="ev_backends_manager_get_document">
      <source-position filename="libdocument/ev-backends-manager.h" line="39"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="678">a new #EvDocument</doc>
        <type name="Document" c:type="EvDocument*"/>
      </return-value>
      <parameters>
        <parameter name="mime_type" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="676">a mime type hint</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="backends_manager_get_document_module_name"
              c:identifier="ev_backends_manager_get_document_module_name">
      <source-position filename="libdocument/ev-backends-manager.h" line="43"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="document" transfer-ownership="none">
          <type name="Document" c:type="EvDocument*"/>
        </parameter>
      </parameters>
    </function>
    <function name="backends_manager_get_document_type_info"
              c:identifier="ev_backends_manager_get_document_type_info"
              introspectable="0">
      <source-position filename="libdocument/ev-backends-manager.h" line="46"/>
      <return-value>
        <doc xml:space="preserve"
             filename="libdocument/ev-document-factory.c"
             line="699">a EvTypeInfo</doc>
        <type name="TypeInfo" c:type="EvTypeInfo*"/>
      </return-value>
      <parameters>
        <parameter name="document" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-document-factory.c"
               line="697">a #EvDocument</doc>
          <type name="Document" c:type="EvDocument*"/>
        </parameter>
      </parameters>
    </function>
    <function name="document_error_quark"
              c:identifier="ev_document_error_quark"
              moved-to="DocumentError.quark">
      <return-value transfer-ownership="none">
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <docsection name="ev-version">
      <doc xml:space="preserve"
           filename="libdocument/ev-version.h"
           line="21">These macros enable compile time checks of the library version.</doc>
    </docsection>
    <function name="file_compress" c:identifier="ev_file_compress" throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="739">Compresses the file at @uri.

If @type is %EV_COMPRESSION_NONE, it does nothing and returns %NULL.

Otherwise, it returns the filename of a
temporary file containing the compressed data from the file at @uri.

On error it returns %NULL and fills in @error.

It is the caller's responsibility to unlink the temp file after use.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="85"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="756">a newly allocated string URI, or %NULL on error</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="741">a file URI</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="742">the compression type</doc>
          <type name="CompressionType" c:type="EvCompressionType"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_copy_metadata"
              c:identifier="ev_file_copy_metadata"
              version="3.4"
              throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="358">Performs a g_file_copy_attributes() with %G_FILE_COPY_ALL_METADATA
from @from to @to.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="67"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="367">%TRUE if the attributes were copied successfully, %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="from" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="360">the source URI</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="to" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="361">the target URI</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_get_mime_type"
              c:identifier="ev_file_get_mime_type"
              throws="1">
      <source-position filename="libdocument/ev-file-helpers.h" line="72"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="500">a newly allocated string with the MIME type of the file at
  @uri, or %NULL on error or if the MIME type could not be determined</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="496">the URI</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="fast" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="497">whether to use fast MIME type detection</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_get_mime_type_from_fd"
              c:identifier="ev_file_get_mime_type_from_fd"
              throws="1">
      <source-position filename="libdocument/ev-file-helpers.h" line="77"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="516">a newly allocated string with the MIME type of the file referred to
  by @fd, or %NULL on error or if the MIME type could not be determined</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="fd" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="513">an file descriptor (must be seekable)</doc>
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_is_temp" c:identifier="ev_file_is_temp">
      <source-position filename="libdocument/ev-file-helpers.h" line="61"/>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_uncompress"
              c:identifier="ev_file_uncompress"
              throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="711">Uncompresses the file at @uri.

If @type is %EV_COMPRESSION_NONE, it does nothing and returns %NULL.

Otherwise, it returns the filename of a
temporary file containing the decompressed data from the file at @uri.
On error it returns %NULL and fills in @error.

It is the caller's responsibility to unlink the temp file after use.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="81"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="727">a newly allocated string URI, or %NULL on error</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="713">a file URI</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="714">the compression type</doc>
          <type name="CompressionType" c:type="EvCompressionType"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_locale_dir" c:identifier="ev_get_locale_dir">
      <source-position filename="libdocument/ev-init.h" line="33"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
    </function>
    <function name="init" c:identifier="ev_init">
      <doc xml:space="preserve"
           filename="libdocument/ev-init.c"
           line="94">Initializes the evince document library, and binds the evince
gettext domain.

You must call this before calling any other function in the evince
document library.</doc>
      <source-position filename="libdocument/ev-init.h" line="36"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libdocument/ev-init.c"
             line="103">%TRUE if any backends were found; %FALSE otherwise</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="mkdtemp" c:identifier="ev_mkdtemp" throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="209">Creates a temp directory in the evince temp directory.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="52"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="216">a newly allocated string with the temp directory name, or %NULL
  on error with @error filled in</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="211">a template string; must end in 'XXXXXX'</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mkstemp" c:identifier="ev_mkstemp" throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="127">Creates a temp file in the evince temp directory.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="45"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="135">a file descriptor to the newly created temp file name, or %-1
  on error with @error filled in</doc>
        <type name="gint" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="129">a template string; must contain 'XXXXXX', but not necessarily as a suffix</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="file_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="130">a location to store the filename of the temp file</doc>
          <type name="utf8" c:type="char**"/>
        </parameter>
      </parameters>
    </function>
    <function name="mkstemp_file" c:identifier="ev_mkstemp_file" throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="178">Creates a temp #GFile in the evince temp directory. See ev_mkstemp() for more information.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="49"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="185">a newly allocated #GFile for the newly created temp file name, or %NULL
  on error with @error filled in</doc>
        <type name="Gio.File" c:type="GFile*"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="180">a template string; must contain 'XXXXXX', but not necessarily as a suffix</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rect_cmp" c:identifier="ev_rect_cmp">
      <source-position filename="libdocument/ev-document.h" line="265"/>
      <return-value transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="Rectangle" c:type="EvRectangle*"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="Rectangle" c:type="EvRectangle*"/>
        </parameter>
      </parameters>
    </function>
    <function name="should_use_portal"
              c:identifier="ev_should_use_portal"
              version="3.30">
      <doc xml:space="preserve"
           filename="libdocument/ev-portal.c"
           line="22">Checks whether evince should use the portal.</doc>
      <source-position filename="libdocument/ev-portal.h" line="31"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libdocument/ev-portal.c"
             line="27">whether evince should use the portal</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="shutdown" c:identifier="ev_shutdown">
      <doc xml:space="preserve"
           filename="libdocument/ev-init.c"
           line="125">Shuts the evince document library down.</doc>
      <source-position filename="libdocument/ev-init.h" line="39"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="tmp_file_unlink" c:identifier="ev_tmp_file_unlink">
      <source-position filename="libdocument/ev-file-helpers.h" line="57"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tmp_filename_unlink" c:identifier="ev_tmp_filename_unlink">
      <source-position filename="libdocument/ev-file-helpers.h" line="55"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tmp_uri_unlink" c:identifier="ev_tmp_uri_unlink">
      <source-position filename="libdocument/ev-file-helpers.h" line="59"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xfer_uri_simple"
              c:identifier="ev_xfer_uri_simple"
              throws="1">
      <doc xml:space="preserve"
           filename="libdocument/ev-file-helpers.c"
           line="317">Performs a g_file_copy() from @from to @to.</doc>
      <source-position filename="libdocument/ev-file-helpers.h" line="63"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libdocument/ev-file-helpers.c"
             line="325">%TRUE on success, or %FALSE on error with @error filled in</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="from" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="319">the source URI</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="to" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libdocument/ev-file-helpers.c"
               line="320">the target URI</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xmp_parse" c:identifier="ev_xmp_parse">
      <source-position filename="libdocument/ev-xmp.h" line="29"/>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="xmp" transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="size" transfer-ownership="none">
          <type name="gsize" c:type="gsize"/>
        </parameter>
        <parameter name="info" transfer-ownership="none">
          <type name="DocumentInfo" c:type="EvDocumentInfo*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
