<?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:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gtk" version="3.0"/>
  <namespace name="Eog"
             version="3.0"
             shared-library=""
             c:identifier-prefixes="Eog"
             c:symbol-prefixes="eog">
    <class name="Application"
           c:symbol-prefix="application"
           c:type="EogApplication"
           parent="Gtk.Application"
           glib:type-name="EogApplication"
           glib:get-type="eog_application_get_type"
           glib:type-struct="ApplicationClass">
      <implements name="Gio.ActionGroup"/>
      <implements name="Gio.ActionMap"/>
      <function name="get_instance"
                c:identifier="eog_application_get_instance">
        <doc xml:space="preserve">Returns a singleton instance of #EogApplication currently running.
If not running yet, it will create one.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a running #EogApplication.</doc>
          <type name="Application" c:type="EogApplication*"/>
        </return-value>
      </function>
      <method name="open_file_list"
              c:identifier="eog_application_open_file_list"
              throws="1">
        <doc xml:space="preserve">Opens a list of files in a #EogWindow. If an #EogWindow displaying the first
image in the list is already open, this will be used. Otherwise, an empty
#EogWindow is used, either already existing or newly created.
If the EOG_STARTUP_SINGLE_WINDOW flag is set, the files are opened in the
first #EogWindow and no new one is opened.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Currently always %TRUE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="application" transfer-ownership="none">
            <doc xml:space="preserve">An #EogApplication.</doc>
            <type name="Application" c:type="EogApplication*"/>
          </instance-parameter>
          <parameter name="file_list" transfer-ownership="none">
            <doc xml:space="preserve">A list of #GFile&lt;!-- --&gt;s.</doc>
            <type name="GLib.SList" c:type="GSList*">
              <type name="Gio.File"/>
            </type>
          </parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <doc xml:space="preserve">The timestamp of the user interaction which triggered this call
(see gtk_window_present_with_time()).</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">A set of #EogStartupFlags influencing a new windows' state.</doc>
            <type name="StartupFlags" c:type="EogStartupFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="open_uri_list"
              c:identifier="eog_application_open_uri_list"
              throws="1">
        <doc xml:space="preserve">Opens a list of images, from a list of URIs. See
eog_application_open_file_list() for details.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Currently always %TRUE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="application" transfer-ownership="none">
            <doc xml:space="preserve">An #EogApplication.</doc>
            <type name="Application" c:type="EogApplication*"/>
          </instance-parameter>
          <parameter name="uri_list" transfer-ownership="none">
            <doc xml:space="preserve">A list of URIs.</doc>
            <type name="GLib.SList" c:type="GSList*">
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <doc xml:space="preserve">The timestamp of the user interaction which triggered this call
(see gtk_window_present_with_time()).</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">A set of #EogStartupFlags influencing a new windows' state.</doc>
            <type name="StartupFlags" c:type="EogStartupFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="open_uris"
              c:identifier="eog_application_open_uris"
              throws="1">
        <doc xml:space="preserve">Opens a list of images, from a list of URI strings. See
eog_application_open_file_list() for details.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Currently always %TRUE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="application" transfer-ownership="none">
            <doc xml:space="preserve">an #EogApplication</doc>
            <type name="Application" c:type="EogApplication*"/>
          </instance-parameter>
          <parameter name="uris" transfer-ownership="none">
            <doc xml:space="preserve">A #GList of URI strings.</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <doc xml:space="preserve">The timestamp of the user interaction which triggered this call
(see gtk_window_present_with_time()).</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">A set of #EogStartupFlags influencing a new windows' state.</doc>
            <type name="StartupFlags" c:type="EogStartupFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="open_window"
              c:identifier="eog_application_open_window"
              throws="1">
        <doc xml:space="preserve">Opens and presents an empty #EogWindow to the user. If there is
an empty window already open, this will be used. Otherwise, a
new one will be instantiated.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%FALSE if @application is invalid, %TRUE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="application" transfer-ownership="none">
            <doc xml:space="preserve">An #EogApplication.</doc>
            <type name="Application" c:type="EogApplication*"/>
          </instance-parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <doc xml:space="preserve">The timestamp of the user interaction which triggered this call
(see gtk_window_present_with_time()).</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">A set of #EogStartupFlags influencing a new windows' state.</doc>
            <type name="StartupFlags" c:type="EogStartupFlags"/>
          </parameter>
        </parameters>
      </method>
      <field name="base_instance">
        <type name="Gtk.Application" c:type="GtkApplication"/>
      </field>
      <field name="priv">
        <type name="ApplicationPrivate" c:type="EogApplicationPrivate*"/>
      </field>
    </class>
    <interface name="ApplicationActivatable"
               c:symbol-prefix="application_activatable"
               c:type="EogApplicationActivatable"
               glib:type-name="EogApplicationActivatable"
               glib:get-type="eog_application_activatable_get_type"
               glib:type-struct="ApplicationActivatableInterface">
      <virtual-method name="activate" invoker="activate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="ApplicationActivatable"
                  c:type="EogApplicationActivatable*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="deactivate" invoker="deactivate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="ApplicationActivatable"
                  c:type="EogApplicationActivatable*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="activate"
              c:identifier="eog_application_activatable_activate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="ApplicationActivatable"
                  c:type="EogApplicationActivatable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="deactivate"
              c:identifier="eog_application_activatable_deactivate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="ApplicationActivatable"
                  c:type="EogApplicationActivatable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="app"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <doc xml:space="preserve">This is the #EogApplication this #EogApplicationActivatable instance
should be attached to.</doc>
        <type name="Application"/>
      </property>
    </interface>
    <record name="ApplicationActivatableInterface"
            c:type="EogApplicationActivatableInterface"
            glib:is-gtype-struct-for="ApplicationActivatable">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="activate">
        <callback name="activate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="activatable" transfer-ownership="none">
              <type name="ApplicationActivatable"
                    c:type="EogApplicationActivatable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="deactivate">
        <callback name="deactivate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="activatable" transfer-ownership="none">
              <type name="ApplicationActivatable"
                    c:type="EogApplicationActivatable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="ApplicationClass"
            c:type="EogApplicationClass"
            glib:is-gtype-struct-for="Application">
      <field name="parent_class">
        <type name="Gtk.ApplicationClass" c:type="GtkApplicationClass"/>
      </field>
    </record>
    <record name="ApplicationPrivate"
            c:type="EogApplicationPrivate"
            disguised="1">
    </record>
    <class name="ClipboardHandler"
           c:symbol-prefix="clipboard_handler"
           c:type="EogClipboardHandler"
           parent="GObject.InitiallyUnowned"
           glib:type-name="EogClipboardHandler"
           glib:get-type="eog_clipboard_handler_get_type"
           glib:type-struct="ClipboardHandlerClass">
      <constructor name="new" c:identifier="eog_clipboard_handler_new">
        <return-value transfer-ownership="none">
          <type name="ClipboardHandler" c:type="EogClipboardHandler*"/>
        </return-value>
        <parameters>
          <parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy_to_clipboard"
              c:identifier="eog_clipboard_handler_copy_to_clipboard">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="handler" transfer-ownership="none">
            <type name="ClipboardHandler" c:type="EogClipboardHandler*"/>
          </instance-parameter>
          <parameter name="clipboard" transfer-ownership="none">
            <type name="Gtk.Clipboard" c:type="GtkClipboard*"/>
          </parameter>
        </parameters>
      </method>
      <property name="pixbuf"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="GdkPixbuf.Pixbuf"/>
      </property>
      <property name="uri"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="ClipboardHandlerPrivate"
              c:type="EogClipboardHandlerPrivate*"/>
      </field>
    </class>
    <record name="ClipboardHandlerClass"
            c:type="EogClipboardHandlerClass"
            glib:is-gtype-struct-for="ClipboardHandler">
      <field name="parent_klass">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="ClipboardHandlerPrivate"
            c:type="EogClipboardHandlerPrivate"
            disguised="1">
    </record>
    <bitfield name="Debug"
              glib:type-name="EogDebug"
              glib:get-type="eog_debug_get_type"
              c:type="EogDebug">
      <member name="no_debug"
              value="0"
              c:identifier="EOG_DEBUG_NO_DEBUG"
              glib:nick="no-debug">
      </member>
      <member name="window"
              value="1"
              c:identifier="EOG_DEBUG_WINDOW"
              glib:nick="window">
      </member>
      <member name="view"
              value="2"
              c:identifier="EOG_DEBUG_VIEW"
              glib:nick="view">
      </member>
      <member name="jobs"
              value="4"
              c:identifier="EOG_DEBUG_JOBS"
              glib:nick="jobs">
      </member>
      <member name="thumbnail"
              value="8"
              c:identifier="EOG_DEBUG_THUMBNAIL"
              glib:nick="thumbnail">
      </member>
      <member name="image_data"
              value="16"
              c:identifier="EOG_DEBUG_IMAGE_DATA"
              glib:nick="image-data">
      </member>
      <member name="image_load"
              value="32"
              c:identifier="EOG_DEBUG_IMAGE_LOAD"
              glib:nick="image-load">
      </member>
      <member name="image_save"
              value="64"
              c:identifier="EOG_DEBUG_IMAGE_SAVE"
              glib:nick="image-save">
      </member>
      <member name="list_store"
              value="128"
              c:identifier="EOG_DEBUG_LIST_STORE"
              glib:nick="list-store">
      </member>
      <member name="preferences"
              value="256"
              c:identifier="EOG_DEBUG_PREFERENCES"
              glib:nick="preferences">
      </member>
      <member name="printing"
              value="512"
              c:identifier="EOG_DEBUG_PRINTING"
              glib:nick="printing">
      </member>
      <member name="lcms"
              value="1024"
              c:identifier="EOG_DEBUG_LCMS"
              glib:nick="lcms">
      </member>
      <member name="plugins"
              value="2048"
              c:identifier="EOG_DEBUG_PLUGINS"
              glib:nick="plugins">
      </member>
      <function name="init" c:identifier="eog_debug_init">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="message"
                c:identifier="eog_debug_message"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="section" transfer-ownership="none">
            <type name="Debug" c:type="EogDebug"/>
          </parameter>
          <parameter name="file" 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="function" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="format" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </function>
    </bitfield>
    <glib:boxed glib:name="ExifData"
                c:symbol-prefix="exif_data"
                glib:type-name="EogExifData"
                glib:get-type="eog_exif_data_get_type">
      <function name="copy"
                c:identifier="eog_exif_data_copy"
                introspectable="0">
        <return-value>
          <type c:type="ExifData*"/>
        </return-value>
        <parameters>
          <parameter name="data" transfer-ownership="none">
            <type c:type="ExifData*"/>
          </parameter>
        </parameters>
      </function>
      <function name="free"
                c:identifier="eog_exif_data_free"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="data" transfer-ownership="none">
            <type c:type="ExifData*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_value"
                c:identifier="eog_exif_data_get_value"
                introspectable="0">
        <doc xml:space="preserve">Convenience function to extract a string representation of an Exif tag
directly from an &lt;structname&gt;ExifData&lt;/structname&gt; struct. The string is
written into @buffer as far as @buf_size permits.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a pointer to @buffer.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="exif_data" transfer-ownership="none">
            <doc xml:space="preserve">pointer to an &lt;structname&gt;ExifData&lt;/structname&gt; struct</doc>
            <type c:type="ExifData*"/>
          </parameter>
          <parameter name="tag_id" transfer-ownership="none">
            <doc xml:space="preserve">the requested tag's id. See &lt;filename&gt;exif-tag.h&lt;/filename&gt;
