1
<refentry id="libxfce4util-Desktop-entries">
3
<refentrytitle role="top_of_page" id="libxfce4util-Desktop-entries.top_of_page">XfceDesktopEntry</refentrytitle>
4
<manvolnum>3</manvolnum>
5
<refmiscinfo>LIBXFCE4UTIL Library</refmiscinfo>
9
<refname>XfceDesktopEntry</refname>
10
<refpurpose>A GObject that wraps a .desktop file.</refpurpose>
11
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
14
<refsynopsisdiv id="libxfce4util-Desktop-entries.synopsis" role="synopsis">
15
<title role="synopsis.title">Synopsis</title>
16
<anchor id="XfceDesktopEntry"/>
19
#include <libxfce4util/libxfce4util.h>
21
<link linkend="XfceDesktopEntry-struct">XfceDesktopEntry</link>;
22
<link linkend="XfceDesktopEntry">XfceDesktopEntry</link>* <link linkend="xfce-desktop-entry-new">xfce_desktop_entry_new</link> (const <link linkend="gchar">gchar</link> *file,
23
const <link linkend="gchar">gchar</link> **categories,
24
<link linkend="gint">gint</link> num_categories);
25
<link linkend="XfceDesktopEntry">XfceDesktopEntry</link>* <link linkend="xfce-desktop-entry-new-from-data">xfce_desktop_entry_new_from_data</link> (const <link linkend="gchar">gchar</link> *data,
26
const <link linkend="gchar">gchar</link> **categories,
27
<link linkend="gint">gint</link> num_categories);
28
const <link linkend="gchar">gchar</link>* <link linkend="xfce-desktop-entry-get-file">xfce_desktop_entry_get_file</link> (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry);
29
<link linkend="gboolean">gboolean</link> <link linkend="xfce-desktop-entry-get-string">xfce_desktop_entry_get_string</link> (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
30
const <link linkend="gchar">gchar</link> *key,
31
<link linkend="gboolean">gboolean</link> translated,
32
<link linkend="gchar">gchar</link> **value_return);
33
<link linkend="gboolean">gboolean</link> <link linkend="xfce-desktop-entry-get-int">xfce_desktop_entry_get_int</link> (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
34
const <link linkend="gchar">gchar</link> *key,
35
<link linkend="gint">gint</link> *value_return);
36
<link linkend="gboolean">gboolean</link> <link linkend="xfce-desktop-entry-has-translated-entry">xfce_desktop_entry_has_translated_entry</link>
37
(<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
38
const <link linkend="gchar">gchar</link> *key);
42
<refsect1 id="libxfce4util-Desktop-entries.object-hierarchy" role="object_hierarchy">
43
<title role="object_hierarchy.title">Object Hierarchy</title>
45
<link linkend="GObject">GObject</link>
58
<refsect1 id="libxfce4util-Desktop-entries.description" role="desc">
59
<title role="desc.title">Description</title>
61
XfceDesktopEntry is a wrapper for a so-called desktop entry file. The
62
desktop entry format is defined on <ulink
63
url="http://www.freedesktop.org/">Freedesktop.org</ulink>.
67
<refsect1 id="libxfce4util-Desktop-entries.details" role="details">
68
<title role="details.title">Details</title>
69
<refsect2 id="XfceDesktopEntry-struct" role="struct">
70
<title>XfceDesktopEntry</title>
71
<indexterm zone="XfceDesktopEntry-struct"><primary>XfceDesktopEntry</primary></indexterm><programlisting>typedef struct _XfceDesktopEntry XfceDesktopEntry;</programlisting>
73
All the fields in the XfceDesktopEntry structure are private to the
74
XfceDesktopEntry implementation and should never be accessed directly.
75
Instead, you should use the functions listed below.
77
<refsect2 id="xfce-desktop-entry-new" role="function" condition="since:4.2">
78
<title>xfce_desktop_entry_new ()</title>
79
<indexterm zone="xfce-desktop-entry-new" role="4.2"><primary>xfce_desktop_entry_new</primary></indexterm><programlisting><link linkend="XfceDesktopEntry">XfceDesktopEntry</link>* xfce_desktop_entry_new (const <link linkend="gchar">gchar</link> *file,
80
const <link linkend="gchar">gchar</link> **categories,
81
<link linkend="gint">gint</link> num_categories);</programlisting>
83
Create a new <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link> object from a desktop entry stored in a file on disk.
86
The caller is responsible to free the returned object (if any) using
87
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.</para>
90
</para><variablelist role="params">
91
<varlistentry><term><parameter>file</parameter> :</term>
92
<listitem><simpara> full path to the desktop entry file to use.
93
</simpara></listitem></varlistentry>
94
<varlistentry><term><parameter>categories</parameter> :</term>
95
<listitem><simpara> array of categories, not necessarily NULL terminated.
96
</simpara></listitem></varlistentry>
97
<varlistentry><term><parameter>num_categories</parameter> :</term>
98
<listitem><simpara> number of items in <parameter>categories</parameter>.
99
</simpara></listitem></varlistentry>
100
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> newly created <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link> or NULL if something goes wrong.
102
</simpara></listitem></varlistentry>
103
</variablelist><para role="since">Since 4.2
105
<refsect2 id="xfce-desktop-entry-new-from-data" role="function" condition="since:4.2">
106
<title>xfce_desktop_entry_new_from_data ()</title>
107
<indexterm zone="xfce-desktop-entry-new-from-data" role="4.2"><primary>xfce_desktop_entry_new_from_data</primary></indexterm><programlisting><link linkend="XfceDesktopEntry">XfceDesktopEntry</link>* xfce_desktop_entry_new_from_data (const <link linkend="gchar">gchar</link> *data,
108
const <link linkend="gchar">gchar</link> **categories,
109
<link linkend="gint">gint</link> num_categories);</programlisting>
111
Create a new <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link> object from a desktop entry stored in memory.
114
The caller is responsible to free the returned object (if any) using
115
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.</para>
118
</para><variablelist role="params">
119
<varlistentry><term><parameter>data</parameter> :</term>
120
<listitem><simpara> pointer to the desktop entry inline data.
121
</simpara></listitem></varlistentry>
122
<varlistentry><term><parameter>categories</parameter> :</term>
123
<listitem><simpara> array of categories, not necessarily NULL terminated.
124
</simpara></listitem></varlistentry>
125
<varlistentry><term><parameter>num_categories</parameter> :</term>
126
<listitem><simpara> number of items in <parameter>categories</parameter>.
127
</simpara></listitem></varlistentry>
128
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> newly created <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link> or NULL if something goes wrong.
130
</simpara></listitem></varlistentry>
131
</variablelist><para role="since">Since 4.2
133
<refsect2 id="xfce-desktop-entry-get-file" role="function" condition="since:4.2">
134
<title>xfce_desktop_entry_get_file ()</title>
135
<indexterm zone="xfce-desktop-entry-get-file" role="4.2"><primary>xfce_desktop_entry_get_file</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>* xfce_desktop_entry_get_file (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry);</programlisting>
137
Obtain the path to the desktop entry file associated with the
138
<link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link>.</para>
141
</para><variablelist role="params">
142
<varlistentry><term><parameter>desktop_entry</parameter> :</term>
143
<listitem><simpara> an <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link>.
144
</simpara></listitem></varlistentry>
145
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> path of the desktop entry file used to create <parameter>desktop_entry</parameter>. The
146
return value should be considered read-only and must not be freed
148
</simpara></listitem></varlistentry>
149
</variablelist><para role="since">Since 4.2
151
<refsect2 id="xfce-desktop-entry-get-string" role="function" condition="since:4.2">
152
<title>xfce_desktop_entry_get_string ()</title>
153
<indexterm zone="xfce-desktop-entry-get-string" role="4.2"><primary>xfce_desktop_entry_get_string</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> xfce_desktop_entry_get_string (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
154
const <link linkend="gchar">gchar</link> *key,
155
<link linkend="gboolean">gboolean</link> translated,
156
<link linkend="gchar">gchar</link> **value_return);</programlisting>
158
Finds the value for <parameter>key</parameter>. When <parameter>translated</parameter> is TRUE the function will use
159
the translated value (using the current locale settings) if available or
160
the untranslated value if no translation can be found.</para>
163
</para><variablelist role="params">
164
<varlistentry><term><parameter>desktop_entry</parameter> :</term>
165
<listitem><simpara> an <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link>
166
</simpara></listitem></varlistentry>
167
<varlistentry><term><parameter>key</parameter> :</term>
168
<listitem><simpara> category to find value for.
169
</simpara></listitem></varlistentry>
170
<varlistentry><term><parameter>translated</parameter> :</term>
171
<listitem><simpara> set to TRUE if the translated value is preferred.
172
</simpara></listitem></varlistentry>
173
<varlistentry><term><parameter>value_return</parameter> :</term>
174
<listitem><simpara> location for the value, which will be newly allocated.
175
</simpara></listitem></varlistentry>
176
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE on success, FALSE on failure. <parameter>value_return</parameter> must be freed.
178
</simpara></listitem></varlistentry>
179
</variablelist><para role="since">Since 4.2
181
<refsect2 id="xfce-desktop-entry-get-int" role="function" condition="since:4.2">
182
<title>xfce_desktop_entry_get_int ()</title>
183
<indexterm zone="xfce-desktop-entry-get-int" role="4.2"><primary>xfce_desktop_entry_get_int</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> xfce_desktop_entry_get_int (<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
184
const <link linkend="gchar">gchar</link> *key,
185
<link linkend="gint">gint</link> *value_return);</programlisting>
187
Gets a value from <parameter>desktop_entry</parameter> as integer. Therefore finds the value for
188
<parameter>key</parameter> and returns its integer representation.</para>
191
</para><variablelist role="params">
192
<varlistentry><term><parameter>desktop_entry</parameter> :</term>
193
<listitem><simpara> an <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link>.
194
</simpara></listitem></varlistentry>
195
<varlistentry><term><parameter>key</parameter> :</term>
196
<listitem><simpara> category to find value for.
197
</simpara></listitem></varlistentry>
198
<varlistentry><term><parameter>value_return</parameter> :</term>
199
<listitem><simpara> location for the value.
200
</simpara></listitem></varlistentry>
201
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE on success, FALSE on failure.
203
</simpara></listitem></varlistentry>
204
</variablelist><para role="since">Since 4.2
206
<refsect2 id="xfce-desktop-entry-has-translated-entry" role="function" condition="since:4.3">
207
<title>xfce_desktop_entry_has_translated_entry ()</title>
208
<indexterm zone="xfce-desktop-entry-has-translated-entry" role="4.3"><primary>xfce_desktop_entry_has_translated_entry</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> xfce_desktop_entry_has_translated_entry
209
(<link linkend="XfceDesktopEntry">XfceDesktopEntry</link> *desktop_entry,
210
const <link linkend="gchar">gchar</link> *key);</programlisting>
212
Checks to see if <parameter>desktop_entry</parameter> has a value for <parameter>key</parameter> translated into
213
the current locale.</para>
216
</para><variablelist role="params">
217
<varlistentry><term><parameter>desktop_entry</parameter> :</term>
218
<listitem><simpara> an <link linkend="XfceDesktopEntry"><type>XfceDesktopEntry</type></link>.
219
</simpara></listitem></varlistentry>
220
<varlistentry><term><parameter>key</parameter> :</term>
221
<listitem><simpara> the key to check.
222
</simpara></listitem></varlistentry>
223
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if there is a translated key, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise.
225
</simpara></listitem></varlistentry>
226
</variablelist><para role="since">Since 4.3