XpGetPrinterList
XpGetPrinterList(3Xp) XPRINT FUNCTIONS XpGetPrinterList(3Xp)
NAME
XpGetPrinterList - Retrieves a list of all printers supported on an X
Print Server.
SYNOPSIS
cc [ flag... ] file... -lXp [ library... ]
#include <X11/extensions/Print.h>
XPPrinterList XpGetPrinterList ( display, printer_name,
list_count_return )
Display *display;
char *printer_name;
int *list_count_return;
ARGUMENTS
display
Specifies a pointer to the Display structure; returned from
XOpenDisplay.
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_return
Returns the number of printers in the list.
DESCRIPTION
XpGetPrinterList returns a list of printer records where each record
describes a printer supported by the X Print Server, or NULL if any
errors occur.
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 is 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 caller’s locale (see XpSetLocale-
Hinter) 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 for each printer in the list.
If the X Print Server cannot understand the hint, the X Print Server
will choose a default. The returned printer list can be freed by
calling XpFreePrinterList.
The XPPrinterList structure defined in <X11/extensions/Print.h> con-
tains:
typedef struct {
char *name;
char *desc;
} XPPrinterRec, *XPPrinterList;
DIAGNOSTICS
BadAlloc Insufficient memory.
SEE ALSO
XpFreePrinterList(3Xp), XpSetLocaleHinter(3Xp)
XpGetPrinterList(3Xp)