2003-11-14 16:54:54 +01:00
|
|
|
/* $Xorg: RasterAttVal.c,v 1.4 2001/03/14 18:46:34 pookie Exp $ */
|
|
|
|
/*
|
|
|
|
(c) Copyright 1996 Hewlett-Packard Company
|
|
|
|
(c) Copyright 1996 International Business Machines Corp.
|
|
|
|
(c) Copyright 1996 Sun Microsystems, Inc.
|
|
|
|
(c) Copyright 1996 Novell, Inc.
|
|
|
|
(c) Copyright 1996 Digital Equipment Corp.
|
|
|
|
(c) Copyright 1996 Fujitsu Limited
|
|
|
|
(c) Copyright 1996 Hitachi, Ltd.
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
|
|
in the Software without restriction, including without limitation the rights
|
|
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in
|
|
|
|
all copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
|
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
|
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
|
|
|
|
Except as contained in this notice, the names of the copyright holders shall
|
|
|
|
not be used in advertising or otherwise to promote the sale, use or other
|
|
|
|
dealings in this Software without prior written authorization from said
|
|
|
|
copyright holders.
|
|
|
|
*/
|
2004-04-23 21:54:30 +02:00
|
|
|
/* $XFree86: xc/programs/Xserver/Xprint/raster/RasterAttVal.c,v 1.3 2001/10/31 22:50:29 tsi Exp $ */
|
2003-11-14 17:49:22 +01:00
|
|
|
|
2003-11-14 16:54:54 +01:00
|
|
|
#include <stdio.h>
|
|
|
|
#include "X.h"
|
|
|
|
#include "misc.h"
|
|
|
|
#include "dixstruct.h"
|
|
|
|
#include "scrnintstr.h"
|
|
|
|
#include "screenint.h"
|
2003-11-14 17:49:22 +01:00
|
|
|
#include <X11/extensions/Print.h>
|
2003-11-14 16:54:54 +01:00
|
|
|
#include "Raster.h"
|
|
|
|
|
|
|
|
#include "attributes.h"
|
|
|
|
#include "AttrValid.h"
|
|
|
|
|
|
|
|
/*
|
|
|
|
* define valid values and defaults for Printer pool
|
|
|
|
*/
|
|
|
|
static XpOid ValidContentOrientationsOids[] = {
|
|
|
|
xpoid_val_content_orientation_portrait,
|
|
|
|
xpoid_val_content_orientation_landscape
|
|
|
|
};
|
|
|
|
static XpOidList ValidContentOrientations = {
|
|
|
|
ValidContentOrientationsOids, XpNumber(ValidContentOrientationsOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid DefaultContentOrientationsOids[] = {
|
|
|
|
xpoid_val_content_orientation_portrait,
|
|
|
|
xpoid_val_content_orientation_landscape
|
|
|
|
};
|
|
|
|
static XpOidList DefaultContentOrientations = {
|
|
|
|
DefaultContentOrientationsOids, XpNumber(DefaultContentOrientationsOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid ValidPlexesOids[] = {
|
|
|
|
xpoid_val_plex_simplex
|
|
|
|
};
|
|
|
|
static XpOidList ValidPlexes = {
|
|
|
|
ValidPlexesOids, XpNumber(ValidPlexesOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid DefaultPlexesOids[] = {
|
|
|
|
xpoid_val_plex_simplex
|
|
|
|
};
|
|
|
|
static XpOidList DefaultPlexes = {
|
|
|
|
DefaultPlexesOids, XpNumber(DefaultPlexesOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static unsigned long ValidPrinterResolutionsCards[] = {
|
|
|
|
150, 300, 600
|
|
|
|
};
|
|
|
|
static XpOidCardList ValidPrinterResolutions = {
|
|
|
|
ValidPrinterResolutionsCards, XpNumber(ValidPrinterResolutionsCards)
|
|
|
|
};
|
|
|
|
|
|
|
|
static unsigned long DefaultPrinterResolutionsCards[] = {
|
|
|
|
300
|
|
|
|
};
|
|
|
|
static XpOidCardList DefaultPrinterResolutions = {
|
|
|
|
DefaultPrinterResolutionsCards, XpNumber(DefaultPrinterResolutionsCards)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid ValidListfontsModesOids[] = {
|
|
|
|
xpoid_val_xp_list_glyph_fonts
|
|
|
|
};
|
|
|
|
static XpOidList ValidListfontsModes = {
|
|
|
|
ValidListfontsModesOids, XpNumber(ValidListfontsModesOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid DefaultListfontsModesOids[] = {
|
|
|
|
xpoid_val_xp_list_glyph_fonts
|
|
|
|
};
|
|
|
|
static XpOidList DefaultListfontsModes = {
|
|
|
|
DefaultListfontsModesOids, XpNumber(DefaultListfontsModesOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid ValidSetupProvisoOids[] = {
|
|
|
|
xpoid_val_xp_setup_mandatory, xpoid_val_xp_setup_optional
|
|
|
|
};
|
|
|
|
static XpOidList ValidSetupProviso = {
|
|
|
|
ValidSetupProvisoOids, XpNumber(ValidSetupProvisoOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmt ValidDocFormatsSupportedFmts[] = {
|
|
|
|
{ "Postscript", "2", NULL },
|
|
|
|
{ "PCL", "3", NULL }
|
|
|
|
};
|
|
|
|
static XpOidDocFmtList ValidDocFormatsSupported = {
|
|
|
|
ValidDocFormatsSupportedFmts, XpNumber(ValidDocFormatsSupportedFmts)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmt DefaultDocFormatsSupportedFmts[] = {
|
|
|
|
{ "Postscript", "2", NULL }
|
|
|
|
};
|
|
|
|
static XpOidDocFmtList DefaultDocFormatsSupported = {
|
|
|
|
DefaultDocFormatsSupportedFmts, XpNumber(DefaultDocFormatsSupportedFmts)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmtList ValidEmbeddedFormatsSupported = {
|
|
|
|
(XpOidDocFmt *)NULL, 0
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmtList DefaultEmbeddedFormatsSupported = {
|
|
|
|
(XpOidDocFmt *)NULL, 0
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmt ValidRawFormatsSupportedFmts[] = {
|
|
|
|
{ "Postscript", "2", NULL },
|
|
|
|
{ "PCL", "3", NULL }
|
|
|
|
};
|
|
|
|
static XpOidDocFmtList ValidRawFormatsSupported = {
|
|
|
|
ValidRawFormatsSupportedFmts, XpNumber(ValidRawFormatsSupportedFmts)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmt DefaultRawFormatsSupportedFmts[] = {
|
|
|
|
{ "Postscript", "2", NULL }
|
|
|
|
};
|
|
|
|
static XpOidDocFmtList DefaultRawFormatsSupported = {
|
|
|
|
DefaultRawFormatsSupportedFmts, XpNumber(DefaultRawFormatsSupportedFmts)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidList ValidInputTrays = {
|
|
|
|
(XpOid *)NULL, 0
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid ValidMediumSizesOids[] = {
|
|
|
|
xpoid_val_medium_size_iso_a0,
|
|
|
|
xpoid_val_medium_size_iso_a1,
|
|
|
|
xpoid_val_medium_size_iso_a2,
|
|
|
|
xpoid_val_medium_size_iso_a3,
|
|
|
|
xpoid_val_medium_size_iso_a4,
|
|
|
|
xpoid_val_medium_size_iso_a5,
|
|
|
|
xpoid_val_medium_size_iso_a6,
|
|
|
|
xpoid_val_medium_size_iso_a7,
|
|
|
|
xpoid_val_medium_size_iso_a8,
|
|
|
|
xpoid_val_medium_size_iso_a9,
|
|
|
|
xpoid_val_medium_size_iso_a10,
|
|
|
|
xpoid_val_medium_size_iso_b0,
|
|
|
|
xpoid_val_medium_size_iso_b1,
|
|
|
|
xpoid_val_medium_size_iso_b2,
|
|
|
|
xpoid_val_medium_size_iso_b3,
|
|
|
|
xpoid_val_medium_size_iso_b4,
|
|
|
|
xpoid_val_medium_size_iso_b5,
|
|
|
|
xpoid_val_medium_size_iso_b6,
|
|
|
|
xpoid_val_medium_size_iso_b7,
|
|
|
|
xpoid_val_medium_size_iso_b8,
|
|
|
|
xpoid_val_medium_size_iso_b9,
|
|
|
|
xpoid_val_medium_size_iso_b10,
|
|
|
|
xpoid_val_medium_size_na_letter,
|
|
|
|
xpoid_val_medium_size_na_legal,
|
|
|
|
xpoid_val_medium_size_executive,
|
|
|
|
xpoid_val_medium_size_folio,
|
|
|
|
xpoid_val_medium_size_invoice,
|
|
|
|
xpoid_val_medium_size_ledger,
|
|
|
|
xpoid_val_medium_size_quarto,
|
|
|
|
xpoid_val_medium_size_iso_c3,
|
|
|
|
xpoid_val_medium_size_iso_c4,
|
|
|
|
xpoid_val_medium_size_iso_c5,
|
|
|
|
xpoid_val_medium_size_iso_c6,
|
|
|
|
xpoid_val_medium_size_iso_designated_long,
|
|
|
|
xpoid_val_medium_size_na_10x13_envelope,
|
|
|
|
xpoid_val_medium_size_na_9x12_envelope,
|
|
|
|
xpoid_val_medium_size_na_number_10_envelope,
|
|
|
|
xpoid_val_medium_size_na_7x9_envelope,
|
|
|
|
xpoid_val_medium_size_na_9x11_envelope,
|
|
|
|
xpoid_val_medium_size_na_10x14_envelope,
|
|
|
|
xpoid_val_medium_size_na_number_9_envelope,
|
|
|
|
xpoid_val_medium_size_monarch_envelope,
|
|
|
|
xpoid_val_medium_size_a,
|
|
|
|
xpoid_val_medium_size_b,
|
|
|
|
xpoid_val_medium_size_c,
|
|
|
|
xpoid_val_medium_size_d,
|
|
|
|
xpoid_val_medium_size_e,
|
|
|
|
xpoid_val_medium_size_jis_b0,
|
|
|
|
xpoid_val_medium_size_jis_b1,
|
|
|
|
xpoid_val_medium_size_jis_b2,
|
|
|
|
xpoid_val_medium_size_jis_b3,
|
|
|
|
xpoid_val_medium_size_jis_b4,
|
|
|
|
xpoid_val_medium_size_jis_b5,
|
|
|
|
xpoid_val_medium_size_jis_b6,
|
|
|
|
xpoid_val_medium_size_jis_b7,
|
|
|
|
xpoid_val_medium_size_jis_b8,
|
|
|
|
xpoid_val_medium_size_jis_b9,
|
|
|
|
xpoid_val_medium_size_jis_b10
|
|
|
|
};
|
|
|
|
static XpOidList ValidMediumSizes = {
|
|
|
|
ValidMediumSizesOids, XpNumber(ValidMediumSizesOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidDocFmt DefaultDocumentFormat = {
|
|
|
|
"Postscript", "2", NULL
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid ValidAvailableCompressionsOids[] = {
|
|
|
|
xpoid_val_available_compressions_0,
|
|
|
|
xpoid_val_available_compressions_01,
|
|
|
|
xpoid_val_available_compressions_02,
|
|
|
|
xpoid_val_available_compressions_03,
|
|
|
|
xpoid_val_available_compressions_012,
|
|
|
|
xpoid_val_available_compressions_013,
|
|
|
|
xpoid_val_available_compressions_023,
|
|
|
|
xpoid_val_available_compressions_0123
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidList ValidAvailableCompressions = {
|
|
|
|
ValidAvailableCompressionsOids, XpNumber(ValidAvailableCompressionsOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOid DefaultAvailableCompressionsOids[] = {
|
|
|
|
xpoid_val_available_compressions_0123,
|
|
|
|
xpoid_val_available_compressions_0
|
|
|
|
};
|
|
|
|
|
|
|
|
static XpOidList DefaultAvailableCompressions = {
|
|
|
|
DefaultAvailableCompressionsOids, XpNumber(DefaultAvailableCompressionsOids)
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* init struct for XpValidate*Pool
|
|
|
|
*/
|
|
|
|
XpValidatePoolsRec RasterValidatePoolsRec = {
|
|
|
|
&ValidContentOrientations, &DefaultContentOrientations,
|
|
|
|
&ValidDocFormatsSupported, &DefaultDocFormatsSupported,
|
|
|
|
&ValidInputTrays, &ValidMediumSizes,
|
|
|
|
&ValidPlexes, &DefaultPlexes,
|
|
|
|
&ValidPrinterResolutions, &DefaultPrinterResolutions,
|
|
|
|
&ValidEmbeddedFormatsSupported, &DefaultEmbeddedFormatsSupported,
|
|
|
|
&ValidListfontsModes, &DefaultListfontsModes,
|
|
|
|
&ValidRawFormatsSupported, &DefaultRawFormatsSupported,
|
|
|
|
&ValidSetupProviso,
|
|
|
|
&DefaultDocumentFormat,
|
|
|
|
&ValidAvailableCompressions, &DefaultAvailableCompressions
|
|
|
|
};
|