📄 libgnome-gnome-program.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"><title>gnome-program</title><meta name="generator" content="DocBook XSL Stylesheets V1.69.1"><link rel="start" href="index.html" title="GNOME Library Reference Manual"><link rel="up" href="libgnome.html#id2740192" title="Initializing applications and starting programs"><link rel="prev" href="libgnome.html" title="GNOME Library (libgnome)"><link rel="next" href="libgnome-gnome-init.html" title="gnome-init"><meta name="generator" content="GTK-Doc V1.7 (XML mode)"><link rel="stylesheet" href="style.css" type="text/css"><link rel="chapter" href="libgnome.html" title="GNOME Library (libgnome)"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libgnome.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td><td><a accesskey="u" href="libgnome.html#id2740192"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">GNOME Library Reference Manual</th><td><a accesskey="n" href="libgnome-gnome-init.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td></tr><tr><td colspan="5" class="shortcuts"><nobr><a href="#id2776405" class="shortcut">Top</a>  |  <a href="#id2785922" class="shortcut">Description</a></nobr></td></tr></table><div class="refentry" lang="en"><a name="libgnome-gnome-program"></a><div class="titlepage"></div><div class="refnamediv"><table width="100%"><tr><td valign="top"><h2><a name="id2776405"></a><span class="refentrytitle">gnome-program</span></h2><p>gnome-program — Initialize and retrieve information about a GNOME application.</p></td><td valign="top" align="right"></td></tr></table></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">#include <libgnome/libgnome.h>enum <a href="libgnome-gnome-program.html#GnomeFileDomain">GnomeFileDomain</a>; <a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>; <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a>; <a href="libgnome-gnome-program.html#GnomeModuleRequirement">GnomeModuleRequirement</a>;void (<a href="libgnome-gnome-program.html#GnomeModuleInitHook">*GnomeModuleInitHook</a>) (const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *mod_info);void (<a href="libgnome-gnome-program.html#GnomeModuleClassInitHook">*GnomeModuleClassInitHook</a>) (GnomeProgramClass *klass, const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *mod_info);void (<a href="libgnome-gnome-program.html#GnomeModuleHook">*GnomeModuleHook</a>) (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program, <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *mod_info);<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>* <a href="libgnome-gnome-program.html#gnome-program-init">gnome_program_init</a> (const char *app_id, const char *app_version, const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info, int argc, char **argv, const char *first_property_name, ...);<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>* <a href="libgnome-gnome-program.html#gnome-program-initv">gnome_program_initv</a> (<ahref="/usr/share/gtk-doc/html/gobject/gobject-Type-Information.html#GType">GType</a> type, const char *app_id, const char *app_version, const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info, int argc, char **argv, const char *first_property_name, va_list args);<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a>* <a href="libgnome-gnome-program.html#gnome-program-get">gnome_program_get</a> (void);const char* <a href="libgnome-gnome-program.html#gnome-program-get-human-readable-name">gnome_program_get_human_readable_name</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);const char* <a href="libgnome-gnome-program.html#gnome-program-get-app-id">gnome_program_get_app_id</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);const char* <a href="libgnome-gnome-program.html#gnome-program-get-app-version">gnome_program_get_app_version</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar">gchar</a>* <a href="libgnome-gnome-program.html#gnome-program-locate-file">gnome_program_locate_file</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program, <a href="libgnome-gnome-program.html#GnomeFileDomain">GnomeFileDomain</a> domain, const <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar">gchar</a> *file_name, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a> only_if_exists, <ahref="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList">GSList</a> **ret_locations);void <a href="libgnome-gnome-program.html#gnome-program-module-register">gnome_program_module_register</a> (const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a> <a href="libgnome-gnome-program.html#gnome-program-module-registered">gnome_program_module_registered</a> (const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a> *module_info);const <a href="libgnome-gnome-program.html#GnomeModuleInfo">GnomeModuleInfo</a>* <a href="libgnome-gnome-program.html#gnome-program-module-load">gnome_program_module_load</a> (const char *mod_name);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint">guint</a> <a href="libgnome-gnome-program.html#gnome-program-install-property">gnome_program_install_property</a> (GnomeProgramClass *pclass, <ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObjectGetPropertyFunc">GObjectGetPropertyFunc</a> get_fn, <ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObjectSetPropertyFunc">GObjectSetPropertyFunc</a> set_fn, <ahref="/usr/share/gtk-doc/html/gobject/gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);poptContext <a href="libgnome-gnome-program.html#gnome-program-preinit">gnome_program_preinit</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program, const char *app_id, const char *app_version, int argc, char **argv);void <a href="libgnome-gnome-program.html#gnome-program-parse-args">gnome_program_parse_args</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);void <a href="libgnome-gnome-program.html#gnome-program-postinit">gnome_program_postinit</a> (<a href="libgnome-gnome-program.html#GnomeProgram">GnomeProgram</a> *program);#define <a href="libgnome-gnome-program.html#GNOME-PARAM-POPT-TABLE:CAPS">GNOME_PARAM_POPT_TABLE</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-POPT-FLAGS:CAPS">GNOME_PARAM_POPT_FLAGS</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-POPT-CONTEXT:CAPS">GNOME_PARAM_POPT_CONTEXT</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GOPTION-CONTEXT:CAPS">GNOME_PARAM_GOPTION_CONTEXT</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-CREATE-DIRECTORIES:CAPS">GNOME_PARAM_CREATE_DIRECTORIES</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-ENABLE-SOUND:CAPS">GNOME_PARAM_ENABLE_SOUND</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-ESPEAKER:CAPS">GNOME_PARAM_ESPEAKER</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-ID:CAPS">GNOME_PARAM_APP_ID</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-VERSION:CAPS">GNOME_PARAM_APP_VERSION</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GNOME-PREFIX:CAPS">GNOME_PARAM_GNOME_PREFIX</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GNOME-SYSCONFDIR:CAPS">GNOME_PARAM_GNOME_SYSCONFDIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GNOME-DATADIR:CAPS">GNOME_PARAM_GNOME_DATADIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GNOME-LIBDIR:CAPS">GNOME_PARAM_GNOME_LIBDIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-PREFIX:CAPS">GNOME_PARAM_APP_PREFIX</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-SYSCONFDIR:CAPS">GNOME_PARAM_APP_SYSCONFDIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-DATADIR:CAPS">GNOME_PARAM_APP_DATADIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-LIBDIR:CAPS">GNOME_PARAM_APP_LIBDIR</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-HUMAN-READABLE-NAME:CAPS">GNOME_PARAM_HUMAN_READABLE_NAME</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-GNOME-PATH:CAPS">GNOME_PARAM_GNOME_PATH</a>#define <a href="libgnome-gnome-program.html#GNOME-PARAM-NONE:CAPS">GNOME_PARAM_NONE</a>#define <a href="libgnome-gnome-program.html#GNOME-PROGRAM-STANDARD-PROPERTIES:CAPS">GNOME_PROGRAM_STANDARD_PROPERTIES</a></pre></div><div class="refsect1" lang="en"><a name="id2785922"></a><h2>Description</h2><p></p></div><div class="refsect1" lang="en"><a name="id2785936"></a><h2>Details</h2><div class="refsect2" lang="en"><a name="id2785946"></a><h3><a name="GnomeFileDomain"></a>enum GnomeFileDomain</h3><a class="indexterm" name="id2785959"></a><pre class="programlisting">typedef enum { GNOME_FILE_DOMAIN_UNKNOWN = 0, /* Gnome installed files */ GNOME_FILE_DOMAIN_LIBDIR, GNOME_FILE_DOMAIN_DATADIR, GNOME_FILE_DOMAIN_SOUND, GNOME_FILE_DOMAIN_PIXMAP, GNOME_FILE_DOMAIN_CONFIG, GNOME_FILE_DOMAIN_HELP, /* Application files */ GNOME_FILE_DOMAIN_APP_LIBDIR, GNOME_FILE_DOMAIN_APP_DATADIR, GNOME_FILE_DOMAIN_APP_SOUND, GNOME_FILE_DOMAIN_APP_PIXMAP, GNOME_FILE_DOMAIN_APP_CONFIG, GNOME_FILE_DOMAIN_APP_HELP} GnomeFileDomain;</pre><p>Many of the files that a GNOME application needs to access will be installed instandard locations. For example, GNOME help files will be in one location,while help files specific to the current application might be in anotherlocation.</p><p>The different types of files are given in this enum. User applications make useof the <em class="structfield"><code>GNOME_FILE_DOMAIN_APP_*</code></em> types, which specifylocations relative to <a href="libgnome-gnome-program.html#GNOME-PARAM-APP-DATADIR:CAPS"><span class="type">GNOME_PARAM_APP_DATADIR</span></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-UNKNOWN:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_UNKNOWN</code></span></td><td>An unknown file domain (should never be used).</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_LIBDIR</code></span></td><td>Libraries in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_DATADIR</code></span></td><td>Data files in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_SOUND</code></span></td><td>Sound files in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_PIXMAP</code></span></td><td>Pixmap files in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_CONFIG</code></span></td><td>Config files in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_HELP</code></span></td><td>Help files in the main GNOME installation.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-LIBDIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_LIBDIR</code></span></td><td>Application specific libraries.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-DATADIR:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_DATADIR</code></span></td><td>Application specific data files.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-SOUND:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_SOUND</code></span></td><td>Application specific sound files.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-PIXMAP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_PIXMAP</code></span></td><td>Application specific pixmap files.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-CONFIG:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_CONFIG</code></span></td><td>Application specific config files.</td></tr><tr><td><span class="term"><a name="GNOME-FILE-DOMAIN-APP-HELP:CAPS"></a><code class="literal">GNOME_FILE_DOMAIN_APP_HELP</code></span></td><td>Application specific help files.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2786306"></a><h3><a name="GnomeProgram"></a>GnomeProgram</h3><a class="indexterm" name="id2786319"></a><pre class="programlisting">typedef struct { GObject object; GnomeProgramPrivate *_priv;} GnomeProgram;</pre><p>A structure containing information about the current application. Initialisedduring a call to <a href="libgnome-gnome-program.html#gnome-program-init"><code class="function">gnome_program_init()</code></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a> <em class="structfield"><code>object</code></em>;</span></td><td>A <ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the parameters and their values which were setdring initialisation.</td></tr><tr><td><span class="term">GnomeProgramPrivate *<em class="structfield"><code>_priv</code></em>;</span></td><td>Private data about the program instance.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2786403"></a><h3><a name="GnomeModuleInfo"></a>GnomeModuleInfo</h3>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -