Add GNU LGPL headers to all .c .C and .h files
[oweals/cde.git] / cde / lib / DtPrint / PrintOptionsP.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these librararies and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /* $XConsortium: PrintOptionsP.h /main/2 1996/03/12 09:28:04 drk $ */
24
25 #ifndef _DT_PRINT_OPTIONSP_H
26 #define _DT_PRINT_OPTIONSP_H
27
28 /*
29  *+SNOTICE
30  *
31  *      $:$
32  *
33  *      RESTRICTED CONFIDENTIAL INFORMATION:
34  *      
35  *      The information in this document is subject to special
36  *      restrictions in a confidential disclosure agreement between
37  *      HP, IBM, Sun, USL, SCO and Univel.  Do not distribute this
38  *      document outside HP, IBM, Sun, USL, SCO, or Univel without
39  *      Sun's specific written approval.  This document and all copies
40  *      and derivative works thereof must be returned or destroyed at
41  *      Sun's request.
42  *
43  *      Copyright 1994 Sun Microsystems, Inc.  All rights reserved.
44  *
45  *+ENOTICE
46  */
47 /*
48                                                                    
49                      Common Desktop Environment
50
51    (c) Copyright 1993, 1994, 1995 Hewlett-Packard Company
52    (c) Copyright 1993, 1994, 1995 International Business Machines Corp.
53    (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc.
54    (c) Copyright 1993, 1994, 1995 Novell, Inc.
55    (c) Copyright 1995 Digital Equipment Corp.
56    (c) Copyright 1995 Fujitsu Limited
57    (c) Copyright 1995 Hitachi, Ltd.
58                                                                    
59
60                      RESTRICTED RIGHTS LEGEND                              
61
62 Use, duplication, or disclosure by the U.S. Government is subject to
63 restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in
64 Technical Data and Computer Software clause in DFARS 252.227-7013.  Rights
65 for non-DOD U.S. Government Departments and Agencies are as set forth in
66 FAR 52.227-19(c)(1,2).
67
68 Hewlett-Packard Company, 3000 Hanover Street, Palo Alto, CA 94304 U.S.A.
69 International Business Machines Corp., Route 100, Somers, NY 10589 U.S.A. 
70 Sun Microsystems, Inc., 2550 Garcia Avenue, Mountain View, CA 94043 U.S.A.
71 Novell, Inc., 190 River Road, Summit, NJ 07901 U.S.A.
72 Digital Equipment Corp., 111 Powdermill Road, Maynard, Massachusetts 01754, U.S.A.
73 Fujitsu Limited, 1015, Kamikodanaka Nakahara-Ku, Kawasaki 211, Japan
74 Hitachi, Ltd., 6, Kanda Surugadai 4-Chome, Chiyoda-ku, Tokyo 101, Japan
75  */
76
77 #ifdef __cplusplus
78 extern "C" {
79 #endif
80
81 /*
82  * Message Catalog Lookup
83  */
84 #define DTPO_MARGIN_FRAME_LABEL DTPRINT_GETMESSAGE( \
85     MS_PrintOptionsSet, DTPO_MARGINS, _DtPrMsgPrintOption_0000)
86 #define DTPO_MARGIN_FRAME_TOP_MARGIN_LABEL DTPRINT_GETMESSAGE( \
87     MS_PrintOptionsSet, DTPO_TOP, _DtPrMsgPrintOption_0001)
88 #define DTPO_MARGIN_FRAME_RIGHT_MARGIN_LABEL DTPRINT_GETMESSAGE( \
89     MS_PrintOptionsSet, DTPO_RIGHT, _DtPrMsgPrintOption_0002)
90 #define DTPO_MARGIN_FRAME_BOTTOM_MARGIN_LABEL DTPRINT_GETMESSAGE( \
91     MS_PrintOptionsSet, DTPO_BOTTOM, _DtPrMsgPrintOption_0003)
92 #define DTPO_MARGIN_FRAME_LEFT_MARGIN_LABEL DTPRINT_GETMESSAGE( \
93     MS_PrintOptionsSet, DTPO_LEFT, _DtPrMsgPrintOption_0004)
94
95 #define DTPO_HEADERFOOTER_FRAME_LABEL DTPRINT_GETMESSAGE( \
96     MS_PrintOptionsSet, DTPO_HEADERS_N_FOOTERS, _DtPrMsgPrintOption_0005)
97 #define DTPO_HEADERFOOTER_FRAME_TOP_LEFT_LABEL DTPRINT_GETMESSAGE( \
98     MS_PrintOptionsSet, DTPO_TOP_LEFT, _DtPrMsgPrintOption_0006)
99 #define DTPO_HEADERFOOTER_FRAME_TOP_RIGHT_LABEL DTPRINT_GETMESSAGE( \
100     MS_PrintOptionsSet, DTPO_TOP_RIGHT, _DtPrMsgPrintOption_0007)
101 #define DTPO_HEADERFOOTER_FRAME_BOTTOM_LEFT_LABEL DTPRINT_GETMESSAGE( \
102     MS_PrintOptionsSet, DTPO_BOTTOM_LEFT, _DtPrMsgPrintOption_0008)
103 #define DTPO_HEADERFOOTER_FRAME_BOTTOM_RIGHT_LABEL DTPRINT_GETMESSAGE( \
104     MS_PrintOptionsSet, DTPO_BOTTOM_RIGHT, _DtPrMsgPrintOption_0009)
105     
106
107 /*
108  * Header/Footer Frame API
109  */
110 typedef enum {
111     DTPRINT_OPTION_HEADER_LEFT,
112     DTPRINT_OPTION_HEADER_RIGHT,
113     DTPRINT_OPTION_FOOTER_LEFT,
114     DTPRINT_OPTION_FOOTER_RIGHT
115 } _DtPrintHdrFtrEnum;
116
117 extern Widget _DtPrintCreateHdrFtrFrame(
118         Widget                  parent,
119         int                     nspecs,
120         char                    **spec_strings,
121         void                    **spec_data
122         );
123
124 extern Widget _DtPrintHdrFtrFrameEnumToWidget(
125         Widget                  frame,
126         _DtPrintHdrFtrEnum      which
127         );
128
129 extern void _DtPrintHdrFtrFrameMenuWidgets(
130         Widget                  frame,
131         Widget                  *menu,
132         int                     *nmenu_buttons,
133         Widget                  **menu_buttons
134         );
135
136 extern void *_DtPrintGetHdrFtrData(
137         Widget                  widget
138         );
139
140 extern int _DtPrintGetHdrFtrIndex(
141         Widget                  widget
142         );
143
144 extern char *_DtPrintGetHdrFtrString(
145         Widget                  widget
146         );
147
148 extern void _DtPrintSetHdrFtrByData(
149         Widget                  widget,
150         void                    *data
151         );
152
153 extern void _DtPrintSetHdrFtrByIndex(
154         Widget                  widget,
155         int                     index
156         );
157
158 extern void _DtPrintSetHdrFtrByString(
159         Widget                  widget,
160         char                    *string
161         );
162
163
164 /*
165  * Margin Frame API
166  */
167 typedef enum {
168     DTPRINT_OPTION_MARGIN_TOP,
169     DTPRINT_OPTION_MARGIN_RIGHT,
170     DTPRINT_OPTION_MARGIN_BOTTOM,
171     DTPRINT_OPTION_MARGIN_LEFT
172 } _DtPrintMarginEnum;
173
174 extern Widget _DtPrintCreateMarginFrame(
175         Widget                  parent
176         );
177
178 extern Widget _DtPrintMarginFrameEnumToWidget(
179         Widget                  frame,
180         _DtPrintMarginEnum      which
181         );
182
183 extern char* _DtPrintGetMarginSpec(
184         Widget                  margin
185         );
186
187 extern void _DtPrintSetMarginSpec(
188         Widget                  margin,
189         char                    *spec
190         );
191
192
193
194 #ifdef __cplusplus
195 }  /* Close scope of 'extern "C"' declaration which encloses file. */
196 #endif
197
198 #endif /* _DT_PRINT_OPTIONSP_H */
199 /* DON'T ADD ANYTHING AFTER THIS #endif */