from the libexif package for possible values (e.g. %EXIF_TAG_EXPOSURE_MODE).</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="buffer" transfer-ownership="none">
            <doc xml:space="preserve">a pre-allocated output buffer</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="buf_size" transfer-ownership="none">
            <doc xml:space="preserve">size of @buffer</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
    </glib:boxed>
    <constant name="FILE_FORMAT_JPEG"
              value="jpeg"
              c:type="EOG_FILE_FORMAT_JPEG">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="FileChooser"
           c:symbol-prefix="file_chooser"
           c:type="EogFileChooser"
           parent="Gtk.FileChooserDialog"
           glib:type-name="EogFileChooser"
           glib:get-type="eog_file_chooser_get_type"
           glib:type-struct="FileChooserClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.FileChooser"/>
      <constructor name="new" c:identifier="eog_file_chooser_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <type name="Gtk.FileChooserAction" c:type="GtkFileChooserAction"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_format" c:identifier="eog_file_chooser_get_format">
        <return-value transfer-ownership="full">
          <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat*"/>
        </return-value>
        <parameters>
          <instance-parameter name="chooser" transfer-ownership="none">
            <type name="FileChooser" c:type="EogFileChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Gtk.FileChooserDialog" c:type="GtkFileChooserDialog"/>
      </field>
      <field name="priv">
        <type name="FileChooserPrivate" c:type="EogFileChooserPrivate*"/>
      </field>
    </class>
    <record name="FileChooserClass"
            c:type="EogFileChooserClass"
            glib:is-gtype-struct-for="FileChooser">
      <field name="parent_class">
        <type name="Gtk.FileChooserDialogClass"
              c:type="GtkFileChooserDialogClass"/>
      </field>
    </record>
    <record name="FileChooserPrivate"
            c:type="EogFileChooserPrivate"
            disguised="1">
    </record>
    <constant name="IMAGE_DATA_ALL" value="15" c:type="EOG_IMAGE_DATA_ALL">
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="Image"
           c:symbol-prefix="image"
           c:type="EogImage"
           parent="GObject.Object"
           glib:type-name="EogImage"
           glib:get-type="eog_image_get_type"
           glib:type-struct="ImageClass">
      <constructor name="new_file" c:identifier="eog_image_new_file">
        <return-value transfer-ownership="full">
          <type name="Image" c:type="EogImage*"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="caption" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="get_supported_mime_types"
                c:identifier="eog_image_get_supported_mime_types">
        <doc xml:space="preserve">Gets the list of supported mimetypes</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #GList of supported mimetypes</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="utf8"/>
          </type>
        </return-value>
      </function>
      <function name="is_supported_mime_type"
                c:identifier="eog_image_is_supported_mime_type">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="mime_type" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="file_changed" invoker="file_changed">
        <doc xml:space="preserve">Marks the image file contents as changed. Also, emits
EogImage::file-changed signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="next_frame">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="delay" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save_progress">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="size_prepared">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="thumbnail_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="autorotate" c:identifier="eog_image_autorotate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="cancel_load" c:identifier="eog_image_cancel_load">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="data_ref" c:identifier="eog_image_data_ref">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="data_unref" c:identifier="eog_image_data_unref">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="file_changed" c:identifier="eog_image_file_changed">
        <doc xml:space="preserve">Marks the image file contents as changed. Also, emits
EogImage::file-changed signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_autorotate_transform"
              c:identifier="eog_image_get_autorotate_transform">
        <doc xml:space="preserve">Get @img autorotate transform.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #EogTransform.</doc>
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_bytes" c:identifier="eog_image_get_bytes">
        <return-value transfer-ownership="none">
          <type name="gint64" c:type="goffset"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_caption" c:identifier="eog_image_get_caption">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_collate_key" c:identifier="eog_image_get_collate_key">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_file" c:identifier="eog_image_get_file">
        <doc xml:space="preserve">Gets the #GFile associated with @img</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a #GFile</doc>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_status"
              c:identifier="eog_image_get_metadata_status">
        <doc xml:space="preserve">Returns the current status of the image metadata, that is,
whether the metadata has not been read yet, is ready, or not available at all.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">one of #EogImageMetadataStatus</doc>
          <type name="ImageMetadataStatus" c:type="EogImageMetadataStatus"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pixbuf" c:identifier="eog_image_get_pixbuf">
        <doc xml:space="preserve">Gets the #GdkPixbuf of the image</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size" c:identifier="eog_image_get_size">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_status" c:identifier="eog_image_get_status">
        <return-value transfer-ownership="none">
          <type name="ImageStatus" c:type="EogImageStatus"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_thumbnail" c:identifier="eog_image_get_thumbnail">
        <doc xml:space="preserve">Gets the thumbnail pixbuf for @img</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a #GdkPixbuf with a thumbnail</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_transform" c:identifier="eog_image_get_transform">
        <doc xml:space="preserve">Get @img transform.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #EogTransform.</doc>
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_uri_for_display"
              c:identifier="eog_image_get_uri_for_display">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_xmp_info" c:identifier="eog_image_get_xmp_info">
        <doc xml:space="preserve">Gets the XMP info for @img or NULL if compiled without
libexempi support.</doc>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve">the xmp data</doc>
          <type name="gpointer" c:type="gpointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_data" c:identifier="eog_image_has_data">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="ImageData" c:type="EogImageData"/>
          </parameter>
        </parameters>
      </method>
      <method name="is_animation" c:identifier="eog_image_is_animation">
        <doc xml:space="preserve">Checks whether a given image is animated.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">#TRUE if it is an animated image, #FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_file_changed" c:identifier="eog_image_is_file_changed">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_file_writable"
              c:identifier="eog_image_is_file_writable">
        <doc xml:space="preserve">Evaluate if the user has write permission on the image file.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE if the user hasn't write permissions on it,
or @img is not an #EogImage.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_jpeg" c:identifier="eog_image_is_jpeg">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_modified" c:identifier="eog_image_is_modified">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_multipaged"
              c:identifier="eog_image_is_multipaged"
              version="3.18">
        <doc xml:space="preserve">Check whether the image actually contains multiple images/pages.
This can happen for TIFF files. GIF animations are not multipaged.

Note that this only works if the image data is loaded.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @img is multipaged, %FALSE if not or the image data wasn't loaded.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">an #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load" c:identifier="eog_image_load" throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="data2read" transfer-ownership="none">
            <type name="ImageData" c:type="EogImageData"/>
          </parameter>
          <parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </parameter>
        </parameters>
      </method>
      <method name="modified" c:identifier="eog_image_modified">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="save_as_by_info"
              c:identifier="eog_image_save_as_by_info"
              throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="source" transfer-ownership="none">
            <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
          </parameter>
          <parameter name="target" transfer-ownership="none">
            <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_by_info"
              c:identifier="eog_image_save_by_info"
              throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="source" transfer-ownership="none">
            <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_thumbnail" c:identifier="eog_image_set_thumbnail">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="start_animation" c:identifier="eog_image_start_animation">
        <doc xml:space="preserve">Starts playing an animated image.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE if @img is already playing or isn't an animated image.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <doc xml:space="preserve">a #EogImage</doc>
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="transform" c:identifier="eog_image_transform">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
          <parameter name="trans" transfer-ownership="none">
            <type name="Transform" c:type="EogTransform*"/>
          </parameter>
          <parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </parameter>
        </parameters>
      </method>
      <method name="undo" c:identifier="eog_image_undo">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="ImagePrivate" c:type="EogImagePrivate*"/>
      </field>
      <glib:signal name="changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="file-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="next-frame" when="last">
        <doc xml:space="preserve">The ::next-frame signal will be emitted each time an animated image
