diff options
author | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-07-03 05:38:29 +0000 |
---|---|---|
committer | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-07-03 05:38:29 +0000 |
commit | 4509bb49335b3edfdb1b03d83d6cd05890968b59 (patch) | |
tree | ddaed95be285a8c010203ca908b7ebeb66056cc2 /ppdc | |
parent | 75bd9771f6e44fdd887ee90faac46f403aefc0fc (diff) | |
download | cups-4509bb49335b3edfdb1b03d83d6cd05890968b59.tar.gz |
Merge changes from CUPS 1.4svn-r7715.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@834 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'ppdc')
-rw-r--r-- | ppdc/Dependencies | 6 | ||||
-rw-r--r-- | ppdc/Makefile | 37 | ||||
-rw-r--r-- | ppdc/drv.cxx | 438 | ||||
-rw-r--r-- | ppdc/ppdc-catalog.cxx | 22 | ||||
-rw-r--r-- | ppdc/ppdc-driver.cxx | 11 | ||||
-rw-r--r-- | ppdc/ppdc-file.cxx | 12 | ||||
-rw-r--r-- | ppdc/ppdc-source.cxx | 13 | ||||
-rw-r--r-- | ppdc/ppdc.h | 6 | ||||
-rw-r--r-- | ppdc/sample.drv | 68 | ||||
-rw-r--r-- | ppdc/testcatalog.cxx | 63 |
10 files changed, 164 insertions, 512 deletions
diff --git a/ppdc/Dependencies b/ppdc/Dependencies index b5f4d4bac..624f0b214 100644 --- a/ppdc/Dependencies +++ b/ppdc/Dependencies @@ -51,10 +51,6 @@ ppdc-string.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h ppdc-string.o: ../cups/versioning.h ppdc-variable.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h ppdc-variable.o: ../cups/versioning.h -drv.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h -drv.o: ../cups/versioning.h ../cups/cups.h ../cups/ipp.h ../cups/http.h -drv.o: ../cups/string.h ../cups/ppd.h ../cups/array.h ../cups/file.h -drv.o: ../cups/language.h ../cups/dir.h ppdc.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h ppdc.o: ../cups/versioning.h ppdhtml.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h @@ -66,3 +62,5 @@ ppdmerge.o: ../cups/string.h ../cups/ppd.h ../cups/array.h ../cups/file.h ppdmerge.o: ../cups/language.h ../cups/array.h ../cups/string.h ../config.h ppdpo.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h ppdpo.o: ../cups/versioning.h +testcatalog.o: ppdc.h ../cups/string.h ../config.h ../cups/file.h +testcatalog.o: ../cups/versioning.h diff --git a/ppdc/Makefile b/ppdc/Makefile index fc0fbc885..34f8a61e0 100644 --- a/ppdc/Makefile +++ b/ppdc/Makefile @@ -46,24 +46,24 @@ LIBOBJS = \ ppdc-variable.o OBJS = \ $(LIBOBJS) \ - drv.o \ ppdc.o \ ppdhtml.o \ ppdi.o \ ppdmerge.o \ - ppdpo.o + ppdpo.o \ + testcatalog.o LIBTARGETS = \ $(LIBCUPSPPDC) \ libcupsppdc.a \ ppdc-static TARGETS = \ $(LIBTARGETS) \ - drv \ ppdc \ ppdhtml \ ppdi \ ppdmerge \ - ppdpo + ppdpo \ + testcatalog # @@ -115,9 +115,6 @@ install: all install-data install-headers install-libs install-exec install-data: $(INSTALL_DIR) $(DATADIR)/drv $(INSTALL_DATA) sample.drv $(DATADIR)/drv - if test `uname` = Darwin; then \ - $(INSTALL_DIR) /Library/Printers/PPDs.drv; \ - fi # @@ -132,8 +129,6 @@ install-exec: $(INSTALL_BIN) ppdi $(BINDIR) $(INSTALL_BIN) ppdmerge $(BINDIR) $(INSTALL_BIN) ppdpo $(BINDIR) - $(INSTALL_DIR) $(SERVERBIN)/driver - $(INSTALL_BIN) drv $(SERVERBIN)/driver if test "x$(SYMROOT)" != "x"; then \ $(INSTALL_DIR) $(SYMROOT); \ for file in $(TARGETS); do \ @@ -189,13 +184,8 @@ uninstall: $(RM) $(BINDIR)/ppdi $(RM) $(BINDIR)/ppdmerge $(RM) $(BINDIR)/ppdpo - $(RM) $(SERVERBIN)/driver/drv - $(RMDIR) $(SERVERBIN)/driver $(RM) $(DATADIR)/drv/sample.drv $(RMDIR) $(DATADIR)/drv - if test `uname` = Darwin; then \ - $(RMDIR) /Library/Printers/PPDs.drv; \ - fi $(RM) $(LIBDIR)/libcupsppdc.1.dylib $(RM) $(LIBDIR)/libcupsppdc.a $(RM) $(LIBDIR)/libcupsppdc.dylib @@ -230,15 +220,6 @@ framedhelp: # -# drv, the CUPS driver interface program to the PPD compiler. -# - -drv: drv.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS) - echo Linking $@... - $(CXX) $(LDFLAGS) -o $@ drv.o -L. -lcupsppdc $(LIBS) - - -# # ppdc, the PPD compiler. # @@ -293,6 +274,16 @@ ppdpo: ppdpo.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS) # +# testcatalog, test ppdcCatalog class. +# + +testcatalog: testcatalog.o libcupsppdc.a ../cups/libcups.a + echo Linking $@... + $(CXX) $(LDFLAGS) -o $@ testcatalog.o libcupsppdc.a \ + ../cups/libcups.a $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ) + + +# # libcupsppdc.so.1, libcupsppdc.sl.1 # diff --git a/ppdc/drv.cxx b/ppdc/drv.cxx deleted file mode 100644 index 8c0aec6c9..000000000 --- a/ppdc/drv.cxx +++ /dev/null @@ -1,438 +0,0 @@ -// -// "$Id$" -// -// DDK driver interface main entry for the CUPS PPD Compiler. -// -// Copyright 2007-2008 by Apple Inc. -// Copyright 2002-2006 by Easy Software Products. -// -// 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/". -// -// Contents: -// -// main() - Enumerate or display PPD files. -// cat_ppd() - Display a PPD file. -// list_ppds() - List PPDs. -// - -// -// Include necessary headers... -// - -#include "ppdc.h" -#include <cups/cups.h> -#include <cups/dir.h> -#include <sys/stat.h> -#include <sys/types.h> - - -// -// Local functions... -// - -static int cat_ppd(ppdcSource *src, const char *name); -static int list_drvs(const char *pathname, const char *prefix); -static int list_ppds(ppdcSource *src, const char *name); - - -// -// 'main()' - Enumerate or display PPD files. -// - -int // O - Exit status -main(int argc, // I - Number of command-line arguments - char *argv[]) // I - Command-line arguments -{ - const char *datadir; // CUPS_DATADIR - ppdcSource *src; // PPD source file data - char filename[1024], // Full path to .drv file(s) - scheme[32], // URI scheme ("drv") - userpass[256], // User/password info (unused) - host[2], // Hostname (unused) - resource[1024], // Resource path (/dir/to/filename.drv) - *pc_file_name; // Filename portion of URI - int port, // Port number (unused) - status; // Exit status - - - // Determine where CUPS has installed the data files... - if ((datadir = getenv("CUPS_DATADIR")) == NULL) - datadir = CUPS_DATADIR; - - // List all available PPDs or cat a single PPD... - if (argc == 2 && !strcmp(argv[1], "list")) - { -#ifdef __APPLE__ - if (!access("/Library/Printers/PPDs.drv", 0)) - list_drvs("/Library/Printers/PPDs.drv", "/Library/Printers/PPDs.drv"); -#endif // __APPLE__ - - snprintf(filename, sizeof(filename), "%s/drv", datadir); - return (list_drvs(filename, "/")); - } - else if (argc == 3 && !strcmp(argv[1], "cat")) - { - httpSeparateURI(HTTP_URI_CODING_ALL, argv[2], scheme, sizeof(scheme), - userpass, sizeof(userpass), host, sizeof(host), &port, - resource, sizeof(resource)); - - if (strstr(resource, "../") || - (pc_file_name = strrchr(resource, '/')) == NULL || - pc_file_name == resource) - { - fprintf(stderr, "ERROR: Bad driver info URI \"%s\"!\n", argv[2]); - return (1); - } - - *pc_file_name++ = '\0'; - -#ifdef __APPLE__ - if (!strncmp(resource, "/Library/Printers/PPDs.drv/", 27)) - strlcpy(filename, resource, sizeof(filename)); - else -#endif // __APPLE__ - - snprintf(filename, sizeof(filename), "%s/drv%s", datadir, resource); - - src = new ppdcSource(filename); - - status = cat_ppd(src, pc_file_name); - - delete src; - - return (status); - } - - fprintf(stderr, "ERROR: Usage: %s cat URI\n", argv[0]); - fprintf(stderr, "ERROR: Usage: %s list\n", argv[0]); - - return (1); -} - - -// -// 'cat_ppd()' - Display a PPD file. -// - -static int // O - Exit status -cat_ppd(ppdcSource *src, // I - Driver info file - const char *name) // I - PC filename -{ - ppdcDriver *d; // Current driver - cups_file_t *out; // Stdout via CUPS file API - - - for (d = (ppdcDriver *)src->drivers->first(); - d; - d = (ppdcDriver *)src->drivers->next()) - if (!strcmp(name, d->pc_file_name->value)) - { - out = cupsFileStdout(); - - d->write_ppd_file(out, NULL, NULL, src, PPDC_LFONLY); - cupsFileClose(out); - return (0); - } - - return (1); -} - - -// -// 'list_drvs()' - List all drv files in the given path... -// - -static int // O - Exit status -list_drvs(const char *pathname, // I - Full path to directory - const char *prefix) // I - Prefix for directory -{ - char *ext, // Extension on file - filename[1024], // Full path to .drv file(s) - newprefix[1024]; // New prefix for directory - cups_dir_t *dir; // Current directory - cups_dentry_t *dent; // Current directory entry - - - if ((dir = cupsDirOpen(pathname)) == NULL) - return (1); - - while ((dent = cupsDirRead(dir)) != NULL) - { - // Skip "dot" files... - if (dent->filename[0] == '.') - continue; - - // See if this is a file or directory... - snprintf(filename, sizeof(filename), "%s/%s", pathname, dent->filename); - - if (S_ISDIR(dent->fileinfo.st_mode)) - { - // Descend into the subdirectory... - snprintf(newprefix, sizeof(newprefix), "%s%s/", prefix, dent->filename); - - if (list_drvs(filename, newprefix)) - { - cupsDirClose(dir); - return (1); - } - } - else if ((ext = strrchr(dent->filename, '.')) != NULL && - (!strcmp(ext, ".drv") || !strcmp(ext, ".drv.gz"))) - { - // List the PPDs in this driver info file... - ppdcSource *src = new ppdcSource(filename); - // Driver info file - - snprintf(newprefix, sizeof(newprefix), "%s%s", prefix, dent->filename); - list_ppds(src, newprefix); - delete src; - } - } - - cupsDirClose(dir); - - return (0); -} - - -// -// 'list_ppds()' - List PPDs in a driver info file. -// - -static int // O - Exit status -list_ppds(ppdcSource *src, // I - Driver info file - const char *name) // I - Name of driver info file -{ - ppdcDriver *d; // Current driver - ppdcAttr *attr; // 1284DeviceID attribute - char uri[1024]; // Driver URI - - - for (d = (ppdcDriver *)src->drivers->first(); - d; - d = (ppdcDriver *)src->drivers->next()) - { - httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "drv", "", "", 0, - "%s/%s", name, d->pc_file_name->value); - - attr = d->find_attr("1284DeviceID", NULL); - - printf("\"%s\" en \"%s\" \"%s\" \"%s\"\n", uri, d->manufacturer->value, - d->model_name->value, attr ? attr->value->value : ""); - } - - return (0); -} - - - - -#if 0 - - - - // Scan the command-line... - catalog = NULL; - outdir = "ppd"; - src = 0; - verbose = 0; - locales = NULL; - comp = PPDC_NO_COMPRESSION; - le = PPDC_LFONLY; - - for (i = 1; i < argc; i ++) - if (argv[i][0] == '-') - { - for (opt = argv[i] + 1; *opt; opt ++) - switch (*opt) - { - case 'c' : // Message catalog... - i ++; - if (i >= argc) - usage(); - - if (verbose > 1) - printf("ppdc: Loading messages from \"%s\"...\n", argv[i]); - - if (!catalog) - catalog = new ppdcCatalog("en"); - - if (catalog->load_messages(argv[i])) - { - fprintf(stderr, - "ppdc: Unable to load localization file \"%s\" - %s\n", - argv[i], strerror(errno)); - return (1); - } - break; - - case 'd' : // Output directory... - i ++; - if (i >= argc) - usage(); - - if (verbose > 1) - printf("ppdc: Writing PPD files to directory \"%s\"...\n", - argv[i]); - - outdir = argv[i]; - break; - - case 'l' : // Language(s)... - i ++; - if (i >= argc) - usage(); - - if (strchr(argv[i], ',')) - { - // Comma-delimited list of languages... - char temp[1024], // Copy of language list - *start, // Start of current locale name - *end; // End of current locale name - - - locales = new ppdcArray(); - - strlcpy(temp, argv[i], sizeof(temp)); - for (start = temp; *start; start = end) - { - if ((end = strchr(start, ',')) != NULL) - *end++ = '\0'; - else - end = start + strlen(start); - - if (end > start) - locales->add(new ppdcString(start)); - } - } - else - { - if (verbose > 1) - printf("ppdc: Loading messages for locale \"%s\"...\n", - argv[i]); - - if (catalog) - delete catalog; - - catalog = new ppdcCatalog(argv[i]); - - if (catalog->messages->count == 0) - { - fprintf(stderr, - "ppdc: Unable to find localization for \"%s\" - %s\n", - argv[i], strerror(errno)); - return (1); - } - } - break; - - case 'I' : // Include directory... - i ++; - if (i >= argc) - usage(); - - if (verbose > 1) - printf("ppdc: Adding include directory \"%s\"...\n", argv[i]); - - ppdcSource::add_include(argv[i]); - break; - - case 'v' : // Be verbose... - verbose ++; - break; - - case 'z' : // Compress files... - comp = PPDC_GZIP_COMPRESSION; - break; - - case '-' : // --option - if (!strcmp(opt, "-lf")) - { - le = PPDC_LFONLY; - opt += strlen(opt) - 1; - break; - } - else if (!strcmp(opt, "-cr")) - { - le = PPDC_CRONLY; - opt += strlen(opt) - 1; - break; - } - else if (!strcmp(opt, "-crlf")) - { - le = PPDC_CRLF; - opt += strlen(opt) - 1; - break; - } - - default : // Unknown - usage(); - break; - } - } - else - { - // Open and load the driver info file... - if (verbose > 1) - printf("ppdc: Loading driver information file \"%s\"...\n", argv[i]); - - src = new ppdcSource(argv[i]); - - // Create the output directory... - if (mkdir(outdir, 0777)) - { - if (errno != EEXIST) - { - fprintf(stderr, "ppdc: Unable to create output directory %s: %s\n", - outdir, strerror(errno)); - return (1); - } - } - - // Write PPD files... - for (d = (ppdcDriver *)src->drivers->first(); - d; - d = (ppdcDriver *)src->drivers->next()) - { - // Write the PPD file for this driver... - for (j = 0; d->pc_file_name->value[j]; j ++) - pcfilename[j] = tolower(d->pc_file_name->value[j]); - - pcfilename[j] = '\0'; - - if (comp == PPDC_GZIP_COMPRESSION) - snprintf(filename, sizeof(filename), "%s/%s.gz", outdir, pcfilename); - else - snprintf(filename, sizeof(filename), "%s/%s", outdir, pcfilename); - - if (verbose) - printf("ppdc: Writing %s...\n", filename); - - if (d->write_ppd_file(filename, catalog, locales, src, le, comp)) - return (1); - } - - // Delete the printer driver information... - delete src; - } - - if (catalog) - delete catalog; - - // If no drivers have been loaded, display the program usage message. - if (!src) - usage(); - - // Return with no errors. - return (0); -} -#endif // 0 - - -// -// End of "$Id$". -// diff --git a/ppdc/ppdc-catalog.cxx b/ppdc/ppdc-catalog.cxx index db9528e6d..2701f7b94 100644 --- a/ppdc/ppdc-catalog.cxx +++ b/ppdc/ppdc-catalog.cxx @@ -210,13 +210,19 @@ ppdcCatalog::load_messages( if ((ch = get_utf16(fp, cs)) == 0) break; - if (ch == 'n') + if (ch == 'n') ch = '\n'; else if (ch == 't') ch = '\t'; } + else if (ch == '\"') + { + *ptr = '\0'; + ptr = NULL; + } - put_utf8(ch, ptr, end); + if (ptr) + put_utf8(ch, ptr, end); } else if (ch == '/') { @@ -247,13 +253,8 @@ ppdcCatalog::load_messages( } else if (ch == '\"') { - // Start or finish quoted string... - if (ptr) - { - *ptr = '\0'; - ptr = NULL; - } - else if (id[0]) + // Start quoted string... + if (id[0]) { ptr = str; end = str + sizeof(str) - 1; @@ -697,7 +698,8 @@ get_utf16(cups_file_t *fp, // I - File to read from if (cs == PPDC_CS_UTF8) { // UTF-8 character... - ch = cupsFileGetChar(fp); + if ((ch = cupsFileGetChar(fp)) < 0) + return (0); if ((ch & 0xe0) == 0xc0) { diff --git a/ppdc/ppdc-driver.cxx b/ppdc/ppdc-driver.cxx index a369ed686..fa0a8a6eb 100644 --- a/ppdc/ppdc-driver.cxx +++ b/ppdc/ppdc-driver.cxx @@ -541,10 +541,17 @@ ppdcDriver::write_ppd_file( !strcmp(a->name->value, "ModelName") || !strcmp(a->name->value, "NickName") || !strcmp(a->name->value, "ShortNickName") || - !strcmp(a->name->value, "cupsVersion") || - a->name->value[0] == '?') + !strcmp(a->name->value, "cupsVersion")) continue; + if (a->name->value[0] == '?' && + (find_option(a->name->value + 1) || + !strcmp(a->name->value, "?ImageableArea") || + !strcmp(a->name->value, "?PageRegion") || + !strcmp(a->name->value, "?PageSize") || + !strcmp(a->name->value, "?PaperDimension"))) + continue; + if (!a->selector->value || !a->selector->value[0]) cupsFilePrintf(fp, "*%s", a->name->value); else if (!a->text->value || !a->text->value[0]) diff --git a/ppdc/ppdc-file.cxx b/ppdc/ppdc-file.cxx index 3af0e4975..29f109ce2 100644 --- a/ppdc/ppdc-file.cxx +++ b/ppdc/ppdc-file.cxx @@ -31,9 +31,17 @@ // 'ppdcFile::ppdcFile()' - Create (open) a file. // -ppdcFile::ppdcFile(const char *f) // I - File to open +ppdcFile::ppdcFile(const char *f, // I - File to open + cups_file_t *ffp) // I - File pointer to use { - fp = cupsFileOpen(f, "r"); + if (ffp) + { + fp = ffp; + cupsFileRewind(fp); + } + else + fp = cupsFileOpen(f, "r"); + filename = f; line = 1; diff --git a/ppdc/ppdc-source.cxx b/ppdc/ppdc-source.cxx index ac64a1a30..92a42f11d 100644 --- a/ppdc/ppdc-source.cxx +++ b/ppdc/ppdc-source.cxx @@ -91,7 +91,8 @@ const char *ppdcSource::driver_types[] = // 'ppdcSource::ppdcSource()' - Load a driver source file. // -ppdcSource::ppdcSource(const char *f) // I - File to read +ppdcSource::ppdcSource(const char *f, // I - File to read + cups_file_t *ffp)// I - File pointer to use { filename = new ppdcString(f); base_fonts = new ppdcArray(); @@ -104,7 +105,7 @@ ppdcSource::ppdcSource(const char *f) // I - File to read cond_stack[0] = PPDC_COND_NORMAL; if (f) - read_file(f); + read_file(f, ffp); } @@ -1616,7 +1617,8 @@ ppdcSource::get_po(ppdcFile *fp) // I - File to read strcpy(basedir, "."); // Find the po file... - if (find_include(poname, basedir, pofilename, sizeof(pofilename))) + if (!pofilename[0] || + find_include(poname, basedir, pofilename, sizeof(pofilename))) { // Found it, so load it... cat = new ppdcCatalog(locale, pofilename); @@ -2284,9 +2286,10 @@ ppdcSource::quotef(cups_file_t *fp, // I - File to write to // void -ppdcSource::read_file(const char *f) // I - File to read +ppdcSource::read_file(const char *f, // I - File to read + cups_file_t *ffp) // I - File pointer to use { - ppdcFile *fp = new ppdcFile(f); + ppdcFile *fp = new ppdcFile(f, ffp); scan_file(fp); delete fp; diff --git a/ppdc/ppdc.h b/ppdc/ppdc.h index 40bb9f5b0..1d849c1ad 100644 --- a/ppdc/ppdc.h +++ b/ppdc/ppdc.h @@ -413,7 +413,7 @@ class ppdcFile //// File const char *filename; // Filename int line; // Line in file - ppdcFile(const char *f); + ppdcFile(const char *f, cups_file_t *ffp = (cups_file_t *)0); ~ppdcFile(); int get(); @@ -439,7 +439,7 @@ class ppdcSource //// Source File cond_stack[101]; // #if state stack - ppdcSource(const char *f = 0); + ppdcSource(const char *f = 0, cups_file_t *ffp = (cups_file_t *)0); ~ppdcSource(); static void add_include(const char *d); @@ -478,7 +478,7 @@ class ppdcSource //// Source File ppdcVariable *get_variable(ppdcFile *fp); int import_ppd(const char *f); int quotef(cups_file_t *fp, const char *format, ...); - void read_file(const char *f); + void read_file(const char *f, cups_file_t *ffp = (cups_file_t *)0); void scan_file(ppdcFile *fp, ppdcDriver *td = 0, bool inc = false); ppdcVariable *set_variable(const char *name, const char *value); int write_file(const char *f); diff --git a/ppdc/sample.drv b/ppdc/sample.drv index 20a86e57b..d5698359e 100644 --- a/ppdc/sample.drv +++ b/ppdc/sample.drv @@ -3,7 +3,7 @@ // // Driver info file for CUPS-supplied PPDs. // -// Copyright 2007 by Apple Inc. +// Copyright 2007-2008 by Apple Inc. // Copyright 1993-2006 by Easy Software Products. // // These coded instructions, statements, and computer programs are the @@ -20,6 +20,29 @@ #include <epson.h> #include <label.h> +// Localizations are provided for all of the base languages supported by +// CUPS... +#po da "" +#po de "" +#po es "" +#po et "" +#po fi "" +#po fr "" +#po he "" +#po id "" +#po it "" +#po ja "" +#po ko "" +#po nl "" +#po no "" +#po pl "" +#po pt "" +#po pt_BR "" +#po ru "" +#po sv "" +#po zh "" +#po zh_TW "" + // MediaSize sizes used by label drivers... #media "w81h252/Address - 1 1/8 x 3 1/2\"" 81 252 #media "w101h252/Large Address - 1 4/10 x 3 1/2\"" 101 252 @@ -92,14 +115,9 @@ Attribute "cupsVersion" "" "1.4" Attribute "FileSystem" "" "False" Attribute "LandscapeOrientation" "" "Plus90" -Attribute "LanguageLevel" "" "3" -Attribute "Product" "" "(ESP Ghostscript)" -Attribute "Product" "" "(GPL Ghostscript)" -Attribute "PSVersion" "" "(3010.000) 81504" -Attribute "PSVersion" "" "(3010.000) 860" Attribute "TTRasterizer" "" "Type42" -Copyright "Copyright 2007 by Apple Inc." +Copyright "Copyright 2007-2008 by Apple Inc." Copyright "Copyright 1997-2007 by Easy Software Products." Copyright "" Copyright "These coded instructions, statements, and computer programs are the" @@ -116,7 +134,7 @@ Version "1.4" { Manufacturer "Dymo" ModelName "Label Printer" - PCFileName "DYMO.PPD" + PCFileName "dymo.ppd" DriverType label ModelNumber $DYMO_3x0 Throughput 8 @@ -167,7 +185,7 @@ Version "1.4" // Epson 24-Pin Series { ModelName "24-Pin Series" - PCFileName "EPSON24.PPD" + PCFileName "epson24.ppd" ModelNumber $EPSON_24PIN Resolution k 1 8 0 0 60dpi @@ -180,7 +198,7 @@ Version "1.4" // Epson 9-Pin Series { ModelName "9-Pin Series" - PCFileName "EPSON9.PPD" + PCFileName "epson9.ppd" ModelNumber $EPSON_9PIN ColorDevice No @@ -192,7 +210,7 @@ Version "1.4" // Epson Stylus Color Series { ModelName "Stylus Color Series" - PCFileName "STCOLOR.PPD" + PCFileName "stcolor.ppd" ModelNumber $EPSON_COLOR ColorDevice Yes @@ -212,7 +230,7 @@ Version "1.4" // Epson New Stylus Color Series { ModelName "New Stylus Color Series" - PCFileName "STCOLOR2.PPD" + PCFileName "stcolor2.ppd" ModelNumber $EPSON_ICOLOR ColorDevice Yes @@ -232,7 +250,7 @@ Version "1.4" // Epson Stylus Color Series { ModelName "Stylus Photo Series" - PCFileName "STPHOTO.PPD" + PCFileName "stphoto.ppd" ModelNumber $EPSON_PHOTO ColorDevice Yes @@ -252,7 +270,7 @@ Version "1.4" // Epson New Stylus Color Series { ModelName "New Stylus Photo Series" - PCFileName "STPHOTO2.PPD" + PCFileName "stphoto2.ppd" ModelNumber $EPSON_IPHOTO ColorDevice Yes @@ -279,7 +297,7 @@ Version "1.4" DriverType hp ModelName "PCL Laser Printer" - PCFileName "GENERPCL.PPD" + PCFileName "generpcl.ppd" Throughput 8 ModelNumber $HP_LASERJET ColorDevice No @@ -329,7 +347,7 @@ Version "1.4" DriverType ps ModelName "PostScript Printer" - PCFileName "GENERIC.PPD" + PCFileName "generic.ppd" Throughput 8 ColorDevice No Attribute PSVersion "" "(2016.0) 0" @@ -370,7 +388,7 @@ Version "1.4" // HP DeskJet Series { ModelName "DeskJet Series" - PCFileName "DESKJET.PPD" + PCFileName "deskjet.ppd" ModelNumber $HP_DESKJET ManualCopies Yes ColorDevice Yes @@ -423,7 +441,7 @@ Version "1.4" // HP LaserJet Series PCL 4/5 { ModelName "LaserJet Series PCL 4/5" - PCFileName "LASERJET.PPD" + PCFileName "laserjet.ppd" Throughput 8 ModelNumber $HP_LASERJET ColorDevice No @@ -475,7 +493,7 @@ Version "1.4" Manufacturer "Intellitech" ModelName "IntelliBar Label Printer" Attribute ShortNickName "" "Intellibar Label Printer" - PCFileName "INTELBAR.PPD" + PCFileName "intelbar.ppd" DriverType label ModelNumber $INTELLITECH_PCL Throughput 8 @@ -600,7 +618,7 @@ Version "1.4" // Oki 24-Pin Series { ModelName "24-Pin Series" - PCFileName "OKIDAT24.PPD" + PCFileName "okidat24.ppd" ModelNumber $EPSON_24PIN Resolution k 1 8 0 0 60dpi @@ -613,7 +631,7 @@ Version "1.4" // Oki 9-Pin Series { ModelName "9-Pin Series" - PCFileName "OKIDATA9.PPD" + PCFileName "okidata9.ppd" ModelNumber $EPSON_9PIN ColorDevice No @@ -634,7 +652,7 @@ Version "1.4" // Zebra CPCL Label Printer { ModelName "CPCL Label Printer" - PCFileName "ZEBRACPL.PPD" + PCFileName "zebracpl.ppd" ModelNumber $ZEBRA_CPCL HWMargins 0 0 0 0 @@ -763,7 +781,7 @@ Version "1.4" // Zebra EPL1 Label Printer { ModelName "EPL1 Label Printer" - PCFileName "ZEBRAEP1.PPD" + PCFileName "zebraep1.ppd" ModelNumber $ZEBRA_EPL_LINE HWMargins 0 0 0 0 @@ -860,7 +878,7 @@ Version "1.4" // Zebra EPL2 Label Printer { ModelName "EPL2 Label Printer" - PCFileName "ZEBRAEP2.PPD" + PCFileName "zebraep2.ppd" ModelNumber $ZEBRA_EPL_PAGE HWMargins 0 0 0 0 @@ -966,7 +984,7 @@ Version "1.4" // Zebra ZPL Label Printer { ModelName "ZPL Label Printer" - PCFileName "ZEBRA.PPD" + PCFileName "zebra.ppd" ModelNumber $ZEBRA_ZPL HWMargins 0 0 0 0 diff --git a/ppdc/testcatalog.cxx b/ppdc/testcatalog.cxx new file mode 100644 index 000000000..808738d90 --- /dev/null +++ b/ppdc/testcatalog.cxx @@ -0,0 +1,63 @@ +// +// "$Id$" +// +// Test program for message catalog class. +// +// Copyright 2008 by Apple Inc. +// +// 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/". +// +// Contents: +// +// main() - Open a message catalog +// + +// +// Include necessary headers... +// + +#include "ppdc.h" + + +// +// 'main()' - Open a message catalog +// + +int // O - Exit status +main(int argc, // I - Number of command-line arguments + char *argv[]) // I - Command-line arguments +{ + ppdcCatalog *catalog; // Message catalog + ppdcMessage *m; // Current message + + + if (argc != 2) + { + puts("Usage: testcatalog filename"); + return (1); + } + + // Scan the command-line... + catalog = new ppdcCatalog(NULL, argv[1]); + + printf("%s: %d messages\n", argv[1], catalog->messages->count); + + for (m = (ppdcMessage *)catalog->messages->first(); + m; + m = (ppdcMessage *)catalog->messages->next()) + printf("%s: %s\n", m->id->value, m->string->value); + + delete catalog; + + // Return with no errors. + return (0); +} + + +// +// End of "$Id$". +// |