background image
Functional specification
45
CDE/Motif PST
CDEnext
printer_name
Specifies the name of the printer for which information is desired. If
NULL
, then information is returned for all printers associated with the
server.
list_count
The number of printers returned in
printer_list
.
RETURN VALUE
printer_list
, or
NULL
if any errors occured.
DESCRIPTION
XpGetPrinterList
returns a list of printer records where each record describes a printer supported by
the X Print Server.
If
printer_name
is
NULL
, then a list of all printers supported is returned. If
printer_name
is non-
NULL
, only print records matching
printer_name
are returned, and if no records match
printer_name
, then
NULL
is returned.
printer_name
takes a
COMPOUND_TEXT
string, and the
.name
and
.desc
fields in the returned list
will be in
COMPOUND_TEXT
(note, ISO 8859-1 (Latin-1) is a proper subset of
COMPOUND_TEXT
, so can
be used directly). If
printer_name
is in a code-set that the X Print Server cannot convert (into its
operating code-set), then the X Print Server may fail to locate the requested printer. If
printer_name
is
NULL
, then all printer names, regardless of their code-set, can be returned, leaving the task of specific
printer recognition up to the caller.
When
XpGetPrinterList
is called, the client's locale (see
XpSetLocaleHinter
) is included in
the request as a "hint" to the X Print Server. If supported by the implementation, the X Print Server will
use the hint to locate a localized description (
desc
) for each printer in the list. If the X Print Server
cannot understand the hint, the X Print Server will typically fall back to descriptions in the locale it is
running in.
Printer lists can be freed by calling
XpFreePrinterList
.
STRUCTURES
The XPPrinterList structure defined in
<X11/extensions/Print.h>
contains:
typedef struct {
char *name;
/* name */
char *desc;
/* localized description */
} XPPrinterRec, *XPPrinterList;
ERRORS/WARNINGS
This function can cause the generation of one of the following errors:
BadAlloc
Insufficient memory.
SEE ALSO
XpFreePrinterList