advances to the next frame.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="delay" transfer-ownership="none">
            <doc xml:space="preserve">number of milliseconds the current frame will be displayed.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="save-progress" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="size-prepared" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="p0" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="thumbnail-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="ImageClass"
            c:type="EogImageClass"
            glib:is-gtype-struct-for="Image">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="changed">
        <callback name="changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <type name="Image" c:type="EogImage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="size_prepared">
        <callback name="size_prepared">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <type name="Image" c:type="EogImage*"/>
            </parameter>
            <parameter name="width" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
            <parameter name="height" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="thumbnail_changed">
        <callback name="thumbnail_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <type name="Image" c:type="EogImage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="save_progress">
        <callback name="save_progress">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <type name="Image" c:type="EogImage*"/>
            </parameter>
            <parameter name="progress" transfer-ownership="none">
              <type name="gfloat" c:type="gfloat"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="next_frame">
        <callback name="next_frame">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <type name="Image" c:type="EogImage*"/>
            </parameter>
            <parameter name="delay" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="file_changed">
        <callback name="file_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="img" transfer-ownership="none">
              <doc xml:space="preserve">a #EogImage</doc>
              <type name="Image" c:type="EogImage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <bitfield name="ImageData"
              glib:type-name="EogImageData"
              glib:get-type="eog_image_data_get_type"
              c:type="EogImageData">
      <member name="image"
              value="1"
              c:identifier="EOG_IMAGE_DATA_IMAGE"
              glib:nick="image">
      </member>
      <member name="dimension"
              value="2"
              c:identifier="EOG_IMAGE_DATA_DIMENSION"
              glib:nick="dimension">
      </member>
      <member name="exif"
              value="4"
              c:identifier="EOG_IMAGE_DATA_EXIF"
              glib:nick="exif">
      </member>
      <member name="xmp"
              value="8"
              c:identifier="EOG_IMAGE_DATA_XMP"
              glib:nick="xmp">
      </member>
    </bitfield>
    <enumeration name="ImageError"
                 glib:type-name="EogImageError"
                 glib:get-type="eog_image_error_get_type"
                 c:type="EogImageError"
                 glib:error-domain="eog-image-error-quark">
      <member name="save_not_local"
              value="0"
              c:identifier="EOG_IMAGE_ERROR_SAVE_NOT_LOCAL"
              glib:nick="save-not-local">
      </member>
      <member name="not_loaded"
              value="1"
              c:identifier="EOG_IMAGE_ERROR_NOT_LOADED"
              glib:nick="not-loaded">
      </member>
      <member name="not_saved"
              value="2"
              c:identifier="EOG_IMAGE_ERROR_NOT_SAVED"
              glib:nick="not-saved">
      </member>
      <member name="vfs"
              value="3"
              c:identifier="EOG_IMAGE_ERROR_VFS"
              glib:nick="vfs">
      </member>
      <member name="file_exists"
              value="4"
              c:identifier="EOG_IMAGE_ERROR_FILE_EXISTS"
              glib:nick="file-exists">
      </member>
      <member name="tmp_file_failed"
              value="5"
              c:identifier="EOG_IMAGE_ERROR_TMP_FILE_FAILED"
              glib:nick="tmp-file-failed">
      </member>
      <member name="generic"
              value="6"
              c:identifier="EOG_IMAGE_ERROR_GENERIC"
              glib:nick="generic">
      </member>
      <member name="unknown"
              value="7"
              c:identifier="EOG_IMAGE_ERROR_UNKNOWN"
              glib:nick="unknown">
      </member>
      <function name="quark" c:identifier="eog_image_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
    </enumeration>
    <enumeration name="ImageMetadataStatus"
                 glib:type-name="EogImageMetadataStatus"
                 glib:get-type="eog_image_metadata_status_get_type"
                 c:type="EogImageMetadataStatus">
      <member name="not_read"
              value="0"
              c:identifier="EOG_IMAGE_METADATA_NOT_READ"
              glib:nick="not-read">
      </member>
      <member name="not_available"
              value="1"
              c:identifier="EOG_IMAGE_METADATA_NOT_AVAILABLE"
              glib:nick="not-available">
      </member>
      <member name="ready"
              value="2"
              c:identifier="EOG_IMAGE_METADATA_READY"
              glib:nick="ready">
      </member>
    </enumeration>
    <record name="ImagePrivate" c:type="EogImagePrivate" disguised="1">
    </record>
    <class name="ImageSaveInfo"
           c:symbol-prefix="image_save_info"
           c:type="EogImageSaveInfo"
           parent="GObject.Object"
           glib:type-name="EogImageSaveInfo"
           glib:get-type="eog_image_save_info_get_type"
           glib:type-struct="ImageSaveInfoClass">
      <constructor name="new_from_file"
                   c:identifier="eog_image_save_info_new_from_file">
        <return-value transfer-ownership="full">
          <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="format" transfer-ownership="none">
            <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_image"
                   c:identifier="eog_image_save_info_new_from_image">
        <return-value transfer-ownership="full">
          <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
        </return-value>
        <parameters>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_uri"
                   c:identifier="eog_image_save_info_new_from_uri">
        <return-value transfer-ownership="full">
          <type name="ImageSaveInfo" c:type="EogImageSaveInfo*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="format" transfer-ownership="none">
            <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="file">
        <type name="Gio.File" c:type="GFile*"/>
      </field>
      <field name="format">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="exists">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="local">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="has_metadata">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="modified">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="overwrite">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="jpeg_quality">
        <type name="gfloat" c:type="float"/>
      </field>
    </class>
    <record name="ImageSaveInfoClass"
            c:type="EogImageSaveInfoClass"
            glib:is-gtype-struct-for="ImageSaveInfo">
      <field name="parent_klass">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="ImageStatus"
                 glib:type-name="EogImageStatus"
                 glib:get-type="eog_image_status_get_type"
                 c:type="EogImageStatus">
      <member name="unknown"
              value="0"
              c:identifier="EOG_IMAGE_STATUS_UNKNOWN"
              glib:nick="unknown">
      </member>
      <member name="loading"
              value="1"
              c:identifier="EOG_IMAGE_STATUS_LOADING"
              glib:nick="loading">
      </member>
      <member name="loaded"
              value="2"
              c:identifier="EOG_IMAGE_STATUS_LOADED"
              glib:nick="loaded">
      </member>
      <member name="saving"
              value="3"
              c:identifier="EOG_IMAGE_STATUS_SAVING"
              glib:nick="saving">
      </member>
      <member name="failed"
              value="4"
              c:identifier="EOG_IMAGE_STATUS_FAILED"
              glib:nick="failed">
      </member>
    </enumeration>
    <class name="Job"
           c:symbol-prefix="job"
           c:type="EogJob"
           parent="GObject.Object"
           abstract="1"
           glib:type-name="EogJob"
           glib:get-type="eog_job_get_type"
           glib:type-struct="JobClass">
      <function name="scheduler_init" c:identifier="eog_job_scheduler_init">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <virtual-method name="cancelled">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="finished">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="progress">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="run" invoker="run">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="cancel" c:identifier="eog_job_cancel">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_progress" c:identifier="eog_job_get_progress">
        <return-value transfer-ownership="none">
          <type name="gfloat" c:type="gfloat"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_cancelled" c:identifier="eog_job_is_cancelled">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_finished" c:identifier="eog_job_is_finished">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="run" c:identifier="eog_job_run">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="scheduler_add_job"
              c:identifier="eog_job_scheduler_add_job">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="scheduler_add_job_with_priority"
              c:identifier="eog_job_scheduler_add_job_with_priority">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="JobPriority" c:type="EogJobPriority"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_progress" c:identifier="eog_job_set_progress">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="job" transfer-ownership="none">
            <type name="Job" c:type="EogJob*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="cancellable">
        <type name="Gio.Cancellable" c:type="GCancellable*"/>
      </field>
      <field name="error">
        <type name="GLib.Error" c:type="GError*"/>
      </field>
      <field name="mutex">
        <type name="GLib.Mutex" c:type="GMutex*"/>
      </field>
      <field name="progress">
        <type name="gfloat" c:type="gfloat"/>
      </field>
      <field name="cancelled">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="finished">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <glib:signal name="cancelled" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="finished" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="progress" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="JobClass"
            c:type="EogJobClass"
            glib:is-gtype-struct-for="Job">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="run">
        <callback name="run">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="job" transfer-ownership="none">
              <type name="Job" c:type="EogJob*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="progress">
        <callback name="progress">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="job" transfer-ownership="none">
              <type name="Job" c:type="EogJob*"/>
            </parameter>
            <parameter name="progress" transfer-ownership="none">
              <type name="gfloat" c:type="gfloat"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="cancelled">
        <callback name="cancelled">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="job" transfer-ownership="none">
              <type name="Job" c:type="EogJob*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="finished">
        <callback name="finished">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="job" transfer-ownership="none">
              <type name="Job" c:type="EogJob*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="JobCopy"
           c:symbol-prefix="job_copy"
           c:type="EogJobCopy"
           parent="Job"
           glib:type-name="EogJobCopy"
           glib:get-type="eog_job_copy_get_type"
           glib:type-struct="JobCopyClass">
      <constructor name="new" c:identifier="eog_job_copy_new">
        <doc xml:space="preserve">Creates a new #EogJob.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogJob.</doc>
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="images" transfer-ownership="full">
            <doc xml:space="preserve">a #EogImage list</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Image"/>
            </type>
          </parameter>
          <parameter name="destination" transfer-ownership="none">
            <doc xml:space="preserve">destination path for the copy</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="images">
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </field>
      <field name="destination">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="current_position">
        <type name="guint" c:type="guint"/>
      </field>
    </class>
    <record name="JobCopyClass"
            c:type="EogJobCopyClass"
            glib:is-gtype-struct-for="JobCopy">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <class name="JobLoad"
           c:symbol-prefix="job_load"
           c:type="EogJobLoad"
           parent="Job"
           glib:type-name="EogJobLoad"
           glib:get-type="eog_job_load_get_type"
           glib:type-struct="JobLoadClass">
      <constructor name="new" c:identifier="eog_job_load_new">
        <return-value transfer-ownership="full">
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="ImageData" c:type="EogImageData"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="image">
        <type name="Image" c:type="EogImage*"/>
      </field>
      <field name="data">
        <type name="ImageData" c:type="EogImageData"/>
      </field>
    </class>
    <record name="JobLoadClass"
            c:type="EogJobLoadClass"
            glib:is-gtype-struct-for="JobLoad">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <class name="JobModel"
           c:symbol-prefix="job_model"
           c:type="EogJobModel"
           parent="Job"
           glib:type-name="EogJobModel"
           glib:get-type="eog_job_model_get_type"
           glib:type-struct="JobModelClass">
      <constructor name="new" c:identifier="eog_job_model_new">
        <doc xml:space="preserve">Creates a new #EogJob model.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogJob.</doc>
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="file_list" transfer-ownership="none">
            <doc xml:space="preserve">a #GFile list</doc>
            <type name="GLib.SList" c:type="GSList*">
              <type name="Gio.File"/>
            </type>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="store">
        <type name="ListStore" c:type="EogListStore*"/>
      </field>
      <field name="file_list">
        <type name="GLib.SList" c:type="GSList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </field>
    </class>
    <record name="JobModelClass"
            c:type="EogJobModelClass"
            glib:is-gtype-struct-for="JobModel">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <enumeration name="JobPriority"
                 glib:type-name="EogJobPriority"
                 glib:get-type="eog_job_priority_get_type"
                 c:type="EogJobPriority">
      <member name="priority_high"
              value="0"
              c:identifier="EOG_JOB_PRIORITY_HIGH"
              glib:nick="priority-high">
      </member>
      <member name="priority_medium"
              value="1"
              c:identifier="EOG_JOB_PRIORITY_MEDIUM"
              glib:nick="priority-medium">
      </member>
      <member name="priority_low"
              value="2"
              c:identifier="EOG_JOB_PRIORITY_LOW"
              glib:nick="priority-low">
      </member>
      <member name="n_priorities"
              value="3"
              c:identifier="EOG_JOB_N_PRIORITIES"
              glib:nick="n-priorities">
      </member>
    </enumeration>
    <class name="JobSave"
           c:symbol-prefix="job_save"
           c:type="EogJobSave"
           parent="Job"
           glib:type-name="EogJobSave"
           glib:get-type="eog_job_save_get_type"
           glib:type-struct="JobSaveClass">
      <constructor name="new" c:identifier="eog_job_save_new">
        <doc xml:space="preserve">Creates a new #EogJob for image saving.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogJob.</doc>
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="images" transfer-ownership="full">
            <doc xml:space="preserve">a #EogImage list</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Image"/>
            </type>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="images">
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </field>
      <field name="current_image">
        <type name="Image" c:type="EogImage*"/>
      </field>
      <field name="current_position">
        <type name="guint" c:type="guint"/>
      </field>
    </class>
    <class name="JobSaveAs"
           c:symbol-prefix="job_save_as"
           c:type="EogJobSaveAs"
           parent="JobSave"
           glib:type-name="EogJobSaveAs"
           glib:get-type="eog_job_save_as_get_type"
           glib:type-struct="JobSaveAsClass">
      <constructor name="new" c:identifier="eog_job_save_as_new">
        <doc xml:space="preserve">Creates a new #EogJog for save as.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogJob.</doc>
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="images" transfer-ownership="full">
            <doc xml:space="preserve">a #EogImage list</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Image"/>
            </type>
          </parameter>
          <parameter name="converter" transfer-ownership="none">
            <doc xml:space="preserve">a URI converter
