<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<refentry id="GtkRecentManager">
<refmeta>
<refentrytitle role="top_of_page" id="GtkRecentManager.top_of_page">GtkRecentManager</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkRecentManager</refname>
<refpurpose>Managing recently used files</refpurpose>
</refnamediv>

<refsect1 id="GtkRecentManager.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="GtkRecentManager"><returnvalue>GtkRecentManager</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-manager-new">gtk_recent_manager_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkRecentManager"><returnvalue>GtkRecentManager</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-manager-get-default">gtk_recent_manager_get_default</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-add-item">gtk_recent_manager_add_item</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-add-full">gtk_recent_manager_add_full</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-remove-item">gtk_recent_manager_remove_item</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkRecentInfo"><returnvalue>GtkRecentInfo</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-manager-lookup-item">gtk_recent_manager_lookup_item</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-has-item">gtk_recent_manager_has_item</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-move-item">gtk_recent_manager_move_item</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GList"><returnvalue>GList</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-manager-get-items">gtk_recent_manager_get_items</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-manager-purge-items">gtk_recent_manager_purge_items</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

<row><entry role="function_type"><link linkend="GtkRecentInfo"><returnvalue>GtkRecentInfo</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-ref">gtk_recent_info_ref</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-unref">gtk_recent_info_unref</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-uri">gtk_recent_info_get_uri</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-display-name">gtk_recent_info_get_display_name</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-description">gtk_recent_info_get_description</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-mime-type">gtk_recent_info_get_mime_type</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-added">gtk_recent_info_get_added</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-modified">gtk_recent_info_get_modified</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-visited">gtk_recent_info_get_visited</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-private-hint">gtk_recent_info_get_private_hint</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-application-info">gtk_recent_info_get_application_info</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-applications">gtk_recent_info_get_applications</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-last-application">gtk_recent_info_last_application</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-has-application">gtk_recent_info_has_application</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GAppInfo"><returnvalue>GAppInfo</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-create-app-info">gtk_recent_info_create_app_info</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-groups">gtk_recent_info_get_groups</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-has-group">gtk_recent_info_has_group</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GIcon"><returnvalue>GIcon</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-gicon">gtk_recent_info_get_gicon</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-short-name">gtk_recent_info_get_short_name</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-uri-display">gtk_recent_info_get_uri_display</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-get-age">gtk_recent_info_get_age</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-is-local">gtk_recent_info_is_local</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-exists">gtk_recent_info_exists</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-recent-info-match">gtk_recent_info_match</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRecentManager.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkRecentManager--filename">filename</link></entry><entry role="property_flags">Read / Write / Construct&#160;Only</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkRecentManager--size">size</link></entry><entry role="property_flags">Read</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRecentManager.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="signal_proto_type" colwidth="150px"/>
<colspec colname="signal_proto_name" colwidth="300px"/>
<colspec colname="signal_proto_flags" colwidth="200px"/>
<tbody>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkRecentManager-changed">changed</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-FIRST:CAPS">Run First</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRecentManager.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkRecentManager-struct">GtkRecentManager</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkRecentInfo">GtkRecentInfo</link></entry></row>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkRecentData">GtkRecentData</link></entry></row>
<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="GTK-RECENT-MANAGER-ERROR:CAPS">GTK_RECENT_MANAGER_ERROR</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkRecentManagerError">GtkRecentManagerError</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRecentManager.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkRecentManager
</screen>
</refsect1>

<refsect1 id="GtkRecentManager.includes"><title>Includes</title><synopsis>#include &lt;gtk/gtk.h&gt;
</synopsis></refsect1>

<refsect1 id="GtkRecentManager.description" role="desc">
<title role="desc.title">Description</title>
<para><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> provides a facility for adding, removing and
looking up recently used files. Each recently used file is
identified by its URI, and has meta-data associated to it, like
the names and command lines of the applications that have
registered it, the number of time each application has registered
the same file, the mime type of the file and whether the file
should be displayed only by the applications that have
registered it.</para>
<para>The recently used files list is per user.</para>
<para>The <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> acts like a database of all the recently
used files. You can create new <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> objects, but
it is more efficient to use the default manager created by GTK+.</para>
<para>Adding a new recently used file is as simple as:</para>
<informalexample><programlisting role="example"><![CDATA[
GtkRecentManager *manager;

manager = gtk_recent_manager_get_default ();
gtk_recent_manager_add_item (manager, file_uri);
]]></programlisting></informalexample>
<para></para>
<para>The <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> will try to gather all the needed information
from the file itself through GIO.</para>
<para>Looking up the meta-data associated with a recently used file
given its URI requires calling <link linkend="gtk-recent-manager-lookup-item"><function>gtk_recent_manager_lookup_item()</function></link>:</para>
<informalexample><programlisting role="example"><![CDATA[
GtkRecentManager *manager;
GtkRecentInfo *info;
GError *error = NULL;

manager = gtk_recent_manager_get_default ();
info = gtk_recent_manager_lookup_item (manager, file_uri, &error);
if (error)
  {
    g_warning ("Could not find the file: %s", error->message);
    g_error_free (error);
  }
else
 {
   // Use the info object
   gtk_recent_info_unref (info);
 }
]]></programlisting></informalexample>
<para></para>
<para>In order to retrieve the list of recently used files, you can use
<link linkend="gtk-recent-manager-get-items"><function>gtk_recent_manager_get_items()</function></link>, which returns a list of <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link>.</para>
<para>A <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> is the model used to populate the contents of
one, or more <link linkend="GtkRecentChooser"><type>GtkRecentChooser</type></link> implementations.</para>
<para>Note that the maximum age of the recently used files list is
controllable through the <link linkend="GtkSettings--gtk-recent-files-max-age"><type>“gtk-recent-files-max-age”</type></link>
property.</para>
<para>Recently used files are supported since GTK+ 2.10.</para>

</refsect1>
<refsect1 id="GtkRecentManager.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-recent-manager-new" role="function">
<title>gtk_recent_manager_new&#160;()</title>
<indexterm zone="gtk-recent-manager-new"><primary>gtk_recent_manager_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkRecentManager"><returnvalue>GtkRecentManager</returnvalue></link>&#160;*
gtk_recent_manager_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Creates a new recent manager object. Recent manager objects are used to
handle the list of recently used resources. A <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> object
monitors the recently used resources list, and emits the “changed” signal
each time something inside the list changes.</para>
<para><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> objects are expensive: be sure to create them only when
needed. You should use <link linkend="gtk-recent-manager-get-default"><function>gtk_recent_manager_get_default()</function></link> instead.</para>
<refsect3 id="gtk-recent-manager-new.returns" role="returns">
<title>Returns</title>
<para> A newly created <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> object</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-get-default" role="function">
<title>gtk_recent_manager_get_default&#160;()</title>
<indexterm zone="gtk-recent-manager-get-default"><primary>gtk_recent_manager_get_default</primary></indexterm>
<programlisting language="C"><link linkend="GtkRecentManager"><returnvalue>GtkRecentManager</returnvalue></link>&#160;*
gtk_recent_manager_get_default (<parameter><type>void</type></parameter>);</programlisting>
<para>Gets a unique instance of <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link>, that you can share
in your application without caring about memory management.</para>
<refsect3 id="gtk-recent-manager-get-default.returns" role="returns">
<title>Returns</title>
<para>A unique <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link>. Do not ref or
unref it. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-add-item" role="function">
<title>gtk_recent_manager_add_item&#160;()</title>
<indexterm zone="gtk-recent-manager-add-item"><primary>gtk_recent_manager_add_item</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_manager_add_item (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>);</programlisting>
<para>Adds a new resource, pointed by <parameter>uri</parameter>
, into the recently used
resources list.</para>
<para>This function automatically retrieves some of the needed
metadata and setting other metadata to common default values;
it then feeds the data to <link linkend="gtk-recent-manager-add-full"><function>gtk_recent_manager_add_full()</function></link>.</para>
<para>See <link linkend="gtk-recent-manager-add-full"><function>gtk_recent_manager_add_full()</function></link> if you want to explicitly
define the metadata for the resource pointed by <parameter>uri</parameter>
.</para>
<refsect3 id="gtk-recent-manager-add-item.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>a valid URI</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-add-item.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the new item was successfully added
to the recently used resources list</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-add-full" role="function">
<title>gtk_recent_manager_add_full&#160;()</title>
<indexterm zone="gtk-recent-manager-add-full"><primary>gtk_recent_manager_add_full</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_manager_add_full (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>,
                             <parameter>const <link linkend="GtkRecentData"><type>GtkRecentData</type></link> *recent_data</parameter>);</programlisting>
