| /* |
| * "$Id: custom.c 6649 2007-07-11 21:46:42Z mike $" |
| * |
| * PPD custom option routines for the Common UNIX Printing System (CUPS). |
| * |
| * Copyright 2007 by Apple Inc. |
| * Copyright 1997-2006 by Easy Software Products, all rights reserved. |
| * |
| * These coded instructions, statements, and computer programs are the |
| * 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. |
| * |
| * This code and any derivative of it may be used and distributed |
| * freely under the terms of the GNU General Public License when |
| * used with GNU Ghostscript or its derivatives. Use of the code |
| * (or any derivative of it) with software other than GNU |
| * GhostScript (or its derivatives) is governed by the CUPS license |
| * agreement. |
| * |
| * This file is subject to the Apple OS-Developed Software exception. |
| * |
| * Contents: |
| * |
| * ppdFindCustomOption() - Find a custom option. |
| * ppdFindCustomParam() - Find a parameter for a custom option. |
| * ppdFirstCustomParam() - Return the first parameter for a custom option. |
| * ppdNextCustomParam() - Return the next parameter for a custom option. |
| */ |
| |
| /* |
| * Include necessary headers. |
| */ |
| |
| #include "globals.h" |
| #include "debug.h" |
| |
| |
| /* |
| * 'ppdFindCustomOption()' - Find a custom option. |
| * |
| * @since CUPS 1.2@ |
| */ |
| |
| ppd_coption_t * /* O - Custom option or NULL */ |
| ppdFindCustomOption(ppd_file_t *ppd, /* I - PPD file */ |
| const char *keyword)/* I - Custom option name */ |
| { |
| ppd_coption_t key; /* Custom option search key */ |
| |
| |
| if (!ppd) |
| return (NULL); |
| |
| strlcpy(key.keyword, keyword, sizeof(key.keyword)); |
| return ((ppd_coption_t *)cupsArrayFind(ppd->coptions, &key)); |
| } |
| |
| |
| /* |
| * 'ppdFindCustomParam()' - Find a parameter for a custom option. |
| * |
| * @since CUPS 1.2@ |
| */ |
| |
| ppd_cparam_t * /* O - Custom parameter or NULL */ |
| ppdFindCustomParam(ppd_coption_t *opt, /* I - Custom option */ |
| const char *name) /* I - Parameter name */ |
| { |
| ppd_cparam_t key; /* Custom parameter search key */ |
| |
| |
| if (!opt) |
| return (NULL); |
| |
| strlcpy(key.name, name, sizeof(key.name)); |
| return ((ppd_cparam_t *)cupsArrayFind(opt->params, &key)); |
| } |
| |
| |
| /* |
| * 'ppdFirstCustomParam()' - Return the first parameter for a custom option. |
| * |
| * @since CUPS 1.2@ |
| */ |
| |
| ppd_cparam_t * /* O - Custom parameter or NULL */ |
| ppdFirstCustomParam(ppd_coption_t *opt) /* I - Custom option */ |
| { |
| if (!opt) |
| return (NULL); |
| |
| return ((ppd_cparam_t *)cupsArrayFirst(opt->params)); |
| } |
| |
| |
| /* |
| * 'ppdNextCustomParam()' - Return the next parameter for a custom option. |
| * |
| * @since CUPS 1.2@ |
| */ |
| |
| ppd_cparam_t * /* O - Custom parameter or NULL */ |
| ppdNextCustomParam(ppd_coption_t *opt) /* I - Custom option */ |
| { |
| if (!opt) |
| return (NULL); |
| |
| return ((ppd_cparam_t *)cupsArrayNext(opt->params)); |
| } |
| |
| |
| /* |
| * End of "$Id: custom.c 6649 2007-07-11 21:46:42Z mike $". |
| */ |