XpGetPrinterList
Section: XPRINT FUNCTIONS (3Xp)
Updated: libXp 1.0.3
Index
Return to Main Contents
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 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 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> contains:
typedef struct {
char *name; /* name */
char *desc; /* localized description */
} XPPrinterRec, *XPPrinterList;
DIAGNOSTICS
- BadAlloc
-
Insufficient memory.
SEE ALSO
XpFreePrinterList(3Xp),
XpSetLocaleHinter(3Xp)
Index
- NAME
-
- SYNOPSIS
-
- ARGUMENTS
-
- DESCRIPTION
-
- DIAGNOSTICS
-
- SEE ALSO
-