]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/ppd.h
Load cups into easysw/current.
[thirdparty/cups.git] / cups / ppd.h
index 5d944af964cc9cf1d55db58372087d200c8c0a94..cd67a51fc084f2b13ac18c2b5bfc405a4fd40025 100644 (file)
@@ -1,26 +1,17 @@
 /*
- * "$Id: ppd.h 5119 2006-02-16 15:52:06Z mike $"
+ * "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $"
  *
  *   PostScript Printer Description definitions for the Common UNIX Printing
  *   System (CUPS).
  *
- *   Copyright 1997-2006 by Easy Software Products, all rights reserved.
+ *   Copyright 2007 by Apple Inc.
+ *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
- *   property of Easy Software Products and are protected by Federal
- *   copyright law.  Distribution and use rights are outlined in the file
- *   "LICENSE.txt" which should have been included with this file.  If this
- *   file is missing or damaged please contact Easy Software Products
- *   at:
- *
- *       Attn: CUPS Licensing Information
- *       Easy Software Products
- *       44141 Airport View Drive, Suite 204
- *       Hollywood, Maryland 20636 USA
- *
- *       Voice: (301) 373-9600
- *       EMail: cups-info@cups.org
- *         WWW: http://www.cups.org
+ *   property of Apple Inc. and are protected by Federal copyright
+ *   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
+ *   which should have been included with this file.  If this file is
+ *   file is missing or damaged, see the license at "http://www.cups.org/".
  *
  *   PostScript is a trademark of Adobe Systems, Inc.
  *
@@ -127,7 +118,7 @@ typedef enum ppd_status_e           /**** Status Codes @since CUPS 1.1.19@ ****/
   PPD_BAD_CUSTOM_PARAM                 /* Bad custom parameter */
 } ppd_status_t;
 
-typedef enum ppd_conform_e             /**** Conformance Levels ****/
+typedef enum ppd_conform_e             /**** Conformance Levels @since CUPS 1.1.19@ ****/
 {
   PPD_CONFORM_RELAXED,                 /* Relax whitespace and control char */
   PPD_CONFORM_STRICT                   /* Require strict conformance */
@@ -232,6 +223,18 @@ typedef enum ppd_cptype_e          /**** Custom Parameter Type @since CUPS 1.2@ ****/
   PPD_CUSTOM_STRING                    /* String of characters */
 } ppd_cptype_t;
 
+typedef union ppd_cplimit_u            /**** Custom Parameter Limit @since CUPS 1.2@ ****/
+{
+  float                custom_curve;           /* Gamma value */
+  int          custom_int;             /* Integer value */
+  float                custom_invcurve;        /* Gamma value */
+  int          custom_passcode;        /* Passcode length */
+  int          custom_password;        /* Password length */
+  float                custom_points;          /* Measurement value */
+  float                custom_real;            /* Real value */
+  int          custom_string;          /* String length */
+} ppd_cplimit_t;
+
 typedef union ppd_cpvalue_u            /**** Custom Parameter Value @since CUPS 1.2@ ****/
 {
   float                custom_curve;           /* Gamma value */
@@ -250,9 +253,9 @@ typedef struct ppd_cparam_s         /**** Custom Parameter @since CUPS 1.2@ ****/
   char         text[PPD_MAX_TEXT];     /* Human-readable text */
   int          order;                  /* Order (0 to N) */
   ppd_cptype_t type;                   /* Parameter type */
-  ppd_cpvalue_t        minimum,                /* Minimum value */
-               maximum,                /* Maximum value */
-               current;                /* Current value */
+  ppd_cplimit_t        minimum,                /* Minimum value */
+               maximum;                /* Maximum value */
+  ppd_cpvalue_t        current;                /* Current value */
 } ppd_cparam_t;
 
 typedef struct ppd_coption_s           /**** Custom Option @since CUPS 1.2@ ****/
@@ -306,7 +309,7 @@ typedef struct ppd_file_s           /**** PPD File ****/
   char         **filters;              /* Filter strings... */
 
   /**** New in CUPS 1.1 ****/
-  int          flip_duplex;            /* 1 = Flip page for back sides @since CUPS 1.1@ */
+  int          flip_duplex;            /* 1 = Flip page for back sides @deprecated@ */
 
   /**** New in CUPS 1.1.19 ****/
   char         *protocols;             /* Protocols (BCP, TBCP) string @since CUPS 1.1.19@ */
@@ -319,6 +322,9 @@ typedef struct ppd_file_s           /**** PPD File ****/
   cups_array_t *sorted_attrs;          /* Attribute lookup array @since CUPS 1.2@ @private@ */
   cups_array_t *options;               /* Option lookup array @since CUPS 1.2@ @private@ */
   cups_array_t *coptions;              /* Custom options array @since CUPS 1.2@ @private@ */
+
+  /**** New in CUPS 1.3 ****/
+  cups_array_t *marked;                /* Marked choices @since CUPS 1.3@ @private@ */
 } ppd_file_t;
 
 
@@ -369,6 +375,8 @@ extern int          ppdEmitAfterOrder(ppd_file_t *ppd, FILE *fp,
                                          ppd_section_t section, int limit,
                                          float min_order);
 extern int             ppdEmitJCLEnd(ppd_file_t *ppd, FILE *fp);
+extern char            *ppdEmitString(ppd_file_t *ppd, ppd_section_t section,
+                                      float min_order);
 extern ppd_coption_t   *ppdFindCustomOption(ppd_file_t *ppd,
                                             const char *keyword);
 extern ppd_cparam_t    *ppdFindCustomParam(ppd_coption_t *opt,
@@ -380,6 +388,12 @@ extern ppd_option_t        *ppdNextOption(ppd_file_t *ppd);
 extern int             ppdLocalize(ppd_file_t *ppd);
 extern ppd_file_t      *ppdOpen2(cups_file_t *fp);
 
+/**** New in CUPS 1.3 ****/
+extern const char      *ppdLocalizeIPPReason(ppd_file_t *ppd,
+                                             const char *reason,
+                                             const char *scheme,
+                                             char *buffer, size_t bufsize);
+
 
 /*
  * C++ magic...
@@ -391,5 +405,5 @@ extern ppd_file_t   *ppdOpen2(cups_file_t *fp);
 #endif /* !_CUPS_PPD_H_ */
 
 /*
- * End of "$Id: ppd.h 5119 2006-02-16 15:52:06Z mike $".
+ * End of "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $".
  */