gimpenv

gimpenv — Functions to access the GIMP environment.

Synopsis




const gchar* gimp_directory                 (void);
gchar*      gimp_personal_rc_file           (const gchar *basename);
const gchar* gimp_data_directory            (void);
const gchar* gimp_locale_directory          (void);
const gchar* gimp_plug_in_directory         (void);
const gchar* gimp_sysconf_directory         (void);
const gchar* gimp_gtkrc                     (void);
GList*      gimp_path_parse                 (const gchar *path,
                                             gint max_paths,
                                             gboolean check,
                                             GList **check_failed);
gchar*      gimp_path_to_str                (GList *path);
void        gimp_path_free                  (GList *path);
gchar*      gimp_path_get_user_writable_dir (GList *path);

Description

A set of functions to find the locations of GIMP's data directories and configuration files.

Details

gimp_directory ()

const gchar* gimp_directory                 (void);

Returns the user-specific GIMP settings directory. If the environment variable GIMP2_DIRECTORY exists, it is used. If it is an absolute path, it is used as is. If it is a relative path, it is taken to be a subdirectory of the home directory. If it is a relative path, and no home directory can be determined, it is taken to be a subdirectory of gimp_data_directory().

The usual case is that no GIMP2_DIRECTORY environment variable exists, and then we use the GIMPDIR subdirectory of the home directory. If no home directory exists, we use a per-user subdirectory of gimp_data_directory(). In any case, we always return some non-empty string, whether it corresponds to an existing directory or not.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The user-specific GIMP settings directory.

gimp_personal_rc_file ()

gchar*      gimp_personal_rc_file           (const gchar *basename);

Returns the name of a file in the user-specific GIMP settings directory.

The returned string is allocated dynamically and *SHOULD* be freed with g_free() after use. The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

basename : The basename of a rc_file.
Returns : The name of a file in the user-specific GIMP settings directory.

gimp_data_directory ()

const gchar* gimp_data_directory            (void);

Returns the top directory for GIMP data. If the environment variable GIMP2_DATADIR exists, that is used. It should be an absolute pathname. Otherwise, on Unix the compile-time defined directory is used. On Win32, the installation directory as deduced from the executable's name is used.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The top directory for GIMP data.

gimp_locale_directory ()

const gchar* gimp_locale_directory          (void);

Returns the top directory for GIMP locale files. If the environment variable GIMP2_LOCALEDIR exists, that is used. It should be an absolute pathname. Otherwise, on Unix the compile-time defined directory is used. On Win32, the installation directory as deduced from the executable's name is used.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The top directory for GIMP locale files.

gimp_plug_in_directory ()

const gchar* gimp_plug_in_directory         (void);

Returns the top directory for GIMP plug_ins and modules. If the environment variable GIMP2_PLUGINDIR exists, that is used. It should be an absolute pathname. Otherwise, on Unix the compile-time defined directory is used. On Win32, the installation directory as deduced from the executable's name is used.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The top directory for GIMP plug_ins and modules.

gimp_sysconf_directory ()

const gchar* gimp_sysconf_directory         (void);

Returns the top directory for GIMP config files. If the environment variable GIMP2_SYSCONFDIR exists, that is used. It should be an absolute pathname. Otherwise, on Unix the compile-time defined directory is used. On Win32, the installation directory as deduced from the executable's name is used.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The top directory for GIMP config files.

gimp_gtkrc ()

const gchar* gimp_gtkrc                     (void);

Returns the name of the GIMP's application-specific gtkrc file.

The returned string is allocated just once, and should *NOT* be freed with g_free(). The returned string is in the encoding used for filenames by the system, which isn't necessarily UTF-8 (never is on Windows).

Returns : The name of the GIMP's application-specific gtkrc file.

gimp_path_parse ()

GList*      gimp_path_parse                 (const gchar *path,
                                             gint max_paths,
                                             gboolean check,
                                             GList **check_failed);

path : A list of directories separated by G_SEARCHPATH_SEPARATOR.
max_paths : The maximum number of directories to return.
check : TRUE if you want the directories to be checked.
check_failed : Returns a GList of path elements for which the check failed.
Returns : A GList of all directories in path.

gimp_path_to_str ()

gchar*      gimp_path_to_str                (GList *path);

path : A list of directories as returned by gimp_path_parse().
Returns : A searchpath string separated by G_SEARCHPATH_SEPARATOR.

gimp_path_free ()

void        gimp_path_free                  (GList *path);

This function frees the memory allocated for the list and the strings it contains.

path : A list of directories as returned by gimp_path_parse().

gimp_path_get_user_writable_dir ()

gchar*      gimp_path_get_user_writable_dir (GList *path);

Note that you have to g_free() the returned string.

path : A list of directories as returned by gimp_path_parse().
Returns : The first directory in path where the user has write permission.