37
37
<th width="100%" align="center">GNOME Library Reference Manual</th>
38
38
<td><a accesskey="n" href="libgnome-gnome-init.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
40
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2682122" class="shortcut">Top</a>
40
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2477556" class="shortcut">Top</a>
42
<a href="#id2721995" class="shortcut">Description</a></nobr></td></tr>
42
<a href="#id2523495" class="shortcut">Description</a></nobr></td></tr>
44
44
<div class="refentry" lang="en">
45
45
<a name="libgnome-gnome-program"></a><div class="titlepage"></div>
46
46
<div class="refnamediv"><table width="100%"><tr>
49
<a name="id2682122"></a><span class="refentrytitle">gnome-program</span>
49
<a name="id2477556"></a><span class="refentrytitle">gnome-program</span>
51
51
<p>gnome-program — Initialize and retrieve information about a GNOME application.</p>
139
139
<div class="refsect1" lang="en">
140
<a name="id2721995"></a><h2>Description</h2>
140
<a name="id2523495"></a><h2>Description</h2>
145
145
<div class="refsect1" lang="en">
146
<a name="id2722009"></a><h2>Details</h2>
146
<a name="id2523509"></a><h2>Details</h2>
147
147
<div class="refsect2" lang="en">
148
<a name="id2722019"></a><h3>
148
<a name="id2523519"></a><h3>
149
149
<a name="GnomeFileDomain"></a>enum GnomeFileDomain</h3>
150
<a class="indexterm" name="id2722032"></a><pre class="programlisting">typedef enum {
150
<a class="indexterm" name="id2523532"></a><pre class="programlisting">typedef enum {
151
151
GNOME_FILE_DOMAIN_UNKNOWN = 0,
153
153
/* Gnome installed files */
182
182
<col align="left" valign="top">
185
<td><span class="term"><a name="GNOME-FILE-DOMAIN-UNKNOWN:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_UNKNOWN</code></span></td>
186
<span class="term"><a name="GNOME-FILE-DOMAIN-UNKNOWN:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_UNKNOWN</code></span></td>
186
187
<td>An unknown file domain (should never be used).
190
<td><span class="term"><a name="GNOME-FILE-DOMAIN-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_LIBDIR</code></span></td>
192
<span class="term"><a name="GNOME-FILE-DOMAIN-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_LIBDIR</code></span></td>
191
193
<td>Libraries in the main GNOME installation.
195
<td><span class="term"><a name="GNOME-FILE-DOMAIN-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_DATADIR</code></span></td>
198
<span class="term"><a name="GNOME-FILE-DOMAIN-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_DATADIR</code></span></td>
196
199
<td>Data files in the main GNOME installation.
200
<td><span class="term"><a name="GNOME-FILE-DOMAIN-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_SOUND</code></span></td>
204
<span class="term"><a name="GNOME-FILE-DOMAIN-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_SOUND</code></span></td>
201
205
<td>Sound files in the main GNOME installation.
205
<td><span class="term"><a name="GNOME-FILE-DOMAIN-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_PIXMAP</code></span></td>
210
<span class="term"><a name="GNOME-FILE-DOMAIN-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_PIXMAP</code></span></td>
206
211
<td>Pixmap files in the main GNOME installation.
210
<td><span class="term"><a name="GNOME-FILE-DOMAIN-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_CONFIG</code></span></td>
216
<span class="term"><a name="GNOME-FILE-DOMAIN-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_CONFIG</code></span></td>
211
217
<td>Config files in the main GNOME installation.
215
<td><span class="term"><a name="GNOME-FILE-DOMAIN-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_HELP</code></span></td>
222
<span class="term"><a name="GNOME-FILE-DOMAIN-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_HELP</code></span></td>
216
223
<td>Help files in the main GNOME installation.
220
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_LIBDIR</code></span></td>
228
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_LIBDIR</code></span></td>
221
229
<td>Application specific libraries.
225
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_DATADIR</code></span></td>
234
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_DATADIR</code></span></td>
226
235
<td>Application specific data files.
230
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_SOUND</code></span></td>
240
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_SOUND</code></span></td>
231
241
<td>Application specific sound files.
235
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_PIXMAP</code></span></td>
246
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_PIXMAP</code></span></td>
236
247
<td>Application specific pixmap files.
240
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_CONFIG</code></span></td>
252
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_CONFIG</code></span></td>
241
253
<td>Application specific config files.
245
<td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_HELP</code></span></td>
258
<span class="term"><a name="GNOME-FILE-DOMAIN-APP-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_HELP</code></span></td>
246
259
<td>Application specific help files.
318
333
<col align="left" valign="top">
321
<td><span class="term">const char *<em class="structfield"><code>name</code></em>;</span></td>
337
<span class="term">const char *<em class="structfield"><code>name</code></em>;</span></td>
322
338
<td>The module name.
326
<td><span class="term">const char *<em class="structfield"><code>version</code></em>;</span></td>
343
<span class="term">const char *<em class="structfield"><code>version</code></em>;</span></td>
327
344
<td>The module's version string.
331
<td><span class="term">const char *<em class="structfield"><code>description</code></em>;</span></td>
332
<td>A string describing the module (can be <a
333
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
334
><code class="literal">NULL</code></a>).
349
<span class="term">const char *<em class="structfield"><code>description</code></em>;</span></td>
350
<td>A string describing the module (can be <code class="literal">NULL</code>).
338
<td><span class="term"><a href="libgnome-gnome-program.html#GnomeModuleRequirement">GnomeModuleRequirement</a> *<em class="structfield"><code>requirements</code></em>;</span></td>
355
<span class="term"><a href="libgnome-gnome-program.html#GnomeModuleRequirement">GnomeModuleRequirement</a> *<em class="structfield"><code>requirements</code></em>;</span></td>
339
356
<td>A pointer to an array of modules that are required by this
340
357
module. The last module in the array should have its required_version field set
342
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
343
><code class="literal">NULL</code></a>.
358
to <code class="literal">NULL</code>.
347
<td><span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>instance_init</code></em>;</span></td>
363
<span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>instance_init</code></em>;</span></td>
348
364
<td>A function to call to initialise an instance of this module
350
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
351
><code class="literal">NULL</code></a>).
365
(can be <code class="literal">NULL</code>).
355
<td><span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>pre_args_parse</code></em>;</span></td>
370
<span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>pre_args_parse</code></em>;</span></td>
356
371
<td>A function to call before parsing the arguments for this
358
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
359
><code class="literal">NULL</code></a>).
372
module (can be <code class="literal">NULL</code>).
363
<td><span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>post_args_parse</code></em>;</span></td>
377
<span class="term"><a href="libgnome-gnome-program.html#GnomeModuleHook">GnomeModuleHook</a> <em class="structfield"><code>post_args_parse</code></em>;</span></td>
364
378
<td>A function to call after parsing the arguments for this
366
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
367
><code class="literal">NULL</code></a>).
379
module (can be <code class="literal">NULL</code>).
371
<td><span class="term"><a href="libgnome-gnome-program.html#GnomeModuleClassInitHook">GnomeModuleClassInitHook</a> <em class="structfield"><code>class_init</code></em>;</span></td>
384
<span class="term"><a href="libgnome-gnome-program.html#GnomeModuleClassInitHook">GnomeModuleClassInitHook</a> <em class="structfield"><code>class_init</code></em>;</span></td>
372
385
<td>A function to call to initialise this module prior to creating any
374
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
375
><code class="literal">NULL</code></a>).
386
instances (can be <code class="literal">NULL</code>).
379
<td><span class="term">const char *<em class="structfield"><code>opt_prefix</code></em>;</span></td>
391
<span class="term">const char *<em class="structfield"><code>opt_prefix</code></em>;</span></td>
384
<td><span class="term">GnomeModuleGetGOptionGroupFunc <em class="structfield"><code>get_goption_group_func</code></em>;</span></td>
385
<td>A function which must return a non-<a
386
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
387
><code class="literal">NULL</code></a> <span class="type">GOptionGroup</span>,
397
<span class="term">GnomeModuleGetGOptionGroupFunc <em class="structfield"><code>get_goption_group_func</code></em>;</span></td>
398
<td>A function which must return a non-<code class="literal">NULL</code> <span class="type">GOptionGroup</span>,
388
399
which will be added to the <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> s <span class="type">GOptionContext</span> during
389
400
#<a href="libgnome-gnome-program.html#gnome-program-init"><code class="function">gnome_program_init()</code></a>.
449
463
<div class="refsect2" lang="en">
450
<a name="id2723012"></a><h3>
464
<a name="id2524511"></a><h3>
451
465
<a name="GnomeModuleClassInitHook"></a>GnomeModuleClassInitHook ()</h3>
452
<a class="indexterm" name="id2723025"></a><pre class="programlisting">void (*GnomeModuleClassInitHook) (GnomeProgramClass *klass,
466
<a class="indexterm" name="id2524524"></a><pre class="programlisting">void (*GnomeModuleClassInitHook) (GnomeProgramClass *klass,
453
467
const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *mod_info);</pre>
455
469
A function called to perform any class specific setup that is required by each
478
494
<div class="refsect2" lang="en">
479
<a name="id2723105"></a><h3>
495
<a name="id2524604"></a><h3>
480
496
<a name="GnomeModuleHook"></a>GnomeModuleHook ()</h3>
481
<a class="indexterm" name="id2723117"></a><pre class="programlisting">void (*GnomeModuleHook) (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program,
497
<a class="indexterm" name="id2524617"></a><pre class="programlisting">void (*GnomeModuleHook) (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program,
482
498
<a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *mod_info);</pre>
484
500
A function that is called to perform some intialisation in a module (which
528
546
It loads the specified <em class="parameter"><code>module_info</code></em>, which is normally <a href="libgnome-gnome-init.html#LIBGNOME-MODULE:CAPS"><span class="type">LIBGNOME_MODULE</span></a> or
530
href="../libgnomeui/libgnomeui-gnome-ui-init.html#LIBGNOMEUI-MODULE:CAPS"
531
><span class="type">LIBGNOMEUI_MODULE</span></a> and pulls in all the dependencies. Programs that are not
547
<span class="type">LIBGNOMEUI_MODULE</span> and pulls in all the dependencies. Programs that are not
532
548
running in setuid or setgid mode will also load modules specified in the
533
549
<em class="parameter"><code>--load-modules</code></em> and also in the <em class="parameter"><code>GNOME_MODULES</code></em> environment variable.
536
After setting up the module loading, this function then calls (in order)
537
<a href="libgnome-gnome-program.html#gnome-program-preinit"><code class="function">gnome_program_preinit()</code></a>, <a href="libgnome-gnome-program.html#gnome-program-parse-args"><code class="function">gnome_program_parse_args()</code></a> and
538
<a href="libgnome-gnome-program.html#gnome-program-postinit"><code class="function">gnome_program_postinit()</code></a>.
540
551
<p>The following example shows how one might initialise a typical program
541
552
using a goption table that is defined elsewhere.
543
554
<div class="example">
544
<a name="id2723400"></a><p class="title"><b>Example 1. Initializing a GNOME application (deprecated, using popt)</b></p>
555
<a name="id2524862"></a><p class="title"><b>Example 1. Initializing a GNOME application (deprecated, using popt)</b></p>
545
556
<pre class="programlisting">
546
557
int main(int argc, char **argv) {
547
558
GnomeProgram *my_app;
629
640
<col align="left" valign="top">
632
<td><span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
644
<span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
633
645
<td> Application ID string.
637
<td><span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
650
<span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
638
651
<td> Application version string.
642
<td><span class="term"><em class="parameter"><code>module_info</code></em> :</span></td>
656
<span class="term"><em class="parameter"><code>module_info</code></em> :</span></td>
643
657
<td> The module to init with this program.
647
<td><span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
662
<span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
648
663
<td> The number of commmand line arguments contained in <em class="parameter"><code>argv</code></em>.
652
<td><span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
668
<span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
653
669
<td> A string array of command line arguments.
657
<td><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></td>
658
<td> The first item in a <a
659
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
660
><code class="literal">NULL</code></a>-terminated list of attribute
661
name and value pairs (so this will be an attribute name or <a
662
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
663
><code class="literal">NULL</code></a>).
674
<span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></td>
675
<td> The first item in a <code class="literal">NULL</code>-terminated list of attribute
676
name and value pairs (so this will be an attribute name or <code class="literal">NULL</code>).
667
<td><span class="term"><em class="parameter"><code>...</code></em> :</span></td>
668
<td> The continuation of a <a
669
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
670
><code class="literal">NULL</code></a>-terminated list of attribute name/value
681
<span class="term"><em class="parameter"><code>...</code></em> :</span></td>
682
<td> The continuation of a <code class="literal">NULL</code>-terminated list of attribute name/value
675
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
688
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
676
689
<td> A <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> instance representing the current application.
701
714
<col align="left" valign="top">
704
<td><span class="term"><em class="parameter"><code>type</code></em> :</span></td>
718
<span class="term"><em class="parameter"><code>type</code></em> :</span></td>
705
719
<td> The type of application to be initialized (usually
706
720
<span class="type">GNOME_TYPE_PROGRAM</span>).
710
<td><span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
725
<span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
711
726
<td> Application ID string.
715
<td><span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
731
<span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
716
732
<td> Application version string.
720
<td><span class="term"><em class="parameter"><code>module_info</code></em> :</span></td>
737
<span class="term"><em class="parameter"><code>module_info</code></em> :</span></td>
721
738
<td> The modules to init with the application.
725
<td><span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
743
<span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
726
744
<td> The number of command line arguments contained in <em class="parameter"><code>argv</code></em>.
730
<td><span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
749
<span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
731
750
<td> A string array of command line arguments.
735
<td><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></td>
736
<td> The first item in a <a
737
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
738
><code class="literal">NULL</code></a>-terminated list of attribute
755
<span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></td>
756
<td> The first item in a <code class="literal">NULL</code>-terminated list of attribute
743
<td><span class="term"><em class="parameter"><code>args</code></em> :</span></td>
744
<td> The remaining elements in the <a
745
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
746
><code class="literal">NULL</code></a> terminated list (of which
762
<span class="term"><em class="parameter"><code>args</code></em> :</span></td>
763
<td> The remaining elements in the <code class="literal">NULL</code> terminated list (of which
747
764
<em class="parameter"><code>first_property_name</code></em> is the first element).
751
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
769
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
752
770
<td> A <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> instance representing the current application.
759
777
<div class="refsect2" lang="en">
760
<a name="id2723966"></a><h3>
778
<a name="id2525428"></a><h3>
761
779
<a name="gnome-program-get"></a>gnome_program_get ()</h3>
762
<a class="indexterm" name="id2723979"></a><pre class="programlisting"><a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>* gnome_program_get (void);</pre>
780
<a class="indexterm" name="id2525441"></a><pre class="programlisting"><a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>* gnome_program_get (void);</pre>
764
782
Retrieves an object that stored information about the application's state.
765
783
Other functions assume this will always return a <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> object which
767
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
768
><code class="literal">NULL</code></a>) has already been initialized.</p>
784
(if not <code class="literal">NULL</code>) has already been initialized.</p>
772
788
<div class="variablelist"><table border="0">
773
789
<col align="left" valign="top">
775
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
776
<td> The application's <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> instance, or <a
777
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
778
><code class="literal">NULL</code></a> if it does not
792
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
793
<td> The application's <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> instance, or <code class="literal">NULL</code> if it does not
785
800
<div class="refsect2" lang="en">
786
<a name="id2724059"></a><h3>
801
<a name="id2525521"></a><h3>
787
802
<a name="gnome-program-get-human-readable-name"></a>gnome_program_get_human_readable_name ()</h3>
788
<a class="indexterm" name="id2724073"></a><pre class="programlisting">const char* gnome_program_get_human_readable_name
803
<a class="indexterm" name="id2525535"></a><pre class="programlisting">const char* gnome_program_get_human_readable_name
789
804
(<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);</pre>
791
806
This function returns a pointer to a static string that the
792
807
application has provided as a human readable name. The app
793
808
should provide the name with the <a href="libgnome-gnome-program.html#GNOME-PARAM-HUMAN-READABLE-NAME:CAPS"><span class="type">GNOME_PARAM_HUMAN_READABLE_NAME</span></a>
794
init argument. Returns <a
795
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
796
><code class="literal">NULL</code></a> if no name was set.</p>
809
init argument. Returns <code class="literal">NULL</code> if no name was set.</p>
886
905
For example, common domains are "libdir", "pixmap", and "config".
889
If <em class="parameter"><code>ret_locations</code></em> is <a
890
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
891
><code class="literal">NULL</code></a>, only one pathname is returned. Otherwise,
908
If <em class="parameter"><code>ret_locations</code></em> is <code class="literal">NULL</code>, only one pathname is returned. Otherwise,
892
909
alternative paths are returned in <em class="parameter"><code>ret_locations</code></em>.
907
924
<col align="left" valign="top">
910
<td><span class="term"><em class="parameter"><code>program</code></em> :</span></td>
911
<td> A valid <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> object or <a
912
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
913
><code class="literal">NULL</code></a> (in which case the current
928
<span class="term"><em class="parameter"><code>program</code></em> :</span></td>
929
<td> A valid <a href="libgnome-gnome-program.html#GnomeProgram"><span class="type">GnomeProgram</span></a> object or <code class="literal">NULL</code> (in which case the current
914
930
application is used).
918
<td><span class="term"><em class="parameter"><code>domain</code></em> :</span></td>
935
<span class="term"><em class="parameter"><code>domain</code></em> :</span></td>
919
936
<td> A <a href="libgnome-gnome-program.html#GnomeFileDomain"><span class="type">GnomeFileDomain</span></a>.
923
<td><span class="term"><em class="parameter"><code>file_name</code></em> :</span></td>
941
<span class="term"><em class="parameter"><code>file_name</code></em> :</span></td>
924
942
<td> A file name or path inside the 'domain' to find.
928
<td><span class="term"><em class="parameter"><code>only_if_exists</code></em> :</span></td>
947
<span class="term"><em class="parameter"><code>only_if_exists</code></em> :</span></td>
929
948
<td> Only return a full pathname if the specified file
934
<td><span class="term"><em class="parameter"><code>ret_locations</code></em> :</span></td>
935
<td> If this is not <a
936
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
937
><code class="literal">NULL</code></a>, a list of all the possible locations
954
<span class="term"><em class="parameter"><code>ret_locations</code></em> :</span></td>
955
<td> If this is not <code class="literal">NULL</code>, a list of all the possible locations
938
956
of the file will be returned.
942
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
961
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
943
962
<td> The full path to the file (if it exists or only_if_exists is
944
<code class="literal">FALSE</code>) or <a
945
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
946
><code class="literal">NULL</code></a>.
963
<code class="literal">FALSE</code>) or <code class="literal">NULL</code>.
953
970
<div class="refsect2" lang="en">
954
<a name="id2724602"></a><h3>
971
<a name="id2526064"></a><h3>
955
972
<a name="gnome-program-module-register"></a>gnome_program_module_register ()</h3>
956
<a class="indexterm" name="id2724615"></a><pre class="programlisting">void gnome_program_module_register (const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info);</pre>
973
<a class="indexterm" name="id2526077"></a><pre class="programlisting">void gnome_program_module_register (const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info);</pre>
958
975
This function is used to register a module to be initialized by the
959
976
GNOME library framework. The memory pointed to by <em class="parameter"><code>module_info</code></em> must be
1018
1038
<col align="left" valign="top">
1021
<td><span class="term"><em class="parameter"><code>mod_name</code></em> :</span></td>
1042
<span class="term"><em class="parameter"><code>mod_name</code></em> :</span></td>
1022
1043
<td> module name
1026
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1027
<td> The <a href="libgnome-gnome-program.html#GnomeModuleInfo"><span class="type">GnomeModuleInfo</span></a> structure that was loaded, or <a
1028
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
1029
><code class="literal">NULL</code></a> if the
1048
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1049
<td> The <a href="libgnome-gnome-program.html#GnomeModuleInfo"><span class="type">GnomeModuleInfo</span></a> structure that was loaded, or <code class="literal">NULL</code> if the
1030
1050
module could not be loaded.
1037
1057
<div class="refsect2" lang="en">
1038
<a name="id2724873"></a><h3>
1058
<a name="id2526335"></a><h3>
1039
1059
<a name="gnome-program-install-property"></a>gnome_program_install_property ()</h3>
1040
<a class="indexterm" name="id2724887"></a><pre class="programlisting">guint gnome_program_install_property (GnomeProgramClass *pclass,
1060
<a class="indexterm" name="id2526349"></a><pre class="programlisting">guint gnome_program_install_property (GnomeProgramClass *pclass,
1041
1061
GObjectGetPropertyFunc get_fn,
1042
1062
GObjectSetPropertyFunc set_fn,
1043
1063
GParamSpec *pspec);</pre>
1055
1075
<col align="left" valign="top">
1058
<td><span class="term"><em class="parameter"><code>pclass</code></em> :</span></td>
1079
<span class="term"><em class="parameter"><code>pclass</code></em> :</span></td>
1059
1080
<td> A <span class="type">GnomeProgramClass</span>.
1063
<td><span class="term"><em class="parameter"><code>get_fn</code></em> :</span></td>
1085
<span class="term"><em class="parameter"><code>get_fn</code></em> :</span></td>
1064
1086
<td> A function to get property values.
1068
<td><span class="term"><em class="parameter"><code>set_fn</code></em> :</span></td>
1091
<span class="term"><em class="parameter"><code>set_fn</code></em> :</span></td>
1069
1092
<td> A function to set property values.
1073
<td><span class="term"><em class="parameter"><code>pspec</code></em> :</span></td>
1097
<span class="term"><em class="parameter"><code>pspec</code></em> :</span></td>
1074
1098
<td> A collection of properties.
1078
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1103
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1079
1104
<td> The number of properties installed.
1086
1111
<div class="refsect2" lang="en">
1087
<a name="id2725030"></a><h3>
1112
<a name="id2526492"></a><h3>
1088
1113
<a name="gnome-program-preinit"></a>gnome_program_preinit ()</h3>
1089
<a class="indexterm" name="id2725043"></a><pre class="programlisting">poptContext gnome_program_preinit (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program,
1114
<a class="indexterm" name="id2526508"></a><pre class="programlisting">poptContext gnome_program_preinit (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program,
1090
1115
const char *app_id,
1091
1116
const char *app_version,
1093
1118
char **argv);</pre>
1119
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1120
<h3 class="title">Warning</h3>
1121
<p><code class="literal">gnome_program_preinit</code> has been deprecated since version 2.18 and should not be used in newly-written code. Use <a href="libgnome-gnome-program.html#gnome-program-init"><code class="function">gnome_program_init()</code></a> instead.</p>
1095
1124
This function performs the portion of application initialization that
1096
1125
needs to be done prior to command line argument parsing. The poptContext
1102
1131
<col align="left" valign="top">
1105
<td><span class="term"><em class="parameter"><code>program</code></em> :</span></td>
1135
<span class="term"><em class="parameter"><code>program</code></em> :</span></td>
1106
1136
<td> Application object
1110
<td><span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
1141
<span class="term"><em class="parameter"><code>app_id</code></em> :</span></td>
1111
1142
<td> application ID string
1115
<td><span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
1147
<span class="term"><em class="parameter"><code>app_version</code></em> :</span></td>
1116
1148
<td> application version string
1120
<td><span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
1153
<span class="term"><em class="parameter"><code>argc</code></em> :</span></td>
1121
1154
<td> The number of commmand line arguments contained in 'argv'
1125
<td><span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
1159
<span class="term"><em class="parameter"><code>argv</code></em> :</span></td>
1126
1160
<td> A string array of command line arguments
1130
<td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1165
<span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td>
1131
1166
<td> A poptContext representing the argument parsing state,
1133
href="../liboil/liboil-liboiljunk.html#NULL:CAPS"
1134
><code class="literal">NULL</code></a> if using GOption argument parsing.
1167
or <code class="literal">NULL</code> if using GOption argument parsing.
1141
1174
<div class="refsect2" lang="en">
1142
<a name="id2725217"></a><h3>
1175
<a name="id2526706"></a><h3>
1143
1176
<a name="gnome-program-parse-args"></a>gnome_program_parse_args ()</h3>
1144
<a class="indexterm" name="id2725230"></a><pre class="programlisting">void gnome_program_parse_args (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);</pre>
1177
<a class="indexterm" name="id2526722"></a><pre class="programlisting">void gnome_program_parse_args (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);</pre>
1178
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1179
<h3 class="title">Warning</h3>
1180
<p><code class="literal">gnome_program_parse_args</code> has been deprecated since version 2.18 and should not be used in newly-written code. Use <a href="libgnome-gnome-program.html#gnome-program-init"><code class="function">gnome_program_init()</code></a> instead.</p>
1146
1183
Parses the command line arguments for the application</p>
1160
1198
<div class="refsect2" lang="en">
1161
<a name="id2725281"></a><h3>
1199
<a name="id2526797"></a><h3>
1162
1200
<a name="gnome-program-postinit"></a>gnome_program_postinit ()</h3>
1163
<a class="indexterm" name="id2725294"></a><pre class="programlisting">void gnome_program_postinit (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);</pre>
1201
<a class="indexterm" name="id2526813"></a><pre class="programlisting">void gnome_program_postinit (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);</pre>
1202
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1203
<h3 class="title">Warning</h3>
1204
<p><code class="literal">gnome_program_postinit</code> has been deprecated since version 2.18 and should not be used in newly-written code. Use <a href="libgnome-gnome-program.html#gnome-program-init"><code class="function">gnome_program_init()</code></a> instead.</p>
1165
1207
Called after <a href="libgnome-gnome-program.html#gnome-program-parse-args"><code class="function">gnome_program_parse_args()</code></a>, this function
1166
1208
takes care of post-parse initialization and cleanup</p>
1234
1277
passed <span class="type">GOptionContext</span>.
1235
1278
Mutually exclusive with using the <a href="libgnome-gnome-program.html#GNOME-PARAM-POPT-TABLE:CAPS"><span class="type">GNOME_PARAM_POPT_TABLE</span></a> parameter.
1237
<p class="since">Since 2.14
1243
1286
<div class="refsect2" lang="en">
1244
<a name="id2725599"></a><h3>
1287
<a name="id2527139"></a><h3>
1245
1288
<a name="GNOME-PARAM-CREATE-DIRECTORIES:CAPS"></a>GNOME_PARAM_CREATE_DIRECTORIES</h3>
1246
<a class="indexterm" name="id2725611"></a><pre class="programlisting">#define GNOME_PARAM_CREATE_DIRECTORIES "create-directories"
1289
<a class="indexterm" name="id2527151"></a><pre class="programlisting">#define GNOME_PARAM_CREATE_DIRECTORIES "create-directories"
1249
1292
This parameter contains <code class="literal">TRUE</code> if the standard GNOME directories should be
1413
1456
<div class="refsect2" lang="en">
1414
<a name="id2726099"></a><h3>
1457
<a name="id2527639"></a><h3>
1415
1458
<a name="GNOME-PROGRAM-STANDARD-PROPERTIES:CAPS"></a>GNOME_PROGRAM_STANDARD_PROPERTIES</h3>
1416
<a class="indexterm" name="id2726113"></a><pre class="programlisting">#define GNOME_PROGRAM_STANDARD_PROPERTIES</pre>
1459
<a class="indexterm" name="id2527653"></a><pre class="programlisting">#define GNOME_PROGRAM_STANDARD_PROPERTIES</pre>
1418
1461
When PREFIX, SYSCONFDIR, DATADIR and LIBDIR are defined during the build
1419
1462
process, this macro can be used to assign these values to