file: a #GFile</doc>
            <type name="URIConverter" c:type="EogURIConverter*"/>
          </parameter>
          <parameter name="file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="JobSave" c:type="EogJobSave"/>
      </field>
      <field name="converter">
        <type name="URIConverter" c:type="EogURIConverter*"/>
      </field>
      <field name="file">
        <type name="Gio.File" c:type="GFile*"/>
      </field>
    </class>
    <record name="JobSaveAsClass"
            c:type="EogJobSaveAsClass"
            glib:is-gtype-struct-for="JobSaveAs">
      <field name="parent">
        <type name="JobSaveClass" c:type="EogJobSaveClass"/>
      </field>
    </record>
    <record name="JobSaveClass"
            c:type="EogJobSaveClass"
            glib:is-gtype-struct-for="JobSave">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <class name="JobThumbnail"
           c:symbol-prefix="job_thumbnail"
           c:type="EogJobThumbnail"
           parent="Job"
           glib:type-name="EogJobThumbnail"
           glib:get-type="eog_job_thumbnail_get_type"
           glib:type-struct="JobThumbnailClass">
      <constructor name="new" c:identifier="eog_job_thumbnail_new">
        <return-value transfer-ownership="full">
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="image">
        <type name="Image" c:type="EogImage*"/>
      </field>
      <field name="thumbnail">
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </field>
    </class>
    <record name="JobThumbnailClass"
            c:type="EogJobThumbnailClass"
            glib:is-gtype-struct-for="JobThumbnail">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <class name="JobTransform"
           c:symbol-prefix="job_transform"
           c:type="EogJobTransform"
           parent="Job"
           glib:type-name="EogJobTransform"
           glib:get-type="eog_job_transform_get_type"
           glib:type-struct="JobTransformClass">
      <constructor name="new" c:identifier="eog_job_transform_new">
        <doc xml:space="preserve">Create a new #EogJob for image transformation.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogJob.</doc>
          <type name="Job" c:type="EogJob*"/>
        </return-value>
        <parameters>
          <parameter name="images" transfer-ownership="full">
            <doc xml:space="preserve">a #EogImage list</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Image"/>
            </type>
          </parameter>
          <parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve">a #EogTransform</doc>
            <type name="Transform" c:type="EogTransform*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent">
        <type name="Job" c:type="EogJob"/>
      </field>
      <field name="images">
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </field>
      <field name="transform">
        <type name="Transform" c:type="EogTransform*"/>
      </field>
    </class>
    <record name="JobTransformClass"
            c:type="EogJobTransformClass"
            glib:is-gtype-struct-for="JobTransform">
      <field name="parent_class">
        <type name="JobClass" c:type="EogJobClass"/>
      </field>
    </record>
    <constant name="LIST_STORE_THUMB_SIZE"
              value="90"
              c:type="EOG_LIST_STORE_THUMB_SIZE">
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="ListStore"
           c:symbol-prefix="list_store"
           c:type="EogListStore"
           parent="Gtk.ListStore"
           glib:type-name="EogListStore"
           glib:get-type="eog_list_store_get_type"
           glib:type-struct="ListStoreClass">
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.TreeDragDest"/>
      <implements name="Gtk.TreeDragSource"/>
      <implements name="Gtk.TreeModel"/>
      <implements name="Gtk.TreeSortable"/>
      <constructor name="new" c:identifier="eog_list_store_new">
        <doc xml:space="preserve">Creates a new and empty #EogListStore.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a newly created #EogListStore.</doc>
          <type name="Gtk.ListStore" c:type="GtkListStore*"/>
        </return-value>
      </constructor>
      <constructor name="new_from_glist"
                   c:identifier="eog_list_store_new_from_glist">
        <doc xml:space="preserve">Creates a new #EogListStore from a list of #EogImage's.
The given list must be %NULL-terminated.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new #EogListStore.</doc>
          <type name="Gtk.ListStore" c:type="GtkListStore*"/>
        </return-value>
        <parameters>
          <parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve">a %NULL-terminated list of #EogImage's.</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Image"/>
            </type>
          </parameter>
        </parameters>
      </constructor>
      <method name="add_files" c:identifier="eog_list_store_add_files">
        <doc xml:space="preserve">Adds a list of #GFile's to @store. The given list
must be %NULL-terminated.

If any of the #GFile's in @file_list is a directory, all the images
in that directory will be added to @store. If the list of files contains
only one file and this is a regular file, then all the images in the same
directory will be added as well to @store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="file_list" transfer-ownership="none">
            <doc xml:space="preserve">A %NULL-terminated list of #GFile's.</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Gio.File"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="append_image" c:identifier="eog_list_store_append_image">
        <doc xml:space="preserve">Adds an #EogImage to @store. The thumbnail of the image is not
loaded and will only be loaded if the thumbnail is made visible.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve">An #EogImage.</doc>
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image_by_pos"
              c:identifier="eog_list_store_get_image_by_pos">
        <doc xml:space="preserve">Gets the #EogImage in the position @pos of @store. If there is
no image at position @pos, %NULL is returned.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">the #EogImage in position @pos or %NULL.</doc>
          <type name="Image" c:type="EogImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve">the position of the required #EogImage.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_initial_pos"
              c:identifier="eog_list_store_get_initial_pos">
        <doc xml:space="preserve">Gets the position of the #EogImage that should be loaded first.
If not set, it returns -1.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the position of the image to be loaded first or -1.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pos_by_image"
              c:identifier="eog_list_store_get_pos_by_image">
        <doc xml:space="preserve">Gets the position where @image is stored in @store. If @image
is not stored in @store, -1 is returned.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the position of @image in @store or -1 if not found.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve">An #EogImage.</doc>
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_pos_by_iter"
              c:identifier="eog_list_store_get_pos_by_iter">
        <doc xml:space="preserve">Gets the position of the image pointed by @iter.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The position of the image pointed by @iter.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkTreeIter pointing to an image in @store.</doc>
            <type name="Gtk.TreeIter" c:type="GtkTreeIter*"/>
          </parameter>
        </parameters>
      </method>
      <method name="length" c:identifier="eog_list_store_length">
        <doc xml:space="preserve">Returns the number of images in the store.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The number of images in @store.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_image" c:identifier="eog_list_store_remove_image">
        <doc xml:space="preserve">Removes @image from @store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve">An #EogImage.</doc>
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="thumbnail_refresh"
              c:identifier="eog_list_store_thumbnail_refresh">
        <doc xml:space="preserve">Refreshes the thumbnail for the image pointed by @iter.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkTreeIter pointing to an image in @store.</doc>
            <type name="Gtk.TreeIter" c:type="GtkTreeIter*"/>
          </parameter>
        </parameters>
      </method>
      <method name="thumbnail_set" c:identifier="eog_list_store_thumbnail_set">
        <doc xml:space="preserve">Sets the thumbnail for the image pointed by @iter.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkTreeIter pointing to an image in @store.</doc>
            <type name="Gtk.TreeIter" c:type="GtkTreeIter*"/>
          </parameter>
        </parameters>
      </method>
      <method name="thumbnail_unset"
              c:identifier="eog_list_store_thumbnail_unset">
        <doc xml:space="preserve">Unsets the thumbnail for the image pointed by @iter, changing
it to a "busy" icon.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">An #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </instance-parameter>
          <parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkTreeIter pointing to an image in @store.</doc>
            <type name="Gtk.TreeIter" c:type="GtkTreeIter*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Gtk.ListStore" c:type="GtkListStore"/>
      </field>
      <field name="priv">
        <type name="ListStorePrivate" c:type="EogListStorePrivate*"/>
      </field>
    </class>
    <record name="ListStoreClass"
            c:type="EogListStoreClass"
            glib:is-gtype-struct-for="ListStore">
      <field name="parent_class">
        <type name="Gtk.ListStoreClass" c:type="GtkListStoreClass"/>
      </field>
      <field name="_eog_reserved1" introspectable="0">
        <callback name="_eog_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_eog_reserved2" introspectable="0">
        <callback name="_eog_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_eog_reserved3" introspectable="0">
        <callback name="_eog_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_eog_reserved4" introspectable="0">
        <callback name="_eog_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ListStoreColumn"
                 glib:type-name="EogListStoreColumn"
                 glib:get-type="eog_list_store_column_get_type"
                 c:type="EogListStoreColumn">
      <member name="thumbnail"
              value="0"
              c:identifier="EOG_LIST_STORE_THUMBNAIL"
              glib:nick="thumbnail">
      </member>
      <member name="thumb_set"
              value="1"
              c:identifier="EOG_LIST_STORE_THUMB_SET"
              glib:nick="thumb-set">
      </member>
      <member name="eog_image"
              value="2"
              c:identifier="EOG_LIST_STORE_EOG_IMAGE"
              glib:nick="eog-image">
      </member>
      <member name="eog_job"
              value="3"
              c:identifier="EOG_LIST_STORE_EOG_JOB"
              glib:nick="eog-job">
      </member>
      <member name="num_columns"
              value="4"
              c:identifier="EOG_LIST_STORE_NUM_COLUMNS"
              glib:nick="num-columns">
      </member>
    </enumeration>
    <record name="ListStorePrivate" c:type="EogListStorePrivate" disguised="1">
    </record>
    <class name="PropertiesDialog"
           c:symbol-prefix="properties_dialog"
           c:type="EogPropertiesDialog"
           parent="Gtk.Dialog"
           glib:type-name="EogPropertiesDialog"
           glib:get-type="eog_properties_dialog_get_type"
           glib:type-struct="PropertiesDialogClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="eog_properties_dialog_new">
        <doc xml:space="preserve">If %parent implements #GActionMap its actions will be automatically
inserted in the "win" namespace.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new #EogPropertiesDialog</doc>
          <type name="PropertiesDialog" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">the dialog's parent window</doc>
            <type name="Gtk.Window" c:type="GtkWindow*"/>
          </parameter>
          <parameter name="thumbview" transfer-ownership="none">
            <type name="ThumbView" c:type="EogThumbView*"/>
          </parameter>
          <parameter name="next_image_action" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="previous_image_action" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="set_netbook_mode"
              c:identifier="eog_properties_dialog_set_netbook_mode">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dlg" transfer-ownership="none">
            <type name="PropertiesDialog" c:type="EogPropertiesDialog*"/>
          </instance-parameter>
          <parameter name="enable" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_page" c:identifier="eog_properties_dialog_set_page">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="prop" transfer-ownership="none">
            <type name="PropertiesDialog" c:type="EogPropertiesDialog*"/>
          </instance-parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="PropertiesDialogPage"
                  c:type="EogPropertiesDialogPage"/>
          </parameter>
        </parameters>
      </method>
      <method name="update" c:identifier="eog_properties_dialog_update">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="prop" transfer-ownership="none">
            <type name="PropertiesDialog" c:type="EogPropertiesDialog*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </method>
      <property name="netbook-mode" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="next-action"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="prev-action"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="thumbview"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="ThumbView"/>
      </property>
      <field name="dialog">
        <type name="Gtk.Dialog" c:type="GtkDialog"/>
      </field>
      <field name="priv">
        <type name="PropertiesDialogPrivate"
              c:type="EogPropertiesDialogPrivate*"/>
      </field>
    </class>
    <record name="PropertiesDialogClass"
            c:type="EogPropertiesDialogClass"
            glib:is-gtype-struct-for="PropertiesDialog">
      <field name="parent_class">
        <type name="Gtk.DialogClass" c:type="GtkDialogClass"/>
      </field>
    </record>
    <enumeration name="PropertiesDialogPage"
                 glib:type-name="EogPropertiesDialogPage"
                 glib:get-type="eog_properties_dialog_page_get_type"
                 c:type="EogPropertiesDialogPage">
      <member name="page_general"
              value="0"
              c:identifier="EOG_PROPERTIES_DIALOG_PAGE_GENERAL"
              glib:nick="page-general">
      </member>
      <member name="page_exif"
              value="1"
              c:identifier="EOG_PROPERTIES_DIALOG_PAGE_EXIF"
              glib:nick="page-exif">
      </member>
      <member name="page_details"
              value="2"
              c:identifier="EOG_PROPERTIES_DIALOG_PAGE_DETAILS"
              glib:nick="page-details">
      </member>
      <member name="n_pages"
              value="3"
              c:identifier="EOG_PROPERTIES_DIALOG_N_PAGES"
              glib:nick="n-pages">
      </member>
    </enumeration>
    <record name="PropertiesDialogPrivate"
            c:type="EogPropertiesDialogPrivate"
            disguised="1">
    </record>
    <constant name="SCROLL_VIEW_MAX_ZOOM_FACTOR"
              value="20"
              c:type="EOG_SCROLL_VIEW_MAX_ZOOM_FACTOR">
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="SCROLL_VIEW_MIN_ZOOM_FACTOR"
              value="0.020000"
              c:type="EOG_SCROLL_VIEW_MIN_ZOOM_FACTOR">
      <type name="gdouble" c:type="gdouble"/>
    </constant>
    <class name="ScrollView"
           c:symbol-prefix="scroll_view"
           c:type="EogScrollView"
           parent="Gtk.Grid"
           glib:type-name="EogScrollView"
           glib:get-type="eog_scroll_view_get_type"
           glib:type-struct="ScrollViewClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="eog_scroll_view_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="next_image">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="previous_image">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="rotation_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="degrees" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="zoom_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="zoom" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="event_is_over_image"
              c:identifier="eog_scroll_view_event_is_over_image">
        <doc xml:space="preserve">Tells if @ev's originates from inside the image area. @view must be
