1 /* BEGIN INCLUDE FILE ... iod_forms_info_tab.incl.pl1 */
 2 
 3 /****^  HISTORY COMMENTS:
 4   1) change(88-02-18,Brunelle), approve(88-08-31,MCR7911),
 5      audit(88-10-12,Wallman), install(88-10-28,MR12.2-1199):
 6      Created.
 7                                                    END HISTORY COMMENTS */
 8 
 9 /* format: style4 */
10 
11 dcl  ifitp ptr;
12 dcl  1 iod_forms_info_tab aligned based (ifitp),
13        2 n_groups fixed bin (17) unaligned,                 /* number of forms_info groups defined */
14        2 n_words fixed bin (17) unaligned,                  /* number of words in forms element data area */
15        2 element_data_block (1 refer (iod_forms_info_tab.n_words)) fixed bin (35),
16        2 groups (1 refer (iod_forms_info_tab.n_groups)),
17          3 name char (32) unaligned,                        /* forms info group name */
18          3 comment unaligned like text_offset,              /* offset to comment string in text_strings */
19          3 first_element_index fixed bin (17) unaligned;    /* index in element_data_block of 1st element in group */
20 
21 dcl  fep ptr;                                               /* forms element ptr */
22 dcl  1 element_common aligned based (fep),
23        2 type fixed bin (8) unaligned,                      /* type of element */
24        2 n_names fixed bin (8) unaligned,                   /* number of names on element */
25        2 next_element_index fixed bin (17) unaligned,       /* index in element_data_block of next element in group */
26        2 comment unaligned like text_offset,                /* comment for element */
27        2 names (1 refer (element_common.n_names)) unaligned like text_offset; /* names assigned to the element */
28 
29 dcl  1 orientation_element aligned based (fep),
30        2 common like element_common,
31        2 escape_string unaligned like text_offset,          /* escape string for the element */
32        2 factors (2) fixed bin (17) unaligned,              /* 1=in, 2=cm, 3=pt, 4=lpi */
33        2 height float bin unaligned,                        /* height in points (1/72s inch) */
34        2 width float bin unaligned;                         /* width in points (1/72s inch) */
35 
36 dcl  1 font_element aligned like orientation_element based (fep);
37 
38 dcl  1 font_size_element aligned like orientation_element based (fep);
39 
40 dcl  1 line_element aligned like orientation_element based (fep);
41 
42 dcl  1 holes_element aligned like orientation_element based (fep);
43 
44 dcl  1 font_name_element aligned based (fep),
45        2 common like element_common,
46        2 escape_string unaligned like text_offset;
47 
48 dcl  1 preamble_element aligned like font_name_element based (fep);
49 
50 dcl  1 postamble_element aligned like font_name_element based (fep);
51 
52 dcl  1 uses_element aligned based (fep),
53        2 common like element_common,
54        2 n_indices fixed bin (35) unaligned,
55        2 index_blocks (1 refer (uses_element.n_indices)) unaligned,
56          3 name unaligned like text_offset,
57          3 index fixed bin (35) unaligned;
58 
59 dcl  1 special_element aligned based (fep),
60        2 common like element_common,
61        2 special_string unaligned like text_offset;
62 
63 /* strings for use with element_common.type in forms_info_tab and
64    forms_info.types in forms_info */
65 dcl  FORMS_TYPE_STRINGS (10) char (11) int static options (constant) init (
66           "uses", "font", "font_name", "font_size", "orientation",
67           "line_height", "preamble", "postamble", "holes", "special");
68 
69 /* strings for each of these types are found in FORMS_TYPE_STRINGS */
70 dcl  (TYPE_USES init (1),
71      TYPE_FONT_DESC init (2),
72      TYPE_FONT_NAME init (3),
73      TYPE_FONT_SIZE init (4),
74      TYPE_ORIENTATION init (5),
75      TYPE_LINE_DESC init (6),
76      TYPE_PREAMBLE init (7),
77      TYPE_POSTAMBLE init (8),
78      TYPE_HOLES init (9),
79      TYPE_SPECIAL init (10)
80      ) fixed bin int static options (constant);
81 
82 /* factors for computing points (1/72 inch)
83    1 = inches, 2 = centimeters, 3 = points, 4 = lines/inch */
84 dcl  SIZE_FACTORS (4) float bin (27) int static options (constant)
85           init (72, 28.34646, 1, 72);
86 
87 dcl  (FACTOR_INCHES init (1),
88      FACTOR_CENTIMETERS init (2),
89      FACTOR_POINTS init (3),
90      FACTOR_LPI init (4)) fixed bin int static options (constant);
91 
92 dcl  ORIENTATION_STRINGS (2) char (9) int static options (constant) init ("portrait", "landscape");
93 
94 dcl  (PORTRAIT_ORIENTATION init (1),
95      LANDSCAPE_ORIENTATION init (2)) fixed bin int static options (constant);
96 
97 /* END INCLUDE FILE ... iod_forms_info_tab.incl.pl1 */