1//
2// "$Id: ppdc-mediasize.cxx 1380 2009-04-08 03:20:50Z msweet $"
3//
4//   Shared media size class for the CUPS PPD Compiler.
5//
6//   Copyright 2007-2009 by Apple Inc.
7//   Copyright 2002-2005 by Easy Software Products.
8//
9//   These coded instructions, statements, and computer programs are the
10//   property of Apple Inc. and are protected by Federal copyright
11//   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
12//   which should have been included with this file.  If this file is
13//   file is missing or damaged, see the license at "http://www.cups.org/".
14//
15// Contents:
16//
17//   ppdcMediaSize::ppdcMediaSize()  - Create a new media size.
18//   ppdcMediaSize::~ppdcMediaSize() - Destroy a media size.
19//
20
21//
22// Include necessary headers...
23//
24
25#include "ppdc-private.h"
26
27
28//
29// 'ppdcMediaSize::ppdcMediaSize()' - Create a new media size.
30//
31
32ppdcMediaSize::ppdcMediaSize(const char *n,	// I - Name of media size
33                             const char *t,	// I - Text of media size
34			     float      w,	// I - Width in points
35			     float      l,	// I - Length in points
36                             float      lm,	// I - Left margin in points
37			     float      bm,	// I - Bottom margin in points
38			     float      rm,	// I - Right margin in points
39			     float      tm,	// I - Top margin in points
40			     const char *sc,	// I - PageSize code, if any
41			     const char *rc)	// I - PageRegion code, if any
42  : ppdcShared()
43{
44  PPDC_NEW;
45
46  name        = new ppdcString(n);
47  text        = new ppdcString(t);
48  width       = w;
49  length      = l;
50  left        = lm;
51  bottom      = bm;
52  right       = rm;
53  top         = tm;
54  size_code   = new ppdcString(sc);
55  region_code = new ppdcString(rc);
56
57  if (left < 0.0f)
58    left = 0.0f;
59  if (bottom < 0.0f)
60    bottom = 0.0f;
61  if (right < 0.0f)
62    right = 0.0f;
63  if (top < 0.0f)
64    top = 0.0f;
65}
66
67
68//
69// 'ppdcMediaSize::~ppdcMediaSize()' - Destroy a media size.
70//
71
72ppdcMediaSize::~ppdcMediaSize()
73{
74  PPDC_DELETE;
75
76  name->release();
77  text->release();
78  size_code->release();
79  region_code->release();
80}
81
82
83//
84// End of "$Id: ppdc-mediasize.cxx 1380 2009-04-08 03:20:50Z msweet $".
85//
86