XtResolvePathname(3Xt)XtResolvePathname(3Xt)NAMEXtResolvePathname - search for a file using standard substitution
SYNOPSIS
String XtResolvePathname(display, type, filename, suffix, path, substi‐
tutions, num_substitutions, predicate)
Display *display;
String type, filename, suffix, path;
Substitution substitutions;
Cardinal num_substitutions;
XtFilePredicate predicate;
ARGUMENTS
Specifies the display to use to find the language for language substi‐
tutions. Specify values to substitute into the path. Specifies the
list of file specifications, or NULL. Specifies a list of additional
substitutions to make into the path, or NULL. Specifies the number of
entries in substitutions. Specifies a procedure called to judge each
potential file name, or NULL.
DESCRIPTION
The substitutions specified by XtResolvePathname are determined from
the value of the language string retrieved by XtDisplayInitialize for
the specified display. To set the language for all applications specify
“*xnlLanguage: lang” in the resource database. The format and content
of the language string are implementation-defined. One suggested syn‐
tax is to compose the language string of three parts; a “language
part”, a “territory part” and a “codeset part”. The manner in which
this composition is accomplished is implementation-defined and the
Intrinsics make no interpretation of the parts other than to use them
in substitutions as described below.
XtResolvePathname calls XtFindFile with the following substitutions in
addition to any passed by the caller and returns the value returned by
XtFindFile: The value of the filename parameter, or the application's
class name if filename is NULL. The value of the type parameter. The
value of the suffix parameter. The language string associated with the
specified display. The language part of the display's language string.
The territory part of the display's language string. The codeset part
of the display's language string. The customization string retrieved
from the resource database associated with display. The value of the
implementation-specific default path.
If a path is passed to XtResolvePathname, it will be passed along to
XtFindFile. If the path argument is NULL, the value of the XFILESEARCH‐
PATH environment variable will be passed to XtFindFile. If XFILE‐
SEARCHPATH is not defined, an implementation-specific default path will
be used which contains at least 6 entries. These entries must contain
the following substitutions:
1. %C, %N, %S, %T, %L or %C, %N, %S, %T, %l, %t, %c
2. %C, %N, %S, %T, %l 3. %C, %N, %S, %T 4. %N, %S, %T, %L
or %N, %S, %T, %l, %t, %c 5. %N, %S, %T, %l 6. %N, %S, %T
The order of these six entries within the path must be as given above.
The order and use of substitutions within a given entry is implementa‐
tion dependent. If the path begins with a colon, it will be preceded by
%N%S. If the path includes two adjacent colons, %N%S will be inserted
between them.
The type parameter is intended to be a category of files, usually being
translated into a directory in the pathname. Possible values might
include “app-defaults”, “help”, and “bitmap”.
The suffix parameter is intended to be appended to the file name. Pos‐
sible values might include “.txt”, “.dat”, and “.bm”.
A suggested value for the default path on POSIX-based systems is
<XRoot>/lib/X11/%L/%T/%N%C%S:<XRoot>/lib/X11/%l/%T/%N%C%S:\
<XRoot>/lib/X11/%T/%N%C%S:<XRoot>/lib/X11/%L/%T/%N%S:\
<XRoot>/lib/X11/%l/%T/%N%S:<XRoot>/lib/X11/%T/%N%S
where <XRoot> is replaced by the root of the X11 installation tree
(/usr/X11R6, for example).
Using this example, if the user has specified a language, it will be
used as a subdirectory of <XRoot>/lib/X11 that will be searched for
other files. If the desired file is not found there, the lookup will
be tried again using just the language part of the specification. If
the file is not there, it will be looked for in <XRoot>/lib/X11. The
type parameter is used as a subdirectory of the language directory or
of <XRoot>/lib/X11, and suffix is appended to the file name.
The %D substitution allows the addition of path elements to the imple‐
mentation-specific default path, typically to allow additional directo‐
ries to be searched without preventing resources in the system directo‐
ries from being found. For example, a user installing resource files
under a directory called “ourdir” might set XFILESEARCHPATH to
%D:ourdir/%T/%N%C:ourdir/%T/%N
The customization string is obtained by querying the resource database
currently associated with the display (the database returned by XrmGet‐
Database) for the resource application_name.customization, class appli‐
cation_class.Customization where application_name and application_class
are the values returned by XtGetApplicationNameAndClass. If no value
is specified in the database, the empty string is used.
It is the responsibility of the caller to free the returned string
using XtFree when it is no longer needed.
SEE ALSO
X Toolkit Intrinsics -- C Language Interface
Xlib -- C Language X Interface
XtResolvePathname(3Xt)