<para>Adds a new resource, pointed by <parameter>uri</parameter>
, into the recently used
resources list, using the metadata specified inside the
<link linkend="GtkRecentData"><type>GtkRecentData</type></link> passed in <parameter>recent_data</parameter>
.</para>
<para>The passed URI will be used to identify this resource inside the
list.</para>
<para>In order to register the new recently used resource, metadata about
the resource must be passed as well as the URI; the metadata is
stored in a <link linkend="GtkRecentData"><type>GtkRecentData</type></link>, which must contain the MIME
type of the resource pointed by the URI; the name of the application
that is registering the item, and a command line to be used when
launching the item.</para>
<para>Optionally, a <link linkend="GtkRecentData"><type>GtkRecentData</type></link> might contain a UTF-8 string
to be used when viewing the item instead of the last component of
the URI; a short description of the item; whether the item should
be considered private - that is, should be displayed only by the
applications that have registered it.</para>
<refsect3 id="gtk-recent-manager-add-full.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>a valid URI</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>recent_data</para></entry>
<entry role="parameter_description"><para>metadata of the resource</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-add-full.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the new item was successfully added to the
recently used resources list, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-remove-item" role="function">
<title>gtk_recent_manager_remove_item&#160;()</title>
<indexterm zone="gtk-recent-manager-remove-item"><primary>gtk_recent_manager_remove_item</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_manager_remove_item (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                                <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>,
                                <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<para>Removes a resource pointed by <parameter>uri</parameter>
 from the recently used resources
list handled by a recent manager.</para>
<refsect3 id="gtk-recent-manager-remove-item.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>the URI of the item you wish to remove</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>return location for a <link linkend="GError"><type>GError</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-remove-item.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the item pointed by <parameter>uri</parameter>
has been successfully
removed by the recently used resources list, and <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-lookup-item" role="function">
<title>gtk_recent_manager_lookup_item&#160;()</title>
<indexterm zone="gtk-recent-manager-lookup-item"><primary>gtk_recent_manager_lookup_item</primary></indexterm>
<programlisting language="C"><link linkend="GtkRecentInfo"><returnvalue>GtkRecentInfo</returnvalue></link>&#160;*
gtk_recent_manager_lookup_item (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                                <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>,
                                <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<para>Searches for a URI inside the recently used resources list, and
returns a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> containing informations about the resource
like its MIME type, or its display name.</para>
<refsect3 id="gtk-recent-manager-lookup-item.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>a URI</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>a return location for a <link linkend="GError"><type>GError</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-lookup-item.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> containing information
about the resource pointed by <parameter>uri</parameter>
, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if the URI was
not registered in the recently used resources list. Free with
<link linkend="gtk-recent-info-unref"><function>gtk_recent_info_unref()</function></link>. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-has-item" role="function">
<title>gtk_recent_manager_has_item&#160;()</title>
<indexterm zone="gtk-recent-manager-has-item"><primary>gtk_recent_manager_has_item</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_manager_has_item (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>);</programlisting>
<para>Checks whether there is a recently used resource registered
with <parameter>uri</parameter>
 inside the recent manager.</para>
<refsect3 id="gtk-recent-manager-has-item.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>a URI</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-has-item.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the resource was found, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-move-item" role="function">
<title>gtk_recent_manager_move_item&#160;()</title>
<indexterm zone="gtk-recent-manager-move-item"><primary>gtk_recent_manager_move_item</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_manager_move_item (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                              <parameter>const <link linkend="gchar"><type>gchar</type></link> *uri</parameter>,
                              <parameter>const <link linkend="gchar"><type>gchar</type></link> *new_uri</parameter>,
                              <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<para>Changes the location of a recently used resource from <parameter>uri</parameter>
 to <parameter>new_uri</parameter>
.</para>
<para>Please note that this function will not affect the resource pointed
by the URIs, but only the URI used in the recently used resources list.</para>
<refsect3 id="gtk-recent-manager-move-item.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>uri</para></entry>
<entry role="parameter_description"><para>the URI of a recently used resource</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>new_uri</para></entry>
<entry role="parameter_description"><para>the new URI of the recently used resource, or
<link linkend="NULL:CAPS"><literal>NULL</literal></link> to remove the item pointed by <parameter>uri</parameter>
in the list. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>a return location for a <link linkend="GError"><type>GError</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-move-item.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> on success</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-get-items" role="function">
<title>gtk_recent_manager_get_items&#160;()</title>
<indexterm zone="gtk-recent-manager-get-items"><primary>gtk_recent_manager_get_items</primary></indexterm>
<programlisting language="C"><link linkend="GList"><returnvalue>GList</returnvalue></link>&#160;*
gtk_recent_manager_get_items (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>);</programlisting>
<para>Gets the list of recently used resources.</para>
<refsect3 id="gtk-recent-manager-get-items.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-get-items.returns" role="returns">
<title>Returns</title>
<para>a list of
newly allocated <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> objects. Use
<link linkend="gtk-recent-info-unref"><function>gtk_recent_info_unref()</function></link> on each item inside the list, and then
free the list itself using <link linkend="g-list-free"><function>g_list_free()</function></link>. </para>
<para><emphasis role="annotation">[<acronym>element-type</acronym> GtkRecentInfo][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-manager-purge-items" role="function">
<title>gtk_recent_manager_purge_items&#160;()</title>
<indexterm zone="gtk-recent-manager-purge-items"><primary>gtk_recent_manager_purge_items</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_recent_manager_purge_items (<parameter><link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *manager</parameter>,
                                <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<para>Purges every item from the recently used resources list.</para>
<refsect3 id="gtk-recent-manager-purge-items.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>manager</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>a return location for a <link linkend="GError"><type>GError</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-manager-purge-items.returns" role="returns">
<title>Returns</title>
<para> the number of items that have been removed from the
recently used resources list</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-ref" role="function">
<title>gtk_recent_info_ref&#160;()</title>
<indexterm zone="gtk-recent-info-ref"><primary>gtk_recent_info_ref</primary></indexterm>
<programlisting language="C"><link linkend="GtkRecentInfo"><returnvalue>GtkRecentInfo</returnvalue></link>&#160;*
gtk_recent_info_ref (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Increases the reference count of <parameter>recent_info</parameter>
 by one.</para>
<refsect3 id="gtk-recent-info-ref.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-ref.returns" role="returns">
<title>Returns</title>
<para> the recent info object with its reference count
increased by one</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-unref" role="function">
<title>gtk_recent_info_unref&#160;()</title>
<indexterm zone="gtk-recent-info-unref"><primary>gtk_recent_info_unref</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_recent_info_unref (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Decreases the reference count of <parameter>info</parameter>
 by one. If the reference
count reaches zero, <parameter>info</parameter>
 is deallocated, and the memory freed.</para>
<refsect3 id="gtk-recent-info-unref.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-uri" role="function">
<title>gtk_recent_info_get_uri&#160;()</title>
<indexterm zone="gtk-recent-info-get-uri"><primary>gtk_recent_info_get_uri</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_uri (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the URI of the resource.</para>
<refsect3 id="gtk-recent-info-get-uri.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-uri.returns" role="returns">
<title>Returns</title>
<para> the URI of the resource. The returned string is
owned by the recent manager, and should not be freed.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-display-name" role="function">
<title>gtk_recent_info_get_display_name&#160;()</title>
<indexterm zone="gtk-recent-info-get-display-name"><primary>gtk_recent_info_get_display_name</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_display_name (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the name of the resource. If none has been defined, the basename
of the resource is obtained.</para>
<refsect3 id="gtk-recent-info-get-display-name.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-display-name.returns" role="returns">
<title>Returns</title>
<para> the display name of the resource. The returned string
is owned by the recent manager, and should not be freed.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-description" role="function">
<title>gtk_recent_info_get_description&#160;()</title>
<indexterm zone="gtk-recent-info-get-description"><primary>gtk_recent_info_get_description</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_description (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the (short) description of the resource.</para>
<refsect3 id="gtk-recent-info-get-description.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-description.returns" role="returns">
<title>Returns</title>
<para> the description of the resource. The returned string
is owned by the recent manager, and should not be freed.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-mime-type" role="function">
<title>gtk_recent_info_get_mime_type&#160;()</title>
<indexterm zone="gtk-recent-info-get-mime-type"><primary>gtk_recent_info_get_mime_type</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_mime_type (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the MIME type of the resource.</para>
<refsect3 id="gtk-recent-info-get-mime-type.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-mime-type.returns" role="returns">
<title>Returns</title>
<para> the MIME type of the resource. The returned string
is owned by the recent manager, and should not be freed.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-added" role="function">
<title>gtk_recent_info_get_added&#160;()</title>
<indexterm zone="gtk-recent-info-get-added"><primary>gtk_recent_info_get_added</primary></indexterm>
<programlisting language="C"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
gtk_recent_info_get_added (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the timestamp (seconds from system’s Epoch) when the resource
was added to the recently used resources list.</para>
<refsect3 id="gtk-recent-info-get-added.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-added.returns" role="returns">
<title>Returns</title>
<para> the number of seconds elapsed from system’s Epoch when
the resource was added to the list, or -1 on failure.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-modified" role="function">
<title>gtk_recent_info_get_modified&#160;()</title>
<indexterm zone="gtk-recent-info-get-modified"><primary>gtk_recent_info_get_modified</primary></indexterm>
<programlisting language="C"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
gtk_recent_info_get_modified (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the timestamp (seconds from system’s Epoch) when the meta-data
for the resource was last modified.</para>
<refsect3 id="gtk-recent-info-get-modified.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-modified.returns" role="returns">
<title>Returns</title>
<para> the number of seconds elapsed from system’s Epoch when
the resource was last modified, or -1 on failure.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-visited" role="function">
<title>gtk_recent_info_get_visited&#160;()</title>
<indexterm zone="gtk-recent-info-get-visited"><primary>gtk_recent_info_get_visited</primary></indexterm>
<programlisting language="C"><link linkend="time-t"><returnvalue>time_t</returnvalue></link>
gtk_recent_info_get_visited (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the timestamp (seconds from system’s Epoch) when the meta-data
for the resource was last visited.</para>
<refsect3 id="gtk-recent-info-get-visited.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-visited.returns" role="returns">
<title>Returns</title>
<para> the number of seconds elapsed from system’s Epoch when
the resource was last visited, or -1 on failure.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-private-hint" role="function">
<title>gtk_recent_info_get_private_hint&#160;()</title>
<indexterm zone="gtk-recent-info-get-private-hint"><primary>gtk_recent_info_get_private_hint</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_get_private_hint (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the value of the “private” flag. Resources in the recently used
list that have this flag set to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> should only be displayed by the
applications that have registered them.</para>
<refsect3 id="gtk-recent-info-get-private-hint.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-private-hint.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the private flag was found, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-application-info" role="function">
<title>gtk_recent_info_get_application_info&#160;()</title>
<indexterm zone="gtk-recent-info-get-application-info"><primary>gtk_recent_info_get_application_info</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_get_application_info (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                                      <parameter>const <link linkend="gchar"><type>gchar</type></link> *app_name</parameter>,
                                      <parameter>const <link linkend="gchar"><type>gchar</type></link> **app_exec</parameter>,
                                      <parameter><link linkend="guint"><type>guint</type></link> *count</parameter>,
                                      <parameter><link linkend="time-t"><type>time_t</type></link> *time_</parameter>);</programlisting>
<para>Gets the data regarding the application that has registered the resource
pointed by <parameter>info</parameter>
.</para>
<para>If the command line contains any escape characters defined inside the
storage specification, they will be expanded.</para>
<refsect3 id="gtk-recent-info-get-application-info.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>app_name</para></entry>
<entry role="parameter_description"><para>the name of the application that has registered this item</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>app_exec</para></entry>
<entry role="parameter_description"><para>return location for the string containing
the command line. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>count</para></entry>
<entry role="parameter_description"><para>return location for the number of times this item was registered. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>time_</para></entry>
<entry role="parameter_description"><para>return location for the timestamp this item was last registered
for this application. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-application-info.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if an application with <parameter>app_name</parameter>
has registered this
resource inside the recently used list, or <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise. The
<parameter>app_exec</parameter>
string is owned by the <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> and should not be
modified or freed</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-applications" role="function">
<title>gtk_recent_info_get_applications&#160;()</title>
<indexterm zone="gtk-recent-info-get-applications"><primary>gtk_recent_info_get_applications</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
gtk_recent_info_get_applications (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                                  <parameter><link linkend="gsize"><type>gsize</type></link> *length</parameter>);</programlisting>
<para>Retrieves the list of applications that have registered this resource.</para>
<refsect3 id="gtk-recent-info-get-applications.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>length</para></entry>
<entry role="parameter_description"><para>return location for the length of the returned list. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>][<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-applications.returns" role="returns">
<title>Returns</title>
<para>a newly allocated <link linkend="NULL:CAPS"><literal>NULL</literal></link>-terminated array of strings.
Use <link linkend="g-strfreev"><function>g_strfreev()</function></link> to free it. </para>
<para><emphasis role="annotation">[<acronym>array</acronym> length=length zero-terminated=1][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-last-application" role="function">
<title>gtk_recent_info_last_application&#160;()</title>
<indexterm zone="gtk-recent-info-last-application"><primary>gtk_recent_info_last_application</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_last_application (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the name of the last application that have registered the
recently used resource represented by <parameter>info</parameter>
.</para>
<refsect3 id="gtk-recent-info-last-application.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-last-application.returns" role="returns">
<title>Returns</title>
<para> an application name. Use <link linkend="g-free"><function>g_free()</function></link> to free it.</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-has-application" role="function">
<title>gtk_recent_info_has_application&#160;()</title>
<indexterm zone="gtk-recent-info-has-application"><primary>gtk_recent_info_has_application</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_has_application (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                                 <parameter>const <link linkend="gchar"><type>gchar</type></link> *app_name</parameter>);</programlisting>
<para>Checks whether an application registered this resource using <parameter>app_name</parameter>
.</para>
<refsect3 id="gtk-recent-info-has-application.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>app_name</para></entry>
<entry role="parameter_description"><para>a string containing an application name</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-has-application.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if an application with name <parameter>app_name</parameter>
was found,
<link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-create-app-info" role="function">
<title>gtk_recent_info_create_app_info&#160;()</title>
<indexterm zone="gtk-recent-info-create-app-info"><primary>gtk_recent_info_create_app_info</primary></indexterm>
<programlisting language="C"><link linkend="GAppInfo"><returnvalue>GAppInfo</returnvalue></link>&#160;*
gtk_recent_info_create_app_info (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                                 <parameter>const <link linkend="gchar"><type>gchar</type></link> *app_name</parameter>,
                                 <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<para>Creates a <link linkend="GAppInfo"><type>GAppInfo</type></link> for the specified <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para>
<refsect3 id="gtk-recent-info-create-app-info.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>app_name</para></entry>
<entry role="parameter_description"><para>the name of the application that should
be mapped to a <link linkend="GAppInfo"><type>GAppInfo</type></link>; if <link linkend="NULL:CAPS"><literal>NULL</literal></link> is used then the default
application for the MIME type is used. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>return location for a <link linkend="GError"><type>GError</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-create-app-info.returns" role="returns">
<title>Returns</title>
<para>the newly created <link linkend="GAppInfo"><type>GAppInfo</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
In case of error, <parameter>error</parameter>
will be set either with a
<link linkend="GTK-RECENT-MANAGER-ERROR:CAPS"><literal>GTK_RECENT_MANAGER_ERROR</literal></link> or a <link linkend="G-IO-ERROR:CAPS"><literal>G_IO_ERROR</literal></link>. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-groups" role="function">
<title>gtk_recent_info_get_groups&#160;()</title>
<indexterm zone="gtk-recent-info-get-groups"><primary>gtk_recent_info_get_groups</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
gtk_recent_info_get_groups (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                            <parameter><link linkend="gsize"><type>gsize</type></link> *length</parameter>);</programlisting>
<para>Returns all groups registered for the recently used item <parameter>info</parameter>
.
The array of returned group names will be <link linkend="NULL:CAPS"><literal>NULL</literal></link> terminated, so
length might optionally be <link linkend="NULL:CAPS"><literal>NULL</literal></link>.</para>
<refsect3 id="gtk-recent-info-get-groups.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>length</para></entry>
<entry role="parameter_description"><para>return location for the number of groups returned. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>][<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-groups.returns" role="returns">
<title>Returns</title>
<para>a newly allocated <link linkend="NULL:CAPS"><literal>NULL</literal></link> terminated array of strings.
Use <link linkend="g-strfreev"><function>g_strfreev()</function></link> to free it. </para>
<para><emphasis role="annotation">[<acronym>array</acronym> length=length zero-terminated=1][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-has-group" role="function">
<title>gtk_recent_info_has_group&#160;()</title>
<indexterm zone="gtk-recent-info-has-group"><primary>gtk_recent_info_has_group</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_has_group (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>,
                           <parameter>const <link linkend="gchar"><type>gchar</type></link> *group_name</parameter>);</programlisting>
<para>Checks whether <parameter>group_name</parameter>
 appears inside the groups
registered for the recently used item <parameter>info</parameter>
.</para>
<refsect3 id="gtk-recent-info-has-group.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>group_name</para></entry>
<entry role="parameter_description"><para>name of a group</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-has-group.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the group was found</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-gicon" role="function">
<title>gtk_recent_info_get_gicon&#160;()</title>
<indexterm zone="gtk-recent-info-get-gicon"><primary>gtk_recent_info_get_gicon</primary></indexterm>
<programlisting language="C"><link linkend="GIcon"><returnvalue>GIcon</returnvalue></link>&#160;*
gtk_recent_info_get_gicon (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Retrieves the icon associated to the resource MIME type.</para>
<refsect3 id="gtk-recent-info-get-gicon.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-gicon.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GIcon"><type>GIcon</type></link> containing the icon, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
Use <link linkend="g-object-unref"><function>g_object_unref()</function></link> when finished using the icon. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-short-name" role="function">
<title>gtk_recent_info_get_short_name&#160;()</title>
<indexterm zone="gtk-recent-info-get-short-name"><primary>gtk_recent_info_get_short_name</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_short_name (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Computes a valid UTF-8 string that can be used as the
name of the item in a menu or list. For example, calling
this function on an item that refers to
“file:///foo/bar.txt” will yield “bar.txt”.</para>
<refsect3 id="gtk-recent-info-get-short-name.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>an <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-short-name.returns" role="returns">
<title>Returns</title>
<para> A newly-allocated string in UTF-8 encoding
free it with <link linkend="g-free"><function>g_free()</function></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-uri-display" role="function">
<title>gtk_recent_info_get_uri_display&#160;()</title>
<indexterm zone="gtk-recent-info-get-uri-display"><primary>gtk_recent_info_get_uri_display</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_recent_info_get_uri_display (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets a displayable version of the resource’s URI. If the resource
is local, it returns a local path; if the resource is not local,
it returns the UTF-8 encoded content of <link linkend="gtk-recent-info-get-uri"><function>gtk_recent_info_get_uri()</function></link>.</para>
<refsect3 id="gtk-recent-info-get-uri-display.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-uri-display.returns" role="returns">
<title>Returns</title>
<para>a newly allocated UTF-8 string containing the
resource’s URI or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. Use <link linkend="g-free"><function>g_free()</function></link> when done using it. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-get-age" role="function">
<title>gtk_recent_info_get_age&#160;()</title>
<indexterm zone="gtk-recent-info-get-age"><primary>gtk_recent_info_get_age</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_recent_info_get_age (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Gets the number of days elapsed since the last update
of the resource pointed by <parameter>info</parameter>
.</para>
<refsect3 id="gtk-recent-info-get-age.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-get-age.returns" role="returns">
<title>Returns</title>
<para> a positive integer containing the number of days
elapsed since the time this resource was last modified</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-is-local" role="function">
<title>gtk_recent_info_is_local&#160;()</title>
<indexterm zone="gtk-recent-info-is-local"><primary>gtk_recent_info_is_local</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_is_local (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Checks whether the resource is local or not by looking at the
scheme of its URI.</para>
<refsect3 id="gtk-recent-info-is-local.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-is-local.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the resource is local</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-exists" role="function">
<title>gtk_recent_info_exists&#160;()</title>
<indexterm zone="gtk-recent-info-exists"><primary>gtk_recent_info_exists</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_exists (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info</parameter>);</programlisting>
<para>Checks whether the resource pointed by <parameter>info</parameter>
 still exists.
At the moment this check is done only on resources pointing
to local files.</para>
<refsect3 id="gtk-recent-info-exists.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-exists.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the resource exists</para>
</refsect3></refsect2>
<refsect2 id="gtk-recent-info-match" role="function">
<title>gtk_recent_info_match&#160;()</title>
<indexterm zone="gtk-recent-info-match"><primary>gtk_recent_info_match</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_recent_info_match (<parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info_a</parameter>,
                       <parameter><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> *info_b</parameter>);</programlisting>
<para>Checks whether two <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> point to the same resource.</para>
<refsect3 id="gtk-recent-info-match.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>info_a</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>info_b</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-recent-info-match.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if both <link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> point to the same
resource, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise</para>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkRecentManager.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkRecentManager-struct" role="struct">
<title>struct GtkRecentManager</title>
<indexterm zone="GtkRecentManager-struct"><primary>GtkRecentManager</primary></indexterm>
<programlisting language="C">struct GtkRecentManager;</programlisting>
<para><link linkend="GtkRecentManager-struct"><type>GtkRecentManager</type></link> contains only private data
and should be accessed using the provided API.</para>
</refsect2>
<refsect2 id="GtkRecentInfo" role="struct">
<title>GtkRecentInfo</title>
<indexterm zone="GtkRecentInfo"><primary>GtkRecentInfo</primary></indexterm>
<programlisting language="C">typedef struct _GtkRecentInfo GtkRecentInfo;</programlisting>
<para><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> contains private data only, and should be accessed using the
provided API.</para>
<para><link linkend="GtkRecentInfo"><type>GtkRecentInfo</type></link> contains all the meta-data
associated with an entry in the recently used files list.</para>
</refsect2>
<refsect2 id="GtkRecentData" role="struct">
<title>struct GtkRecentData</title>
<indexterm zone="GtkRecentData"><primary>GtkRecentData</primary></indexterm>
<programlisting language="C">struct GtkRecentData {
  gchar *display_name;
  gchar *description;

  gchar *mime_type;

  gchar *app_name;
  gchar *app_exec;

  gchar **groups;

  gboolean is_private;
};
</programlisting>
<para>Meta-data to be passed to <link linkend="gtk-recent-manager-add-full"><function>gtk_recent_manager_add_full()</function></link> when
registering a recently used resource.</para>
<refsect3 id="GtkRecentData.members" role="struct_members">
<title>Members</title>
<informaltable role="struct_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="struct_members_name" colwidth="300px"/>
<colspec colname="struct_members_description"/>
<colspec colname="struct_members_annotations" colwidth="200px"/>
<tbody>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkRecentData.display-name">display_name</structfield>;</para></entry>
<entry role="struct_member_description"><para>a UTF-8 encoded string, containing the name of the recently
used resource to be displayed, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>;</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkRecentData.description">description</structfield>;</para></entry>
<entry role="struct_member_description"><para>a UTF-8 encoded string, containing a short description of
the resource, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>;</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkRecentData.mime-type">mime_type</structfield>;</para></entry>
<entry role="struct_member_description"><para>the MIME type of the resource;</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkRecentData.app-name">app_name</structfield>;</para></entry>
<entry role="struct_member_description"><para>the name of the application that is registering this recently
used resource;</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkRecentData.app-exec">app_exec</structfield>;</para></entry>
<entry role="struct_member_description"><para>command line used to launch this resource; may contain the
“%f” and “%u” escape characters which will be expanded
to the resource file path and URI respectively when the command line
is retrieved;</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;**<structfield id="GtkRecentData.groups">groups</structfield>;</para></entry>
<entry role="struct_member_description"><para>a vector of strings containing
groups names;. </para></entry>
<entry role="struct_member_annotations"><emphasis role="annotation">[<acronym>array</acronym> zero-terminated=1]</emphasis></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gboolean"><type>gboolean</type></link>&#160;<structfield id="GtkRecentData.is-private">is_private</structfield>;</para></entry>
<entry role="struct_member_description"><para>whether this resource should be displayed only by the
applications that have registered it or not.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3>
</refsect2>
<refsect2 id="GTK-RECENT-MANAGER-ERROR:CAPS" role="macro">
<title>GTK_RECENT_MANAGER_ERROR</title>
<indexterm zone="GTK-RECENT-MANAGER-ERROR:CAPS"><primary>GTK_RECENT_MANAGER_ERROR</primary></indexterm>
<programlisting language="C">#define GTK_RECENT_MANAGER_ERROR&#160;(gtk_recent_manager_error_quark ())
</programlisting>
<para>The <link linkend="GError"><type>GError</type></link> domain for <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> errors.</para>
</refsect2>
<refsect2 id="GtkRecentManagerError" role="enum">
<title>enum GtkRecentManagerError</title>
<indexterm zone="GtkRecentManagerError"><primary>GtkRecentManagerError</primary></indexterm>
<para>Error codes for <link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> operations</para>
<refsect3 id="GtkRecentManagerError.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-NOT-FOUND:CAPS">GTK_RECENT_MANAGER_ERROR_NOT_FOUND</para></entry>
<entry role="enum_member_description"><para>the URI specified does not exists in
the recently used resources list.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-INVALID-URI:CAPS">GTK_RECENT_MANAGER_ERROR_INVALID_URI</para></entry>
<entry role="enum_member_description"><para>the URI specified is not valid.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-INVALID-ENCODING:CAPS">GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING</para></entry>
<entry role="enum_member_description"><para>the supplied string is not
UTF-8 encoded.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-NOT-REGISTERED:CAPS">GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED</para></entry>
<entry role="enum_member_description"><para>no application has registered
the specified item.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-READ:CAPS">GTK_RECENT_MANAGER_ERROR_READ</para></entry>
<entry role="enum_member_description"><para>failure while reading the recently used
resources file.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-WRITE:CAPS">GTK_RECENT_MANAGER_ERROR_WRITE</para></entry>
<entry role="enum_member_description"><para>failure while writing the recently used
resources file.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-RECENT-MANAGER-ERROR-UNKNOWN:CAPS">GTK_RECENT_MANAGER_ERROR_UNKNOWN</para></entry>
<entry role="enum_member_description"><para>unspecified error.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkRecentManager.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkRecentManager--filename" role="property"><title>The <literal>“filename”</literal> property</title>
<indexterm zone="GtkRecentManager--filename"><primary>GtkRecentManager:filename</primary></indexterm>
<programlisting>  “filename”                 <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The full path to the file to be used to store and read the
recently used resources list</para>
<para>Owner: GtkRecentManager</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkRecentManager--size" role="property"><title>The <literal>“size”</literal> property</title>
<indexterm zone="GtkRecentManager--size"><primary>GtkRecentManager:size</primary></indexterm>
<programlisting>  “size”                     <link linkend="gint"><type>gint</type></link></programlisting>
<para>The size of the recently used resources list.</para>
<para>Owner: GtkRecentManager</para>
<para>Flags: Read</para>
<para>Allowed values: &gt;= -1</para>
<para>Default value: 0</para>
</refsect2>

</refsect1>
<refsect1 id="GtkRecentManager.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkRecentManager-changed" role="signal"><title>The <literal>“changed”</literal> signal</title>
<indexterm zone="GtkRecentManager-changed"><primary>GtkRecentManager::changed</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkRecentManager"><type>GtkRecentManager</type></link> *recent_manager,
               <link linkend="gpointer"><type>gpointer</type></link>          user_data)</programlisting>
<para>Emitted when the current recently used resources manager changes
its contents, either by calling <link linkend="gtk-recent-manager-add-item"><function>gtk_recent_manager_add_item()</function></link> or
by another application.</para>
<refsect3 id="GtkRecentManager-changed.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>recent_manager</para></entry>
<entry role="parameter_description"><para>the recent manager</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-FIRST:CAPS">Run First</link></para>
</refsect2>
</refsect1>
<refsect1 id="GtkRecentManager.see-also">
<title>See Also</title>
<para><link linkend="GBookmarkFile"><type>GBookmarkFile</type></link>, <link linkend="GtkSettings"><type>GtkSettings</type></link>, <link linkend="GtkRecentChooser"><type>GtkRecentChooser</type></link></para>

</refsect1>

</refentry>
