Index of Section 3 Manual Pages

Interix / SUAXpSetAttributes.3Interix / SUA

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 

       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 representing 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  dis-
       carded  and  replaced  with pool. For XPAttrMerge, pool is
       merged into  the  existing  attribute  pool;  pre-existing
       name-value pairs are replaced, 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 afterwards.

       When setting supported attribute names, the X Print Server
       and associated driver will validate  the  new  values  and
       ignore  those  that  are  invalid;  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 modify other associated attributes.  For  exam-
       ple, considering the XPPrinterAttr attribute document-for-
       mats-supported, setting the XPDocAttr attribute  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   XpSetAt-
       tributes  generates  a  BadMatch. For attribute pools that
       are writable, lists of the  supported  attributes  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 effect
       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 XpSelectIn-
       put 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 coordi-
       nate their operations.

STRUCTURES
       The  values  for  the  typedef XPAttributes in  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
        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 example,  modifying  XPJo-
                      bAttr     immediately     after     calling
                      XpStartJob).

FILES
       
SEE ALSO
       XpSelectInput(3Xp), XpStartJob(3Xp)





X Version 11               libXp 1.0.0       XpSetAttributes(3Xp)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA