Update to version 2.33.1
[profile/ivi/glib2.git] / docs / reference / gio / html / gio-Desktop-file-based-GAppInfo.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>GDesktopAppInfo</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GIO Reference Manual">
8 <link rel="up" href="types.html" title="File types and applications">
9 <link rel="prev" href="GAppInfo.html" title="GAppInfo">
10 <link rel="next" href="volume_mon.html" title="Volumes and Drives">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="GAppInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="types.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GIO Reference Manual</th>
21 <td><a accesskey="n" href="volume_mon.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gio-Desktop-file-based-GAppInfo.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gio-Desktop-file-based-GAppInfo.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gio-Desktop-file-based-GAppInfo.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gio-Desktop-file-based-GAppInfo.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gio-Desktop-file-based-GAppInfo.properties" class="shortcut">Properties</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="gio-Desktop-file-based-GAppInfo"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="gio-Desktop-file-based-GAppInfo.top_of_page"></a>GDesktopAppInfo</span></h2>
40 <p>GDesktopAppInfo — Application information from desktop files</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="gio-Desktop-file-based-GAppInfo.synopsis"></a><h2>Synopsis</h2>
46 <a name="GDesktopAppInfo"></a><pre class="synopsis">
47 #include &lt;gio/gdesktopappinfo.h&gt;
48
49                     <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo-struct" title="GDesktopAppInfo">GDesktopAppInfo</a>;
50 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-new-from-filename" title="g_desktop_app_info_new_from_filename ()">g_desktop_app_info_new_from_filename</a>
51                                                         (<em class="parameter"><code>const <span class="type">char</span> *filename</code></em>);
52 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-new-from-keyfile" title="g_desktop_app_info_new_from_keyfile ()">g_desktop_app_info_new_from_keyfile</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *key_file</code></em>);
53 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-new" title="g_desktop_app_info_new ()">g_desktop_app_info_new</a>              (<em class="parameter"><code>const <span class="type">char</span> *desktop_id</code></em>);
54 const <span class="returnvalue">char</span> *        <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-filename" title="g_desktop_app_info_get_filename ()">g_desktop_app_info_get_filename</a>     (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
55 <a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-is-hidden" title="g_desktop_app_info_get_is_hidden ()">g_desktop_app_info_get_is_hidden</a>    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
56 <a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-nodisplay" title="g_desktop_app_info_get_nodisplay ()">g_desktop_app_info_get_nodisplay</a>    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
57 <a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-show-in" title="g_desktop_app_info_get_show_in ()">g_desktop_app_info_get_show_in</a>      (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>,
58                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *desktop_env</code></em>);
59 const <span class="returnvalue">char</span> *        <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-generic-name" title="g_desktop_app_info_get_generic_name ()">g_desktop_app_info_get_generic_name</a> (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
60 const <span class="returnvalue">char</span> *        <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-categories" title="g_desktop_app_info_get_categories ()">g_desktop_app_info_get_categories</a>   (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
61 const <span class="returnvalue">char</span> * const * <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-keywords" title="g_desktop_app_info_get_keywords ()">g_desktop_app_info_get_keywords</a>    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
62 const <span class="returnvalue">char</span> *        <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-startup-wm-class" title="g_desktop_app_info_get_startup_wm_class ()">g_desktop_app_info_get_startup_wm_class</a>
63                                                         (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);
64 <span class="returnvalue">void</span>                <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-set-desktop-env" title="g_desktop_app_info_set_desktop_env ()">g_desktop_app_info_set_desktop_env</a>  (<em class="parameter"><code>const <span class="type">char</span> *desktop_env</code></em>);
65 <span class="returnvalue">void</span>                (<a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppLaunchCallback" title="GDesktopAppLaunchCallback ()">*GDesktopAppLaunchCallback</a>)        (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *appinfo</code></em>,
66                                                          <em class="parameter"><code><a href="./../glib/glib/glib-The-Main-Event-Loop.html#GPid"><span class="type">GPid</span></a> pid</code></em>,
67                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
68 <a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-launch-uris-as-manager" title="g_desktop_app_info_launch_uris_as_manager ()">g_desktop_app_info_launch_uris_as_manager</a>
69                                                         (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *appinfo</code></em>,
70                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *uris</code></em>,
71                                                          <em class="parameter"><code><a class="link" href="GAppInfo.html#GAppLaunchContext"><span class="type">GAppLaunchContext</span></a> *launch_context</code></em>,
72                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnFlags"><span class="type">GSpawnFlags</span></a> spawn_flags</code></em>,
73                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnChildSetupFunc"><span class="type">GSpawnChildSetupFunc</span></a> user_setup</code></em>,
74                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_setup_data</code></em>,
75                                                          <em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppLaunchCallback" title="GDesktopAppLaunchCallback ()"><span class="type">GDesktopAppLaunchCallback</span></a> pid_callback</code></em>,
76                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> pid_callback_data</code></em>,
77                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
78 </pre>
79 </div>
80 <div class="refsect1">
81 <a name="gio-Desktop-file-based-GAppInfo.object-hierarchy"></a><h2>Object Hierarchy</h2>
82 <pre class="synopsis">
83   <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
84    +----GDesktopAppInfo
85 </pre>
86 </div>
87 <div class="refsect1">
88 <a name="gio-Desktop-file-based-GAppInfo.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
89 <p>
90 GDesktopAppInfo implements
91  <a class="link" href="GAppInfo.html" title="GAppInfo">GAppInfo</a>.</p>
92 </div>
93 <div class="refsect1">
94 <a name="gio-Desktop-file-based-GAppInfo.properties"></a><h2>Properties</h2>
95 <pre class="synopsis">
96   "<a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo--filename" title='The "filename" property'>filename</a>"                 <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only
97 </pre>
98 </div>
99 <div class="refsect1">
100 <a name="gio-Desktop-file-based-GAppInfo.description"></a><h2>Description</h2>
101 <p>
102 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> is an implementation of <a class="link" href="GAppInfo.html" title="GAppInfo"><span class="type">GAppInfo</span></a> based on
103 desktop files.
104 </p>
105 <p>
106 Note that <code class="filename">&lt;gio/gdesktopappinfo.h&gt;</code> belongs to
107 the UNIX-specific GIO interfaces, thus you have to use the
108 <code class="filename">gio-unix-2.0.pc</code> pkg-config file when using it.
109 </p>
110 </div>
111 <div class="refsect1">
112 <a name="gio-Desktop-file-based-GAppInfo.details"></a><h2>Details</h2>
113 <div class="refsect2">
114 <a name="GDesktopAppInfo-struct"></a><h3>GDesktopAppInfo</h3>
115 <pre class="programlisting">typedef struct _GDesktopAppInfo GDesktopAppInfo;</pre>
116 <p>
117 Information about an installed application from a desktop file.
118 </p>
119 </div>
120 <hr>
121 <div class="refsect2">
122 <a name="g-desktop-app-info-new-from-filename"></a><h3>g_desktop_app_info_new_from_filename ()</h3>
123 <pre class="programlisting"><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   g_desktop_app_info_new_from_filename
124                                                         (<em class="parameter"><code>const <span class="type">char</span> *filename</code></em>);</pre>
125 <p>
126 Creates a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>.
127 </p>
128 <div class="variablelist"><table border="0">
129 <col align="left" valign="top">
130 <tbody>
131 <tr>
132 <td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
133 <td>the path of a desktop file, in the GLib filename encoding</td>
134 </tr>
135 <tr>
136 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
137 <td>a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.</td>
138 </tr>
139 </tbody>
140 </table></div>
141 </div>
142 <hr>
143 <div class="refsect2">
144 <a name="g-desktop-app-info-new-from-keyfile"></a><h3>g_desktop_app_info_new_from_keyfile ()</h3>
145 <pre class="programlisting"><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   g_desktop_app_info_new_from_keyfile (<em class="parameter"><code><a href="./../glib/glib/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *key_file</code></em>);</pre>
146 <p>
147 Creates a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>.
148 </p>
149 <div class="variablelist"><table border="0">
150 <col align="left" valign="top">
151 <tbody>
152 <tr>
153 <td><p><span class="term"><em class="parameter"><code>key_file</code></em> :</span></p></td>
154 <td>an opened <a href="./../glib/glib/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a>
155 </td>
156 </tr>
157 <tr>
158 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
159 <td>a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.</td>
160 </tr>
161 </tbody>
162 </table></div>
163 <p class="since">Since 2.18</p>
164 </div>
165 <hr>
166 <div class="refsect2">
167 <a name="g-desktop-app-info-new"></a><h3>g_desktop_app_info_new ()</h3>
168 <pre class="programlisting"><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="returnvalue">GDesktopAppInfo</span></a> *   g_desktop_app_info_new              (<em class="parameter"><code>const <span class="type">char</span> *desktop_id</code></em>);</pre>
169 <p>
170 Creates a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> based on a desktop file id. 
171 </p>
172 <p>
173 A desktop file id is the basename of the desktop file, including the 
174 .desktop extension. GIO is looking for a desktop file with this name 
175 in the <code class="filename">applications</code> subdirectories of the XDG data
176 directories (i.e. the directories specified in the 
177 <code class="envar">XDG_DATA_HOME</code> and <code class="envar">XDG_DATA_DIRS</code> environment 
178 variables). GIO also supports the prefix-to-subdirectory mapping that is
179 described in the <a class="ulink" href="http://standards.freedesktop.org/menu-spec/latest/" target="_top">Menu Spec</a> 
180 (i.e. a desktop id of kde-foo.desktop will match
181 <code class="filename">/usr/share/applications/kde/foo.desktop</code>).
182 </p>
183 <div class="variablelist"><table border="0">
184 <col align="left" valign="top">
185 <tbody>
186 <tr>
187 <td><p><span class="term"><em class="parameter"><code>desktop_id</code></em> :</span></p></td>
188 <td>the desktop file id</td>
189 </tr>
190 <tr>
191 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
192 <td>a new <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no desktop file with that id</td>
193 </tr>
194 </tbody>
195 </table></div>
196 </div>
197 <hr>
198 <div class="refsect2">
199 <a name="g-desktop-app-info-get-filename"></a><h3>g_desktop_app_info_get_filename ()</h3>
200 <pre class="programlisting">const <span class="returnvalue">char</span> *        g_desktop_app_info_get_filename     (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
201 <p>
202 When <em class="parameter"><code>info</code></em> was created from a known filename, return it.  In some
203 situations such as the <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> returned from
204 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-new-from-keyfile" title="g_desktop_app_info_new_from_keyfile ()"><code class="function">g_desktop_app_info_new_from_keyfile()</code></a>, this function will return <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
205 </p>
206 <div class="variablelist"><table border="0">
207 <col align="left" valign="top">
208 <tbody>
209 <tr>
210 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
211 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
212 </td>
213 </tr>
214 <tr>
215 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
216 <td>The full path to the file for <em class="parameter"><code>info</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not known.</td>
217 </tr>
218 </tbody>
219 </table></div>
220 <p class="since">Since 2.24</p>
221 </div>
222 <hr>
223 <div class="refsect2">
224 <a name="g-desktop-app-info-get-is-hidden"></a><h3>g_desktop_app_info_get_is_hidden ()</h3>
225 <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_desktop_app_info_get_is_hidden    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
226 <p>
227 A desktop file is hidden if the Hidden key in it is
228 set to True.
229 </p>
230 <div class="variablelist"><table border="0">
231 <col align="left" valign="top">
232 <tbody>
233 <tr>
234 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
235 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>.</td>
236 </tr>
237 <tr>
238 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
239 <td>
240 <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if hidden, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
241 </tr>
242 </tbody>
243 </table></div>
244 </div>
245 <hr>
246 <div class="refsect2">
247 <a name="g-desktop-app-info-get-nodisplay"></a><h3>g_desktop_app_info_get_nodisplay ()</h3>
248 <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_desktop_app_info_get_nodisplay    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
249 <p>
250 Gets the value of the NoDisplay key, which helps determine if the
251 application info should be shown in menus. See
252 <a href="./../glib/glib/glib-Key-value-file-parser.html#G-KEY-FILE-DESKTOP-KEY-NO-DISPLAY:CAPS"><span class="type">G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY</span></a> and <a class="link" href="GAppInfo.html#g-app-info-should-show" title="g_app_info_should_show ()"><code class="function">g_app_info_should_show()</code></a>.
253 </p>
254 <div class="variablelist"><table border="0">
255 <col align="left" valign="top">
256 <tbody>
257 <tr>
258 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
259 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
260 </td>
261 </tr>
262 <tr>
263 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
264 <td>The value of the NoDisplay key</td>
265 </tr>
266 </tbody>
267 </table></div>
268 <p class="since">Since 2.30</p>
269 </div>
270 <hr>
271 <div class="refsect2">
272 <a name="g-desktop-app-info-get-show-in"></a><h3>g_desktop_app_info_get_show_in ()</h3>
273 <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_desktop_app_info_get_show_in      (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>,
274                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *desktop_env</code></em>);</pre>
275 <p>
276 Checks if the application info should be shown in menus that list available
277 applications for a specific name of the desktop, based on the
278 <code class="literal">OnlyShowIn</code> and <code class="literal">NotShowIn</code> keys.
279 </p>
280 <p>
281 If <em class="parameter"><code>desktop_env</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the name of the desktop set with
282 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-set-desktop-env" title="g_desktop_app_info_set_desktop_env ()"><code class="function">g_desktop_app_info_set_desktop_env()</code></a> is used.
283 </p>
284 <p>
285 Note that <a class="link" href="GAppInfo.html#g-app-info-should-show" title="g_app_info_should_show ()"><code class="function">g_app_info_should_show()</code></a> for <em class="parameter"><code>info</code></em> will include this check (with
286 <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for <em class="parameter"><code>desktop_env</code></em>) as well as additional checks.
287 </p>
288 <div class="variablelist"><table border="0">
289 <col align="left" valign="top">
290 <tbody>
291 <tr>
292 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
293 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
294 </td>
295 </tr>
296 <tr>
297 <td><p><span class="term"><em class="parameter"><code>desktop_env</code></em> :</span></p></td>
298 <td>a string specifying a desktop name</td>
299 </tr>
300 <tr>
301 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
302 <td>
303 <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>info</code></em> should be shown in <em class="parameter"><code>desktop_env</code></em> according to the
304 <code class="literal">OnlyShowIn</code> and <code class="literal">NotShowIn</code> keys, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
305 otherwise.</td>
306 </tr>
307 </tbody>
308 </table></div>
309 <p class="since">Since 2.30</p>
310 </div>
311 <hr>
312 <div class="refsect2">
313 <a name="g-desktop-app-info-get-generic-name"></a><h3>g_desktop_app_info_get_generic_name ()</h3>
314 <pre class="programlisting">const <span class="returnvalue">char</span> *        g_desktop_app_info_get_generic_name (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
315 <p>
316 Gets the generic name from the destkop file.
317 </p>
318 <div class="variablelist"><table border="0">
319 <col align="left" valign="top">
320 <tbody>
321 <tr>
322 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
323 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
324 </td>
325 </tr>
326 <tr>
327 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
328 <td>The value of the GenericName key</td>
329 </tr>
330 </tbody>
331 </table></div>
332 </div>
333 <hr>
334 <div class="refsect2">
335 <a name="g-desktop-app-info-get-categories"></a><h3>g_desktop_app_info_get_categories ()</h3>
336 <pre class="programlisting">const <span class="returnvalue">char</span> *        g_desktop_app_info_get_categories   (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
337 <p>
338 Gets the categories from the desktop file.
339 </p>
340 <div class="variablelist"><table border="0">
341 <col align="left" valign="top">
342 <tbody>
343 <tr>
344 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
345 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
346 </td>
347 </tr>
348 <tr>
349 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
350 <td>The unparsed Categories key from the desktop file;
351 i.e. no attempt is made to split it by ';' or validate it.</td>
352 </tr>
353 </tbody>
354 </table></div>
355 </div>
356 <hr>
357 <div class="refsect2">
358 <a name="g-desktop-app-info-get-keywords"></a><h3>g_desktop_app_info_get_keywords ()</h3>
359 <pre class="programlisting">const <span class="returnvalue">char</span> * const * g_desktop_app_info_get_keywords    (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
360 <p>
361 Gets the keywords from the desktop file.
362 </p>
363 <div class="variablelist"><table border="0">
364 <col align="left" valign="top">
365 <tbody>
366 <tr>
367 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
368 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
369 </td>
370 </tr>
371 <tr>
372 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
373 <td>The value of the Keywords key. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
374 </td>
375 </tr>
376 </tbody>
377 </table></div>
378 <p class="since">Since 2.32</p>
379 </div>
380 <hr>
381 <div class="refsect2">
382 <a name="g-desktop-app-info-get-startup-wm-class"></a><h3>g_desktop_app_info_get_startup_wm_class ()</h3>
383 <pre class="programlisting">const <span class="returnvalue">char</span> *        g_desktop_app_info_get_startup_wm_class
384                                                         (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *info</code></em>);</pre>
385 <p>
386 Retrieves the StartupWMClass field from <em class="parameter"><code>app_info</code></em>. This represents the
387 WM_CLASS property of the main window of the application, if launched through
388 <em class="parameter"><code>app_info</code></em>.
389 </p>
390 <div class="variablelist"><table border="0">
391 <col align="left" valign="top">
392 <tbody>
393 <tr>
394 <td><p><span class="term"><em class="parameter"><code>app_info</code></em> :</span></p></td>
395 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> that supports startup notify</td>
396 </tr>
397 <tr>
398 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
399 <td>the startup WM class, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is set
400 in the desktop file. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
401 </td>
402 </tr>
403 </tbody>
404 </table></div>
405 <p class="since">Since 2.34</p>
406 </div>
407 <hr>
408 <div class="refsect2">
409 <a name="g-desktop-app-info-set-desktop-env"></a><h3>g_desktop_app_info_set_desktop_env ()</h3>
410 <pre class="programlisting"><span class="returnvalue">void</span>                g_desktop_app_info_set_desktop_env  (<em class="parameter"><code>const <span class="type">char</span> *desktop_env</code></em>);</pre>
411 <p>
412 Sets the name of the desktop that the application is running in.
413 This is used by <a class="link" href="GAppInfo.html#g-app-info-should-show" title="g_app_info_should_show ()"><code class="function">g_app_info_should_show()</code></a> and
414 <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-get-show-in" title="g_desktop_app_info_get_show_in ()"><code class="function">g_desktop_app_info_get_show_in()</code></a> to evaluate the
415 <code class="literal">OnlyShowIn</code> and <code class="literal">NotShowIn</code>
416 desktop entry fields.
417 </p>
418 <p>
419 The <a class="ulink" href="http://standards.freedesktop.org/menu-spec/latest/" target="_top">Desktop
420 Menu specification</a> recognizes the following:
421 </p>
422 <table border="0" summary="Simple list" class="simplelist">
423 <tr><td>GNOME</td></tr>
424 <tr><td>KDE</td></tr>
425 <tr><td>ROX</td></tr>
426 <tr><td>XFCE</td></tr>
427 <tr><td>LXDE</td></tr>
428 <tr><td>Unity</td></tr>
429 <tr><td>Old</td></tr>
430 </table>
431 <p>
432 </p>
433 <p>
434 Should be called only once; subsequent calls are ignored.
435 </p>
436 <div class="variablelist"><table border="0">
437 <col align="left" valign="top">
438 <tbody><tr>
439 <td><p><span class="term"><em class="parameter"><code>desktop_env</code></em> :</span></p></td>
440 <td>a string specifying what desktop this is</td>
441 </tr></tbody>
442 </table></div>
443 </div>
444 <hr>
445 <div class="refsect2">
446 <a name="GDesktopAppLaunchCallback"></a><h3>GDesktopAppLaunchCallback ()</h3>
447 <pre class="programlisting"><span class="returnvalue">void</span>                (*GDesktopAppLaunchCallback)        (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *appinfo</code></em>,
448                                                          <em class="parameter"><code><a href="./../glib/glib/glib-The-Main-Event-Loop.html#GPid"><span class="type">GPid</span></a> pid</code></em>,
449                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
450 <p>
451 During invocation, <a class="link" href="gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-launch-uris-as-manager" title="g_desktop_app_info_launch_uris_as_manager ()"><code class="function">g_desktop_app_info_launch_uris_as_manager()</code></a> may
452 create one or more child processes.  This callback is invoked once
453 for each, providing the process ID.
454 </p>
455 <div class="variablelist"><table border="0">
456 <col align="left" valign="top">
457 <tbody>
458 <tr>
459 <td><p><span class="term"><em class="parameter"><code>appinfo</code></em> :</span></p></td>
460 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
461 </td>
462 </tr>
463 <tr>
464 <td><p><span class="term"><em class="parameter"><code>pid</code></em> :</span></p></td>
465 <td>Process identifier</td>
466 </tr>
467 <tr>
468 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
469 <td>User data</td>
470 </tr>
471 </tbody>
472 </table></div>
473 </div>
474 <hr>
475 <div class="refsect2">
476 <a name="g-desktop-app-info-launch-uris-as-manager"></a><h3>g_desktop_app_info_launch_uris_as_manager ()</h3>
477 <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_desktop_app_info_launch_uris_as_manager
478                                                         (<em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a> *appinfo</code></em>,
479                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *uris</code></em>,
480                                                          <em class="parameter"><code><a class="link" href="GAppInfo.html#GAppLaunchContext"><span class="type">GAppLaunchContext</span></a> *launch_context</code></em>,
481                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnFlags"><span class="type">GSpawnFlags</span></a> spawn_flags</code></em>,
482                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnChildSetupFunc"><span class="type">GSpawnChildSetupFunc</span></a> user_setup</code></em>,
483                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_setup_data</code></em>,
484                                                          <em class="parameter"><code><a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppLaunchCallback" title="GDesktopAppLaunchCallback ()"><span class="type">GDesktopAppLaunchCallback</span></a> pid_callback</code></em>,
485                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> pid_callback_data</code></em>,
486                                                          <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
487 <p>
488 This function performs the equivalent of <a class="link" href="GAppInfo.html#g-app-info-launch-uris" title="g_app_info_launch_uris ()"><code class="function">g_app_info_launch_uris()</code></a>,
489 but is intended primarily for operating system components that
490 launch applications.  Ordinary applications should use
491 <a class="link" href="GAppInfo.html#g-app-info-launch-uris" title="g_app_info_launch_uris ()"><code class="function">g_app_info_launch_uris()</code></a>.
492 </p>
493 <p>
494 In contrast to <a class="link" href="GAppInfo.html#g-app-info-launch-uris" title="g_app_info_launch_uris ()"><code class="function">g_app_info_launch_uris()</code></a>, all processes created will
495 always be run directly as children as if by the UNIX <code class="function">fork()</code>/<code class="function">exec()</code>
496 calls.
497 </p>
498 <p>
499 This guarantee allows additional control over the exact environment
500 of the child processes, which is provided via a setup function
501 <em class="parameter"><code>user_setup</code></em>, as well as the process identifier of each child process
502 via <em class="parameter"><code>pid_callback</code></em>. See <a href="./../glib/glib/glib-Spawning-Processes.html#g-spawn-async"><code class="function">g_spawn_async()</code></a> for more information about the
503 semantics of the <em class="parameter"><code>user_setup</code></em> function.
504 </p>
505 <div class="variablelist"><table border="0">
506 <col align="left" valign="top">
507 <tbody>
508 <tr>
509 <td><p><span class="term"><em class="parameter"><code>appinfo</code></em> :</span></p></td>
510 <td>a <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
511 </td>
512 </tr>
513 <tr>
514 <td><p><span class="term"><em class="parameter"><code>uris</code></em> :</span></p></td>
515 <td>List of URIs. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8]</span>
516 </td>
517 </tr>
518 <tr>
519 <td><p><span class="term"><em class="parameter"><code>launch_context</code></em> :</span></p></td>
520 <td>a <a class="link" href="GAppInfo.html#GAppLaunchContext"><span class="type">GAppLaunchContext</span></a>
521 </td>
522 </tr>
523 <tr>
524 <td><p><span class="term"><em class="parameter"><code>spawn_flags</code></em> :</span></p></td>
525 <td>
526 <a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnFlags"><span class="type">GSpawnFlags</span></a>, used for each process</td>
527 </tr>
528 <tr>
529 <td><p><span class="term"><em class="parameter"><code>user_setup</code></em> :</span></p></td>
530 <td>a <a href="./../glib/glib/glib-Spawning-Processes.html#GSpawnChildSetupFunc"><span class="type">GSpawnChildSetupFunc</span></a>, used once for
531 each process. <span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span>
532 </td>
533 </tr>
534 <tr>
535 <td><p><span class="term"><em class="parameter"><code>user_setup_data</code></em> :</span></p></td>
536 <td>User data for <em class="parameter"><code>user_setup</code></em>. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_setup]</span>
537 </td>
538 </tr>
539 <tr>
540 <td><p><span class="term"><em class="parameter"><code>pid_callback</code></em> :</span></p></td>
541 <td>Callback for child processes. <span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span>
542 </td>
543 </tr>
544 <tr>
545 <td><p><span class="term"><em class="parameter"><code>pid_callback_data</code></em> :</span></p></td>
546 <td>User data for <em class="parameter"><code>callback</code></em>. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> pid_callback]</span>
547 </td>
548 </tr>
549 <tr>
550 <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
551 <td>return location for a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
552 </td>
553 </tr>
554 <tr>
555 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
556 <td>
557 <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on successful launch, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
558 </tr>
559 </tbody>
560 </table></div>
561 </div>
562 </div>
563 <div class="refsect1">
564 <a name="gio-Desktop-file-based-GAppInfo.property-details"></a><h2>Property Details</h2>
565 <div class="refsect2">
566 <a name="GDesktopAppInfo--filename"></a><h3>The <code class="literal">"filename"</code> property</h3>
567 <pre class="programlisting">  "filename"                 <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only</pre>
568 <p>
569 The origin filename of this <a class="link" href="gio-Desktop-file-based-GAppInfo.html#GDesktopAppInfo"><span class="type">GDesktopAppInfo</span></a>
570 </p>
571 <p>Default value: NULL</p>
572 </div>
573 </div>
574 </div>
575 <div class="footer">
576 <hr>
577           Generated by GTK-Doc V1.18</div>
578 </body>
579 </html>