Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XpSetAttributes(3Xp)	       XPRINT FUNCTIONS		  XpSetAttributes(3Xp)

NAME
       XpSetAttributes	-  Sets	 or updates an attribute pool in the specified
       print context.

SYNOPSIS
	     cc	[ flag... ] file... -lXp [ library... ]
	     #include <X11/extensions/Print.h>

       void XpSetAttributes ( display, context,	type, pool, replacement_rule )
	     Display *display;
	     XPContext context;
	     XPAttributes type;
	     char *pool;
	     XPAttrReplacement replacement_rule;

ARGUMENTS
       display
	      Specifies	a pointer to  the  Display  structure;	returned  from
	      XOpenDisplay.

       context
	      The print	context	whose attribute	pool is	to be modified.

       type   Specifies	the attribute pool.

       pool   An  attribute  pool represented as a resource string. Encoded in
	      COMPOUND_TEXT.

       replacement_rule
	      Either XPAttrReplace orXPAttrMerge.

DESCRIPTION
       XpSetAttributes accepts pool, a COMPOUND_TEXT  resource	string	repre-
       senting	new name-value pairs for the attribute pool specified by type.
       The attribute pool is modified by the new name-value pairs according to
       replacement_rule.  For  XPAttrReplace,  the  existing attribute pool is
       discarded and replaced with pool. For XPAttrMerge, pool is merged  into
       the  existing  attribute	 pool;	pre-existing  name-value pairs are re-
       placed, and non-existing	name-value pairs are added.  The  contents  of
       pool  is	 not affected by this call, and	can be freed by	the caller af-
       terwards.

       When setting supported attribute	names, the X Print Server and  associ-
       ated  driver will validate the new values and ignore those that are in-
       valid; previous values remain unchanged.	When setting unsupported (that
       is, unknown) attribute names, no	validation is done, and	the name-value
       pairs will be set, even though they will	not  be	 used.	When  deleting
       (that  is,  failing  to reset with XPAttrReplace) a supported attribute
       name, the X Print Server	explicitly or implicitly resets	the  attribute
       to a default value.

       When  setting certain supported attributes, the X Print Server may mod-
       ify other associated attributes.	For example, considering the  XPPrint-
       erAttr  attribute document-formats-supported, setting the XPDocAttr at-
       tribute document-format may cause  a  number  of	 other	attributes  to
       change.

       For  attribute pools that are read-only (see "get only" in XPAttributes
       definition), attempting to use XpSetAttributes  generates  a  BadMatch.
       For  attribute  pools  that  are	 writable,  lists of the supported at-
       tributes	can be found in	the XPPrinterAttr pool.

       The lifetime of all attribute pools are bounded by the lifetime of  the
       print  context  they  are  contained in.	When set, all attribute	values
       will be retained	across all Xp operations, until	changed	 by  the  user
       directly, the X Print Server directly, or changed because of a side ef-
       fect when either	the user or X Print Server changed  another  attribute
       value.

       Refer to	a complete description of all print attributes,	the precedence
       between print attributes, and the side effects of setting certain print
       attributes on other print attributes, etc.

       To  monitor  changes  to	the attribute pools, see XpSelectInput and the
       event XPAttributeNotify.	Since a	print  context	can  be	 shared	 among
       clients,	 changes made by one client will be seen by all	others,	and if
       selected	for, the event XPAttributeNotify will be sent to  all  clients
       referencing  the	print context when changes do occur. It	is the respon-
       sibility	of the clients sharing a print context to coordinate their op-
       erations.

STRUCTURES
       The  values  for	 the  typedef XPAttributes in <X11/extensions/Print.h>
       are:

	   #define XPJobAttr	     1	  /* get/set */
	   #define XPDocAttr	     2	  /* get/set */
	   #define XPPageAttr	     3	  /* get/set - subset of XPDocAttr */
	   #define XPPrinterAttr     4	  /* get only (library)	*/
	   #define XPServerAttr	     5	  /* get only (library), no context needed */

       The  values  for	  the	typedef	  XPAttrReplacement   in   <X11/exten-
       sions/Print.h> are:

	   #define XPAttrReplace     1
	   #define XPAttrMerge	     2

DIAGNOSTICS
       BadAlloc	      Insufficient memory.

       BadMatch	      The attribute pool specified by pool cannot be set.

       BadValue	      The value	specified for type is not valid.

       XPBadContext   The specified print context-id is	not valid.

       XPBadSequence  A	 request  to  set an attribute pool occurred at	a time
		      when the attribute pool could not	be modified (for exam-
		      ple,  modifying  XPJobAttr immediately after calling Xp-
		      StartJob).

FILES
       <X11/extensions/Print.h>
SEE ALSO
       XpSelectInput(3Xp), XpStartJob(3Xp)

X Version 11			  libXp	1.0.3		  XpSetAttributes(3Xp)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | STRUCTURES | DIAGNOSTICS | FILES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=XpSetAttributes&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help