realized and have an image set for this to work.

It only works with #GdkEvent&lt;!-- --&gt;s that supply coordinate data,
i.e. #GdkEventButton.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @ev originates from over the image, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <doc xml:space="preserve">An #EogScrollView that has an image loaded.</doc>
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="ev" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkEvent which must have window-relative coordinates.</doc>
            <type name="Gdk.Event" c:type="const GdkEvent*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image" c:identifier="eog_scroll_view_get_image">
        <doc xml:space="preserve">Gets the the currently displayed #EogImage.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">An #EogImage.</doc>
          <type name="Image" c:type="EogImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <doc xml:space="preserve">An #EogScrollView.</doc>
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_zoom" c:identifier="eog_scroll_view_get_zoom">
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_zoom_is_max"
              c:identifier="eog_scroll_view_get_zoom_is_max">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_zoom_is_min"
              c:identifier="eog_scroll_view_get_zoom_is_min">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_zoom_mode"
              c:identifier="eog_scroll_view_get_zoom_mode">
        <return-value transfer-ownership="none">
          <type name="ZoomMode" c:type="EogZoomMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hide_cursor" c:identifier="eog_scroll_view_hide_cursor">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="override_bg_color"
              c:identifier="eog_scroll_view_override_bg_color">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="scrollbars_visible"
              c:identifier="eog_scroll_view_scrollbars_visible">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_antialiasing_in"
              c:identifier="eog_scroll_view_set_antialiasing_in">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_antialiasing_out"
              c:identifier="eog_scroll_view_set_antialiasing_out">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_background_color"
              c:identifier="eog_scroll_view_set_background_color">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_image" c:identifier="eog_scroll_view_set_image">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_popup" c:identifier="eog_scroll_view_set_popup">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="menu" transfer-ownership="none">
            <type name="Gtk.Menu" c:type="GtkMenu*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scroll_wheel_zoom"
              c:identifier="eog_scroll_view_set_scroll_wheel_zoom">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="scroll_wheel_zoom" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_transparency"
              c:identifier="eog_scroll_view_set_transparency">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="style" transfer-ownership="none">
            <type name="TransparencyStyle" c:type="EogTransparencyStyle"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_transparency_color"
              c:identifier="eog_scroll_view_set_transparency_color">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_use_bg_color"
              c:identifier="eog_scroll_view_set_use_bg_color">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="use" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom" c:identifier="eog_scroll_view_set_zoom">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="zoom" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom_mode"
              c:identifier="eog_scroll_view_set_zoom_mode">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <type name="ZoomMode" c:type="EogZoomMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom_multiplier"
              c:identifier="eog_scroll_view_set_zoom_multiplier">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="multiplier" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom_upscale"
              c:identifier="eog_scroll_view_set_zoom_upscale">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="upscale" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_cursor" c:identifier="eog_scroll_view_show_cursor">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="zoom_in" c:identifier="eog_scroll_view_zoom_in">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="smooth" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="zoom_out" c:identifier="eog_scroll_view_zoom_out">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="ScrollView" c:type="EogScrollView*"/>
          </instance-parameter>
          <parameter name="smooth" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="antialiasing-in" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">If %TRUE the displayed image will be filtered in a second pass
while being zoomed in.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="antialiasing-out" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">If %TRUE the displayed image will be filtered in a second pass
while being zoomed out.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="background-color" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">This is the default background color used for painting the background
of the image view. If set to %NULL the color is determined by the
active GTK theme.</doc>
        <type name="Gdk.RGBA"/>
      </property>
      <property name="image" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">This is the currently display #EogImage.</doc>
        <type name="Image"/>
      </property>
      <property name="scrollwheel-zoom" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">If %TRUE the scrollwheel will zoom the view, otherwise it will be
used for scrolling a zoomed image.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="transparency-color"
                readable="0"
                writable="1"
                transfer-ownership="none">
        <doc xml:space="preserve">This is the color used to fill the transparent parts of an image
if #EogScrollView:transparency-style is set to %EOG_TRANSP_COLOR.</doc>
        <type name="Gdk.RGBA"/>
      </property>
      <property name="transparency-style"
                writable="1"
                transfer-ownership="none">
        <doc xml:space="preserve">Determines how to fill the shown image's transparent areas.</doc>
        <type name="TransparencyStyle"/>
      </property>
      <property name="use-background-color"
                writable="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="zoom-mode" writable="1" transfer-ownership="none">
        <type name="ZoomMode"/>
      </property>
      <property name="zoom-multiplier" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">The current zoom factor is multiplied with this value + 1.0 when
scrolling with the scrollwheel to determine the next zoom factor.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <field name="base_instance">
        <type name="Gtk.Grid" c:type="GtkGrid"/>
      </field>
      <field name="priv">
        <type name="ScrollViewPrivate" c:type="EogScrollViewPrivate*"/>
      </field>
      <glib:signal name="next-image" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="previous-image" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="rotation-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="zoom-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="ScrollViewClass"
            c:type="EogScrollViewClass"
            glib:is-gtype-struct-for="ScrollView">
      <field name="parent_class">
        <type name="Gtk.GridClass" c:type="GtkGridClass"/>
      </field>
      <field name="zoom_changed">
        <callback name="zoom_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="view" transfer-ownership="none">
              <type name="ScrollView" c:type="EogScrollView*"/>
            </parameter>
            <parameter name="zoom" transfer-ownership="none">
              <type name="gdouble" c:type="double"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="rotation_changed">
        <callback name="rotation_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="view" transfer-ownership="none">
              <type name="ScrollView" c:type="EogScrollView*"/>
            </parameter>
            <parameter name="degrees" transfer-ownership="none">
              <type name="gdouble" c:type="double"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="next_image">
        <callback name="next_image">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="view" transfer-ownership="none">
              <type name="ScrollView" c:type="EogScrollView*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="previous_image">
        <callback name="previous_image">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="view" transfer-ownership="none">
              <type name="ScrollView" c:type="EogScrollView*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="ScrollViewPrivate"
            c:type="EogScrollViewPrivate"
            disguised="1">
    </record>
    <class name="Sidebar"
           c:symbol-prefix="sidebar"
           c:type="EogSidebar"
           parent="Gtk.Box"
           glib:type-name="EogSidebar"
           glib:get-type="eog_sidebar_get_type"
           glib:type-struct="SidebarClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="eog_sidebar_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="page_added">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
          <parameter name="main_widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="page_removed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
          <parameter name="main_widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_page" c:identifier="eog_sidebar_add_page">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
          <parameter name="title" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="main_widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_n_pages" c:identifier="eog_sidebar_get_n_pages">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_empty" c:identifier="eog_sidebar_is_empty">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_page" c:identifier="eog_sidebar_remove_page">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
          <parameter name="main_widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_page" c:identifier="eog_sidebar_set_page">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eog_sidebar" transfer-ownership="none">
            <type name="Sidebar" c:type="EogSidebar*"/>
          </instance-parameter>
          <parameter name="main_widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <property name="current-page" writable="1" transfer-ownership="none">
        <type name="Gtk.Widget"/>
      </property>
      <field name="base_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="SidebarPrivate" c:type="EogSidebarPrivate*"/>
      </field>
      <glib:signal name="page-added" when="first">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="Gtk.Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="page-removed" when="first">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="Gtk.Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="SidebarClass"
            c:type="EogSidebarClass"
            glib:is-gtype-struct-for="Sidebar">
      <field name="base_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="page_added">
        <callback name="page_added">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="eog_sidebar" transfer-ownership="none">
              <type name="Sidebar" c:type="EogSidebar*"/>
            </parameter>
            <parameter name="main_widget" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="page_removed">
        <callback name="page_removed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="eog_sidebar" transfer-ownership="none">
              <type name="Sidebar" c:type="EogSidebar*"/>
            </parameter>
            <parameter name="main_widget" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="SidebarPrivate" c:type="EogSidebarPrivate" disguised="1">
    </record>
    <bitfield name="StartupFlags"
              glib:type-name="EogStartupFlags"
              glib:get-type="eog_startup_flags_get_type"
              c:type="EogStartupFlags">
      <member name="fullscreen"
              value="1"
              c:identifier="EOG_STARTUP_FULLSCREEN"
              glib:nick="fullscreen">
      </member>
      <member name="slide_show"
              value="2"
              c:identifier="EOG_STARTUP_SLIDE_SHOW"
              glib:nick="slide-show">
      </member>
      <member name="disable_gallery"
              value="4"
              c:identifier="EOG_STARTUP_DISABLE_GALLERY"
              glib:nick="disable-gallery">
      </member>
      <member name="single_window"
              value="8"
              c:identifier="EOG_STARTUP_SINGLE_WINDOW"
              glib:nick="single-window">
      </member>
    </bitfield>
    <class name="Statusbar"
           c:symbol-prefix="statusbar"
           c:type="EogStatusbar"
           parent="Gtk.Statusbar"
           glib:type-name="EogStatusbar"
           glib:get-type="eog_statusbar_get_type"
           glib:type-struct="StatusbarClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="eog_statusbar_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="set_image_number"
              c:identifier="eog_statusbar_set_image_number">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="statusbar" transfer-ownership="none">
            <type name="Statusbar" c:type="EogStatusbar*"/>
          </instance-parameter>
          <parameter name="num" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="tot" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_progress" c:identifier="eog_statusbar_set_progress">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="statusbar" transfer-ownership="none">
            <type name="Statusbar" c:type="EogStatusbar*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Gtk.Statusbar" c:type="GtkStatusbar"/>
      </field>
      <field name="priv">
        <type name="StatusbarPrivate" c:type="EogStatusbarPrivate*"/>
      </field>
    </class>
    <record name="StatusbarClass"
            c:type="EogStatusbarClass"
            glib:is-gtype-struct-for="Statusbar">
      <field name="parent_class">
        <type name="Gtk.StatusbarClass" c:type="GtkStatusbarClass"/>
      </field>
    </record>
    <record name="StatusbarPrivate" c:type="EogStatusbarPrivate" disguised="1">
    </record>
    <constant name="THUMBNAIL_ORIGINAL_HEIGHT"
              value="eog-thumbnail-orig-height"
              c:type="EOG_THUMBNAIL_ORIGINAL_HEIGHT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="THUMBNAIL_ORIGINAL_WIDTH"
              value="eog-thumbnail-orig-width"
              c:type="EOG_THUMBNAIL_ORIGINAL_WIDTH">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="ThumbNav"
           c:symbol-prefix="thumb_nav"
           c:type="EogThumbNav"
           parent="Gtk.Box"
           glib:type-name="EogThumbNav"
           glib:get-type="eog_thumb_nav_get_type"
           glib:type-struct="ThumbNavClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="eog_thumb_nav_new">
        <doc xml:space="preserve">Creates a new thumbnail navigation widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #EogThumbNav object.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">an #EogThumbView to embed in the navigation widget.</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">The navigation mode.</doc>
            <type name="ThumbNavMode" c:type="EogThumbNavMode"/>
          </parameter>
          <parameter name="show_buttons" transfer-ownership="none">
            <doc xml:space="preserve">Whether to show the navigation buttons.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_mode" c:identifier="eog_thumb_nav_get_mode">
        <doc xml:space="preserve">Gets the navigation mode in @nav.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A value in #EogThumbNavMode.</doc>
          <type name="ThumbNavMode" c:type="EogThumbNavMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="nav" transfer-ownership="none">
            <doc xml:space="preserve">an #EogThumbNav.</doc>
            <type name="ThumbNav" c:type="EogThumbNav*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_buttons"
              c:identifier="eog_thumb_nav_get_show_buttons">
        <doc xml:space="preserve">Gets whether the navigation buttons are visible.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the navigation buttons are visible,
%FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="nav" transfer-ownership="none">
            <doc xml:space="preserve">an #EogThumbNav.</doc>
            <type name="ThumbNav" c:type="EogThumbNav*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_mode" c:identifier="eog_thumb_nav_set_mode">
        <doc xml:space="preserve">Sets the navigation mode in @nav. See #EogThumbNavMode for details.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="nav" transfer-ownership="none">
            <doc xml:space="preserve">An #EogThumbNav.</doc>
            <type name="ThumbNav" c:type="EogThumbNav*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">One of #EogThumbNavMode.</doc>
            <type name="ThumbNavMode" c:type="EogThumbNavMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_buttons"
              c:identifier="eog_thumb_nav_set_show_buttons">
        <doc xml:space="preserve">Sets whether the navigation buttons to the left and right of the
widget should be visible.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="nav" transfer-ownership="none">
            <doc xml:space="preserve">an #EogThumbNav.</doc>
            <type name="ThumbNav" c:type="EogThumbNav*"/>
          </instance-parameter>
          <parameter name="show_buttons" transfer-ownership="none">
            <doc xml:space="preserve">%TRUE to show the buttons, %FALSE to hide them.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="mode" writable="1" transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="show-buttons" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="thumbview"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="ThumbView"/>
      </property>
      <field name="base_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="ThumbNavPrivate" c:type="EogThumbNavPrivate*"/>
      </field>
    </class>
    <record name="ThumbNavClass"
            c:type="EogThumbNavClass"
            glib:is-gtype-struct-for="ThumbNav">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
    </record>
    <enumeration name="ThumbNavMode"
                 glib:type-name="EogThumbNavMode"
                 glib:get-type="eog_thumb_nav_mode_get_type"
                 c:type="EogThumbNavMode">
      <member name="one_row"
              value="0"
              c:identifier="EOG_THUMB_NAV_MODE_ONE_ROW"
              glib:nick="one-row">
      </member>
      <member name="one_column"
              value="1"
              c:identifier="EOG_THUMB_NAV_MODE_ONE_COLUMN"
              glib:nick="one-column">
      </member>
      <member name="multiple_rows"
              value="2"
              c:identifier="EOG_THUMB_NAV_MODE_MULTIPLE_ROWS"
              glib:nick="multiple-rows">
      </member>
      <member name="multiple_columns"
              value="3"
              c:identifier="EOG_THUMB_NAV_MODE_MULTIPLE_COLUMNS"
              glib:nick="multiple-columns">
      </member>
    </enumeration>
    <record name="ThumbNavPrivate" c:type="EogThumbNavPrivate" disguised="1">
    </record>
    <class name="ThumbView"
           c:symbol-prefix="thumb_view"
           c:type="EogThumbView"
           parent="Gtk.IconView"
           glib:type-name="EogThumbView"
           glib:get-type="eog_thumb_view_get_type"
           glib:type-struct="ThumbViewClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.CellLayout"/>
      <implements name="Gtk.Orientable"/>
      <implements name="Gtk.Scrollable"/>
      <constructor name="new" c:identifier="eog_thumb_view_new">
        <doc xml:space="preserve">Creates a new #EogThumbView object.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a newly created #EogThumbView.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_first_selected_image"
              c:identifier="eog_thumb_view_get_first_selected_image">
        <doc xml:space="preserve">Returns the first selected image. Note that the returned #EogImage
is not ensured to be really the first selected image in @thumbview, but
generally, it will be.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #EogImage.</doc>
          <type name="Image" c:type="EogImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_selected"
              c:identifier="eog_thumb_view_get_n_selected">
        <doc xml:space="preserve">Gets the number of images that are currently selected in @thumbview.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the number of selected images in @thumbview.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">An #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_selected_images"
              c:identifier="eog_thumb_view_get_selected_images">
        <doc xml:space="preserve">Gets a list with the currently selected images. Note that a new reference is
hold for each image and the list must be freed with g_list_free().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated list of #EogImage's.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Image"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="select_single" c:identifier="eog_thumb_view_select_single">
        <doc xml:space="preserve">Changes the current selection according to a single movement
described by #EogThumbViewSelectionChange. If there are no
thumbnails currently selected, one is selected according to the
natural selection according to the #EogThumbViewSelectionChange
used, p.g., when %EOG_THUMB_VIEW_SELECT_RIGHT is the selected change,
the first thumbnail will be selected.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
          <parameter name="change" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbViewSelectionChange, describing the
desired selection change.</doc>
            <type name="ThumbViewSelectionChange"
                  c:type="EogThumbViewSelectionChange"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_current_image"
              c:identifier="eog_thumb_view_set_current_image">
        <doc xml:space="preserve">Changes the status of a image, marking it as currently selected.
If @deselect_other is %TRUE, all other selected images will be
deselected.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve">The image to be selected.</doc>
            <type name="Image" c:type="EogImage*"/>
          </parameter>
          <parameter name="deselect_other" transfer-ownership="none">
            <doc xml:space="preserve">Whether to deselect currently selected images.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_item_height"
              c:identifier="eog_thumb_view_set_item_height">
        <doc xml:space="preserve">Sets the height of each thumbnail in @thumbview.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve">The desired height.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_model" c:identifier="eog_thumb_view_set_model">
        <doc xml:space="preserve">Sets the #EogListStore to be used with @thumbview. If an initial image
was set during @store creation, its thumbnail will be selected and visible.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">A #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
          <parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve">A #EogListStore.</doc>
            <type name="ListStore" c:type="EogListStore*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_thumbnail_popup"
              c:identifier="eog_thumb_view_set_thumbnail_popup">
        <doc xml:space="preserve">Set the contextual menu to be used with the thumbnails in the
widget. This can be done only once.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="thumbview" transfer-ownership="none">
            <doc xml:space="preserve">An #EogThumbView.</doc>
            <type name="ThumbView" c:type="EogThumbView*"/>
          </instance-parameter>
          <parameter name="menu" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkMenu.</doc>
            <type name="Gtk.Menu" c:type="GtkMenu*"/>
          </parameter>
        </parameters>
      </method>
      <field name="icon_view">
        <type name="Gtk.IconView" c:type="GtkIconView"/>
      </field>
      <field name="priv">
        <type name="ThumbViewPrivate" c:type="EogThumbViewPrivate*"/>
      </field>
    </class>
    <record name="ThumbViewClass"
            c:type="EogThumbViewClass"
            glib:is-gtype-struct-for="ThumbView">
      <field name="icon_view_class">
        <type name="Gtk.IconViewClass" c:type="GtkIconViewClass"/>
      </field>
    </record>
    <record name="ThumbViewPrivate" c:type="EogThumbViewPrivate" disguised="1">
    </record>
    <enumeration name="ThumbViewSelectionChange"
                 glib:type-name="EogThumbViewSelectionChange"
                 glib:get-type="eog_thumb_view_selection_change_get_type"
                 c:type="EogThumbViewSelectionChange">
      <member name="current"
              value="0"
              c:identifier="EOG_THUMB_VIEW_SELECT_CURRENT"
              glib:nick="current">
      </member>
      <member name="left"
              value="1"
              c:identifier="EOG_THUMB_VIEW_SELECT_LEFT"
              glib:nick="left">
      </member>
      <member name="right"
              value="2"
              c:identifier="EOG_THUMB_VIEW_SELECT_RIGHT"
              glib:nick="right">
      </member>
      <member name="first"
              value="3"
              c:identifier="EOG_THUMB_VIEW_SELECT_FIRST"
              glib:nick="first">
      </member>
      <member name="last"
              value="4"
              c:identifier="EOG_THUMB_VIEW_SELECT_LAST"
              glib:nick="last">
      </member>
      <member name="random"
              value="5"
              c:identifier="EOG_THUMB_VIEW_SELECT_RANDOM"
              glib:nick="random">
      </member>
    </enumeration>
    <class name="Transform"
           c:symbol-prefix="transform"
           c:type="EogTransform"
           parent="GObject.Object"
           glib:type-name="EogTransform"
           glib:get-type="eog_transform_get_type"
           glib:type-struct="TransformClass">
      <constructor name="flip_new" c:identifier="eog_transform_flip_new">
        <return-value transfer-ownership="full">
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <parameter name="type" transfer-ownership="none">
            <type name="TransformType" c:type="EogTransformType"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="identity_new"
                   c:identifier="eog_transform_identity_new">
        <return-value transfer-ownership="full">
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
      </constructor>
      <constructor name="new" c:identifier="eog_transform_new">
        <return-value transfer-ownership="full">
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <parameter name="trans" transfer-ownership="none">
            <type name="TransformType" c:type="EogTransformType"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="rotate_new" c:identifier="eog_transform_rotate_new">
        <return-value transfer-ownership="full">
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <parameter name="degree" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="apply" c:identifier="eog_transform_apply">
        <doc xml:space="preserve">Applies the transformation in @trans to @pixbuf, setting its progress in @job.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A new #GdkPixbuf with the transformation applied.</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <doc xml:space="preserve">a #EogTransform</doc>
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <doc xml:space="preserve">a #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
          <parameter name="job" transfer-ownership="none">
            <doc xml:space="preserve">a #EogJob</doc>
            <type name="Job" c:type="EogJob*"/>
          </parameter>
        </parameters>
      </method>
      <method name="compose" c:identifier="eog_transform_compose">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new transform</doc>
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <doc xml:space="preserve">a #EogTransform</doc>
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
          <parameter name="compose" transfer-ownership="none">
            <doc xml:space="preserve">another #EogTransform</doc>
            <type name="Transform" c:type="EogTransform*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_affine" c:identifier="eog_transform_get_affine">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
          <parameter name="affine" transfer-ownership="none">
            <type name="cairo.Matrix" c:type="cairo_matrix_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_transform_type"
              c:identifier="eog_transform_get_transform_type">
        <return-value transfer-ownership="none">
          <type name="TransformType" c:type="EogTransformType"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_identity" c:identifier="eog_transform_is_identity">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="reverse" c:identifier="eog_transform_reverse">
        <doc xml:space="preserve">Creates the reverse transformation of @trans</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new transformation</doc>
          <type name="Transform" c:type="EogTransform*"/>
        </return-value>
        <parameters>
          <instance-parameter name="trans" transfer-ownership="none">
            <doc xml:space="preserve">a #EogTransform</doc>
            <type name="Transform" c:type="EogTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="TransformPrivate" c:type="EogTransformPrivate*"/>
      </field>
    </class>
    <record name="TransformClass"
            c:type="EogTransformClass"
            glib:is-gtype-struct-for="Transform">
      <field name="parent_klass">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="TransformPrivate" c:type="EogTransformPrivate" disguised="1">
    </record>
    <enumeration name="TransformType"
                 glib:type-name="EogTransformType"
                 glib:get-type="eog_transform_type_get_type"
                 c:type="EogTransformType">
      <member name="none"
              value="0"
              c:identifier="EOG_TRANSFORM_NONE"
              glib:nick="none">
      </member>
      <member name="rot_90"
              value="1"
              c:identifier="EOG_TRANSFORM_ROT_90"
              glib:nick="rot-90">
      </member>
      <member name="rot_180"
              value="2"
              c:identifier="EOG_TRANSFORM_ROT_180"
              glib:nick="rot-180">
      </member>
      <member name="rot_270"
              value="3"
              c:identifier="EOG_TRANSFORM_ROT_270"
              glib:nick="rot-270">
      </member>
      <member name="flip_horizontal"
              value="4"
              c:identifier="EOG_TRANSFORM_FLIP_HORIZONTAL"
              glib:nick="flip-horizontal">
      </member>
      <member name="flip_vertical"
              value="5"
              c:identifier="EOG_TRANSFORM_FLIP_VERTICAL"
              glib:nick="flip-vertical">
      </member>
      <member name="transpose"
              value="6"
              c:identifier="EOG_TRANSFORM_TRANSPOSE"
              glib:nick="transpose">
      </member>
      <member name="transverse"
              value="7"
              c:identifier="EOG_TRANSFORM_TRANSVERSE"
              glib:nick="transverse">
      </member>
    </enumeration>
    <enumeration name="TransparencyStyle"
                 glib:type-name="EogTransparencyStyle"
                 glib:get-type="eog_transparency_style_get_type"
                 c:type="EogTransparencyStyle">
      <doc xml:space="preserve">Used to define how transparent image parts are drawn.</doc>
      <member name="background"
              value="0"
              c:identifier="EOG_TRANSP_BACKGROUND"
              glib:nick="background">
        <doc xml:space="preserve">Use the background color of the current UI theme</doc>
      </member>
      <member name="checked"
              value="1"
              c:identifier="EOG_TRANSP_CHECKED"
              glib:nick="checked">
        <doc xml:space="preserve">Show transparent parts as a checkerboard pattern</doc>
      </member>
      <member name="color"
              value="2"
              c:identifier="EOG_TRANSP_COLOR"
              glib:nick="color">
        <doc xml:space="preserve">Show transparent parts in a user defined color
                   (see #EogScrollView:transparency-color )</doc>
      </member>
    </enumeration>
    <enumeration name="UCError"
                 glib:type-name="EogUCError"
                 glib:get-type="eog_uc_error_get_type"
                 c:type="EogUCError"
                 glib:error-domain="eog-uri-converter-error-quark">
      <member name="invalid_unicode"
              value="0"
              c:identifier="EOG_UC_ERROR_INVALID_UNICODE"
              glib:nick="invalid-unicode">
      </member>
      <member name="invalid_character"
              value="1"
              c:identifier="EOG_UC_ERROR_INVALID_CHARACTER"
              glib:nick="invalid-character">
      </member>
      <member name="equal_filenames"
              value="2"
              c:identifier="EOG_UC_ERROR_EQUAL_FILENAMES"
              glib:nick="equal-filenames">
      </member>
      <member name="unknown"
              value="3"
              c:identifier="EOG_UC_ERROR_UNKNOWN"
              glib:nick="unknown">
      </member>
      <function name="quark" c:identifier="eog_uc_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
    </enumeration>
    <record name="UCInfo" c:type="EogUCInfo">
      <field name="description" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="rep" writable="1">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="req_exif" writable="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </record>
    <enumeration name="UCType"
                 glib:type-name="EogUCType"
                 glib:get-type="eog_uc_type_get_type"
                 c:type="EogUCType">
      <member name="string"
              value="0"
              c:identifier="EOG_UC_STRING"
              glib:nick="string">
      </member>
      <member name="filename"
              value="1"
              c:identifier="EOG_UC_FILENAME"
              glib:nick="filename">
      </member>
      <member name="counter"
              value="2"
              c:identifier="EOG_UC_COUNTER"
              glib:nick="counter">
      </member>
      <member name="comment"
              value="3"
              c:identifier="EOG_UC_COMMENT"
              glib:nick="comment">
      </member>
      <member name="date"
              value="4"
              c:identifier="EOG_UC_DATE"
              glib:nick="date">
      </member>
      <member name="time"
              value="5"
              c:identifier="EOG_UC_TIME"
              glib:nick="time">
      </member>
      <member name="day" value="6" c:identifier="EOG_UC_DAY" glib:nick="day">
      </member>
      <member name="month"
              value="7"
              c:identifier="EOG_UC_MONTH"
              glib:nick="month">
      </member>
      <member name="year"
              value="8"
              c:identifier="EOG_UC_YEAR"
              glib:nick="year">
      </member>
      <member name="hour"
              value="9"
              c:identifier="EOG_UC_HOUR"
              glib:nick="hour">
      </member>
      <member name="minute"
              value="10"
              c:identifier="EOG_UC_MINUTE"
              glib:nick="minute">
      </member>
      <member name="second"
              value="11"
              c:identifier="EOG_UC_SECOND"
              glib:nick="second">
      </member>
      <member name="end" value="12" c:identifier="EOG_UC_END" glib:nick="end">
      </member>
    </enumeration>
    <class name="URIConverter"
           c:symbol-prefix="uri_converter"
           c:type="EogURIConverter"
           parent="GObject.Object"
           glib:type-name="EogURIConverter"
           glib:get-type="eog_uri_converter_get_type"
           glib:type-struct="URIConverterClass">
      <constructor name="new" c:identifier="eog_uri_converter_new">
        <return-value transfer-ownership="full">
          <type name="URIConverter" c:type="EogURIConverter*"/>
        </return-value>
        <parameters>
          <parameter name="base_file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="img_format" transfer-ownership="none">
            <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat*"/>
          </parameter>
          <parameter name="format_string" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="preview" c:identifier="eog_uri_converter_preview">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <parameter name="format_str" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="img" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
          <parameter name="format" transfer-ownership="none">
            <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat*"/>
          </parameter>
          <parameter name="counter" transfer-ownership="none">
            <type name="gulong" c:type="gulong"/>
          </parameter>
          <parameter name="n_images" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="convert_spaces" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="space_char" transfer-ownership="none">
            <type name="gunichar" c:type="gunichar"/>
          </parameter>
        </parameters>
      </function>
      <method name="check" c:identifier="eog_uri_converter_check" throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="converter" transfer-ownership="none">
            <doc xml:space="preserve">a #EogURIConverter</doc>
            <type name="URIConverter" c:type="EogURIConverter*"/>
          </instance-parameter>
          <parameter name="img_list" transfer-ownership="none">
            <doc xml:space="preserve">a #Gfile list</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Gio.File"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="do" c:identifier="eog_uri_converter_do" throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="converter" transfer-ownership="none">
            <type name="URIConverter" c:type="EogURIConverter*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <type name="Image" c:type="EogImage*"/>
          </parameter>
          <parameter name="file" transfer-ownership="none">
            <type name="Gio.File" c:type="GFile**"/>
          </parameter>
          <parameter name="format" transfer-ownership="none">
            <type name="GdkPixbuf.PixbufFormat" c:type="GdkPixbufFormat**"/>
          </parameter>
        </parameters>
      </method>
      <method name="print_list" c:identifier="eog_uri_converter_print_list">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conv" transfer-ownership="none">
            <type name="URIConverter" c:type="EogURIConverter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="requires_exif"
              c:identifier="eog_uri_converter_requires_exif">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="converter" transfer-ownership="none">
            <type name="URIConverter" c:type="EogURIConverter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="convert-spaces" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="counter-n-digits" writable="1" transfer-ownership="none">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="counter-start" writable="1" transfer-ownership="none">
        <type name="gulong" c:type="gulong"/>
      </property>
      <property name="n-images"
                readable="0"
                writable="1"
                transfer-ownership="none">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="space-character" writable="1" transfer-ownership="none">
        <type name="gchar" c:type="gchar"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="URIConverterPrivate" c:type="EogURIConverterPrivate*"/>
      </field>
    </class>
    <record name="URIConverterClass"
            c:type="EogURIConverterClass"
            glib:is-gtype-struct-for="URIConverter">
      <field name="parent_klass">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="URIConverterPrivate"
            c:type="EogURIConverterPrivate"
            disguised="1">
    </record>
    <class name="Window"
           c:symbol-prefix="window"
           c:type="EogWindow"
           parent="Gtk.ApplicationWindow"
           glib:type-name="EogWindow"
           glib:get-type="eog_window_get_type"
           glib:type-struct="WindowClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gio.ActionGroup"/>
      <implements name="Gio.ActionMap"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="eog_window_new">
        <doc xml:space="preserve">Creates a new and empty #EogWindow. Use @flags to indicate
if the window should be initialized fullscreen, in slideshow mode,
and/or without the thumbnails gallery visible. See #EogStartupFlags.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a newly created #EogWindow.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">the initialization parameters for the new window.</doc>
            <type name="StartupFlags" c:type="EogStartupFlags"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="prepared">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="close" c:identifier="eog_window_close">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_gear_menu_section"
              c:identifier="eog_window_get_gear_menu_section">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #GMenu or %NULL on failure</doc>
          <type name="Gio.Menu" c:type="GMenu*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">the ID for the menu section to look up</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image" c:identifier="eog_window_get_image">
        <doc xml:space="preserve">Gets the image currently displayed in @window or %NULL if
no image is being displayed.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">an #EogImage.</doc>
          <type name="Image" c:type="EogImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_mode" c:identifier="eog_window_get_mode">
        <doc xml:space="preserve">Gets the mode of @window. See #EogWindowMode for details.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">An #EogWindowMode.</doc>
          <type name="WindowMode" c:type="EogWindowMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">An #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_properties_dialog"
              c:identifier="eog_window_get_properties_dialog">
        <doc xml:space="preserve">Gets the @window property dialog. The widget will be built on the first call to this function.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #GtkWidget.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">a #EogWindow</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sidebar" c:identifier="eog_window_get_sidebar">
        <doc xml:space="preserve">Gets the sidebar widget of @window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the #EogSidebar.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">An #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_statusbar" c:identifier="eog_window_get_statusbar">
        <doc xml:space="preserve">Gets the statusbar in @window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #EogStatusbar.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_store" c:identifier="eog_window_get_store">
        <doc xml:space="preserve">Gets the #EogListStore that contains the images in the gallery
of @window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">an #EogListStore.</doc>
          <type name="ListStore" c:type="EogListStore*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">An #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_thumb_nav" c:identifier="eog_window_get_thumb_nav">
        <doc xml:space="preserve">Gets the thumbnails navigation pane in @window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">an #EogThumbNav.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_thumb_view" c:identifier="eog_window_get_thumb_view">
        <doc xml:space="preserve">Gets the thumbnails view in @window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">an #EogThumbView.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_view" c:identifier="eog_window_get_view">
        <doc xml:space="preserve">Gets the #EogScrollView in the window.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the #EogScrollView.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">An #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_empty" c:identifier="eog_window_is_empty">
        <doc xml:space="preserve">Tells whether @window is currently empty or not.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @window has no images, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_not_initializing"
              c:identifier="eog_window_is_not_initializing">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="const EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="open_file_list" c:identifier="eog_window_open_file_list">
        <doc xml:space="preserve">Opens a list of files, adding them to the gallery in @window.
Files will be checked to be readable and later filtered according
with eog_list_store_add_files().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">An #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
          <parameter name="file_list" transfer-ownership="none">
            <doc xml:space="preserve">A %NULL-terminated list of #GFile's.</doc>
            <type name="GLib.SList" c:type="GSList*">
              <type name="Gio.File"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="reload_image" c:identifier="eog_window_reload_image">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_mode" c:identifier="eog_window_set_mode">
        <doc xml:space="preserve">Changes the mode of @window to normal, fullscreen, or slideshow.
See #EogWindowMode for details.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindow.</doc>
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">an #EogWindowMode value.</doc>
            <type name="WindowMode" c:type="EogWindowMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_about_dialog"
              c:identifier="eog_window_show_about_dialog">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="show_preferences_dialog"
              c:identifier="eog_window_show_preferences_dialog">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="window" transfer-ownership="none">
            <type name="Window" c:type="EogWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="gallery-position" writable="1" transfer-ownership="none">
        <doc xml:space="preserve">Determines the position of the image gallery in the window
relative to the image.</doc>
        <type name="WindowGalleryPos"/>
      </property>
      <property name="gallery-resizable"
                writable="1"
                transfer-ownership="none">
        <doc xml:space="preserve">If %TRUE the gallery will be resizable by the user otherwise it will be
in single column/row mode.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="startup-flags"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <doc xml:space="preserve">A bitwise OR of #EogStartupFlags elements, indicating how the window
should behave upon creation.</doc>
        <type name="StartupFlags"/>
      </property>
      <field name="win">
        <type name="Gtk.ApplicationWindow" c:type="GtkApplicationWindow"/>
      </field>
      <field name="priv">
        <type name="WindowPrivate" c:type="EogWindowPrivate*"/>
      </field>
      <glib:signal name="prepared" when="last">
        <doc xml:space="preserve">The #EogWindow::prepared signal is emitted when the @window is ready
to be shown.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <interface name="WindowActivatable"
               c:symbol-prefix="window_activatable"
               c:type="EogWindowActivatable"
               glib:type-name="EogWindowActivatable"
               glib:get-type="eog_window_activatable_get_type"
               glib:type-struct="WindowActivatableInterface">
      <virtual-method name="activate" invoker="activate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="deactivate" invoker="deactivate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="activate" c:identifier="eog_window_activatable_activate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="deactivate"
              c:identifier="eog_window_activatable_deactivate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="activatable" transfer-ownership="none">
            <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="window"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <doc xml:space="preserve">This is the #EogWindow this #EogWindowActivatable instance
should be attached to.</doc>
        <type name="Window"/>
      </property>
    </interface>
    <record name="WindowActivatableInterface"
            c:type="EogWindowActivatableInterface"
            glib:is-gtype-struct-for="WindowActivatable">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="activate">
        <callback name="activate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="activatable" transfer-ownership="none">
              <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="deactivate">
        <callback name="deactivate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="activatable" transfer-ownership="none">
              <type name="WindowActivatable" c:type="EogWindowActivatable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="WindowClass"
            c:type="EogWindowClass"
            glib:is-gtype-struct-for="Window">
      <field name="parent_class">
        <type name="Gtk.ApplicationWindowClass"
              c:type="GtkApplicationWindowClass"/>
      </field>
      <field name="prepared">
        <callback name="prepared">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="window" transfer-ownership="none">
              <type name="Window" c:type="EogWindow*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="WindowError"
                 glib:type-name="EogWindowError"
                 glib:get-type="eog_window_error_get_type"
                 c:type="EogWindowError">
      <member name="control_not_found"
              value="0"
              c:identifier="EOG_WINDOW_ERROR_CONTROL_NOT_FOUND"
              glib:nick="control-not-found">
      </member>
      <member name="ui_not_found"
              value="1"
              c:identifier="EOG_WINDOW_ERROR_UI_NOT_FOUND"
              glib:nick="ui-not-found">
      </member>
      <member name="no_persist_file_interface"
              value="2"
              c:identifier="EOG_WINDOW_ERROR_NO_PERSIST_FILE_INTERFACE"
              glib:nick="no-persist-file-interface">
      </member>
      <member name="io"
              value="3"
              c:identifier="EOG_WINDOW_ERROR_IO"
              glib:nick="io">
      </member>
      <member name="trash_not_found"
              value="4"
              c:identifier="EOG_WINDOW_ERROR_TRASH_NOT_FOUND"
              glib:nick="trash-not-found">
      </member>
      <member name="generic"
              value="5"
              c:identifier="EOG_WINDOW_ERROR_GENERIC"
              glib:nick="generic">
      </member>
      <member name="unknown"
              value="6"
              c:identifier="EOG_WINDOW_ERROR_UNKNOWN"
              glib:nick="unknown">
      </member>
    </enumeration>
    <enumeration name="WindowGalleryPos"
                 glib:type-name="EogWindowGalleryPos"
                 glib:get-type="eog_window_gallery_pos_get_type"
                 c:type="EogWindowGalleryPos">
      <member name="bottom"
              value="0"
              c:identifier="EOG_WINDOW_GALLERY_POS_BOTTOM"
              glib:nick="bottom">
      </member>
      <member name="left"
              value="1"
              c:identifier="EOG_WINDOW_GALLERY_POS_LEFT"
              glib:nick="left">
      </member>
      <member name="top"
              value="2"
              c:identifier="EOG_WINDOW_GALLERY_POS_TOP"
              glib:nick="top">
      </member>
      <member name="right"
              value="3"
              c:identifier="EOG_WINDOW_GALLERY_POS_RIGHT"
              glib:nick="right">
      </member>
    </enumeration>
    <enumeration name="WindowMode"
                 glib:type-name="EogWindowMode"
                 glib:get-type="eog_window_mode_get_type"
                 c:type="EogWindowMode">
      <member name="unknown"
              value="0"
              c:identifier="EOG_WINDOW_MODE_UNKNOWN"
              glib:nick="unknown">
      </member>
      <member name="normal"
              value="1"
              c:identifier="EOG_WINDOW_MODE_NORMAL"
              glib:nick="normal">
      </member>
      <member name="fullscreen"
              value="2"
              c:identifier="EOG_WINDOW_MODE_FULLSCREEN"
              glib:nick="fullscreen">
      </member>
      <member name="slideshow"
              value="3"
              c:identifier="EOG_WINDOW_MODE_SLIDESHOW"
              glib:nick="slideshow">
      </member>
    </enumeration>
    <record name="WindowPrivate" c:type="EogWindowPrivate" disguised="1">
    </record>
    <enumeration name="ZoomMode"
                 glib:type-name="EogZoomMode"
                 glib:get-type="eog_zoom_mode_get_type"
                 c:type="EogZoomMode">
      <doc xml:space="preserve">Used to determine the zooming behaviour of an #EogScrollView.</doc>
      <member name="free"
              value="0"
              c:identifier="EOG_ZOOM_MODE_FREE"
              glib:nick="free">
        <doc xml:space="preserve">Use the currently set zoom factor to display the image
                     (see eog_scroll_view_set_zoom()).</doc>
      </member>
      <member name="shrink_to_fit"
              value="1"
              c:identifier="EOG_ZOOM_MODE_SHRINK_TO_FIT"
              glib:nick="shrink-to-fit">
        <doc xml:space="preserve">If an image is to large for the window,
                              zoom out until the image is fully visible.
                              This will never zoom in on smaller images.</doc>
      </member>
    </enumeration>
    <function name="debug" c:identifier="eog_debug">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="section" transfer-ownership="none">
          <type name="Debug" c:type="EogDebug"/>
        </parameter>
        <parameter name="file" 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="function" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="debug_init"
              c:identifier="eog_debug_init"
              moved-to="Debug.init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="exif_util_format_date"
              c:identifier="eog_exif_util_format_date">
      <doc xml:space="preserve">Takes a date string formatted after Exif specifications and generates a
more readable, possibly localized, string out of it.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a newly allocated date string formatted according to the
current locale.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <doc xml:space="preserve">a date string following Exif specifications</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="exif_util_format_datetime_label"
              c:identifier="eog_exif_util_format_datetime_label"
              introspectable="0">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="label" transfer-ownership="none">
          <type name="Gtk.Label" c:type="GtkLabel*"/>
        </parameter>
        <parameter name="exif_data" transfer-ownership="none">
          <type c:type="ExifData*"/>
        </parameter>
        <parameter name="tag_id" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="exif_util_set_focal_length_label_text"
              c:identifier="eog_exif_util_set_focal_length_label_text"
              introspectable="0">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="label" transfer-ownership="none">
          <type name="Gtk.Label" c:type="GtkLabel*"/>
        </parameter>
        <parameter name="exif_data" transfer-ownership="none">
          <type c:type="ExifData*"/>
        </parameter>
      </parameters>
    </function>
    <function name="exif_util_set_label_text"
              c:identifier="eog_exif_util_set_label_text"
              introspectable="0">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="label" transfer-ownership="none">
          <type name="Gtk.Label" c:type="GtkLabel*"/>
        </parameter>
        <parameter name="exif_data" transfer-ownership="none">
          <type c:type="ExifData*"/>
        </parameter>
        <parameter name="tag_id" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="image_error_quark"
              c:identifier="eog_image_error_quark"
              moved-to="ImageError.quark">
      <return-value transfer-ownership="none">
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="marshal_VOID__INT_INT"
              c:identifier="eog_marshal_VOID__INT_INT">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="closure" transfer-ownership="none">
          <type name="GObject.Closure" c:type="GClosure*"/>
        </parameter>
        <parameter name="return_value" transfer-ownership="none">
          <type name="GObject.Value" c:type="GValue*"/>
        </parameter>
        <parameter name="n_param_values" transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </parameter>
        <parameter name="param_values" transfer-ownership="none">
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
        <parameter name="invocation_hint"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
        <parameter name="marshal_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="thumbnail_add_frame"
              c:identifier="eog_thumbnail_add_frame">
      <doc xml:space="preserve">Adds a frame to @thumbnail</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a new #GdkPixbuf, storing @thumbnail nicely framed.</doc>
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </return-value>
      <parameters>
        <parameter name="thumbnail" transfer-ownership="none">
          <doc xml:space="preserve">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thumbnail_fit_to_size"
              c:identifier="eog_thumbnail_fit_to_size">
      <doc xml:space="preserve">Ensures a pixbuf fits a given @dimension</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a new #GdkPixbuf</doc>
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </return-value>
      <parameters>
        <parameter name="thumbnail" transfer-ownership="none">
          <doc xml:space="preserve">a #GdkPixbuf</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </parameter>
        <parameter name="dimension" transfer-ownership="none">
          <doc xml:space="preserve">the maximum width or height desired</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="thumbnail_init" c:identifier="eog_thumbnail_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="thumbnail_load"
              c:identifier="eog_thumbnail_load"
              throws="1">
      <doc xml:space="preserve">Loads the thumbnail for @image. In case of error, %NULL is returned
and @error is set.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a new #GdkPixbuf with the thumbnail for
@image or %NULL in case of error.</doc>
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </return-value>
      <parameters>
        <parameter name="image" transfer-ownership="none">
          <doc xml:space="preserve">a #EogImage</doc>
          <type name="Image" c:type="EogImage*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uc_error_quark"
              c:identifier="eog_uc_error_quark"
              moved-to="UCError.quark">
      <return-value transfer-ownership="none">
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
  </namespace>
</repository>
