xref: /AOO41X/main/vcl/inc/os2/wingdi.h (revision ade2b05a1c2d31fe6020a7a3fb69616cef563962)
1*ade2b05aSYuri Dario /**************************************************************
2*ade2b05aSYuri Dario  *
3*ade2b05aSYuri Dario  * Licensed to the Apache Software Foundation (ASF) under one
4*ade2b05aSYuri Dario  * or more contributor license agreements.  See the NOTICE file
5*ade2b05aSYuri Dario  * distributed with this work for additional information
6*ade2b05aSYuri Dario  * regarding copyright ownership.  The ASF licenses this file
7*ade2b05aSYuri Dario  * to you under the Apache License, Version 2.0 (the
8*ade2b05aSYuri Dario  * "License"); you may not use this file except in compliance
9*ade2b05aSYuri Dario  * with the License.  You may obtain a copy of the License at
10*ade2b05aSYuri Dario  *
11*ade2b05aSYuri Dario  *   http://www.apache.org/licenses/LICENSE-2.0
12*ade2b05aSYuri Dario  *
13*ade2b05aSYuri Dario  * Unless required by applicable law or agreed to in writing,
14*ade2b05aSYuri Dario  * software distributed under the License is distributed on an
15*ade2b05aSYuri Dario  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ade2b05aSYuri Dario  * KIND, either express or implied.  See the License for the
17*ade2b05aSYuri Dario  * specific language governing permissions and limitations
18*ade2b05aSYuri Dario  * under the License.
19*ade2b05aSYuri Dario  *
20*ade2b05aSYuri Dario  *************************************************************/
21*ade2b05aSYuri Dario 
22*ade2b05aSYuri Dario 
23*ade2b05aSYuri Dario 
24fc9fd3f1SPedro Giffuni #ifndef _WINGDI_
25fc9fd3f1SPedro Giffuni #define _WINGDI_
26fc9fd3f1SPedro Giffuni 
27fc9fd3f1SPedro Giffuni typedef struct tagPOINT
28fc9fd3f1SPedro Giffuni {
29fc9fd3f1SPedro Giffuni     LONG  x;
30fc9fd3f1SPedro Giffuni     LONG  y;
31fc9fd3f1SPedro Giffuni } POINT, *PPOINT, *LPPOINT;
32fc9fd3f1SPedro Giffuni 
33fc9fd3f1SPedro Giffuni 
34fc9fd3f1SPedro Giffuni typedef unsigned long DWORD;
35fc9fd3f1SPedro Giffuni typedef unsigned short WORD;
36fc9fd3f1SPedro Giffuni typedef struct
37fc9fd3f1SPedro Giffuni {
38fc9fd3f1SPedro Giffuni     WORD    fract;
39fc9fd3f1SPedro Giffuni     SHORT   value;
40fc9fd3f1SPedro Giffuni } W32FIXED;
41fc9fd3f1SPedro Giffuni 
42fc9fd3f1SPedro Giffuni typedef struct tagPOINTFX
43fc9fd3f1SPedro Giffuni {
44fc9fd3f1SPedro Giffuni 	W32FIXED x;
45fc9fd3f1SPedro Giffuni 	W32FIXED y;
46fc9fd3f1SPedro Giffuni } POINTFX, *LPPOINTFX;
47fc9fd3f1SPedro Giffuni 
48fc9fd3f1SPedro Giffuni typedef struct tagTTPOLYCURVE
49fc9fd3f1SPedro Giffuni {
50fc9fd3f1SPedro Giffuni 	WORD wType;
51fc9fd3f1SPedro Giffuni 	WORD cpfx;
52fc9fd3f1SPedro Giffuni 	POINTFX apfx[1];
53fc9fd3f1SPedro Giffuni } TTPOLYCURVE, *LPTTPOLYCURVE;
54fc9fd3f1SPedro Giffuni 
55fc9fd3f1SPedro Giffuni typedef struct tagTTPOLYGONHEADER
56fc9fd3f1SPedro Giffuni {
57fc9fd3f1SPedro Giffuni 	DWORD cb;
58fc9fd3f1SPedro Giffuni 	DWORD dwType;
59fc9fd3f1SPedro Giffuni 	POINTFX pfxStart;
60fc9fd3f1SPedro Giffuni } TTPOLYGONHEADER, *LPTTPOLYGONHEADER;
61fc9fd3f1SPedro Giffuni 
62fc9fd3f1SPedro Giffuni typedef struct
63fc9fd3f1SPedro Giffuni {
64fc9fd3f1SPedro Giffuni     UINT	gmBlackBoxX;
65fc9fd3f1SPedro Giffuni     UINT	gmBlackBoxY;
66fc9fd3f1SPedro Giffuni     POINT	gmptGlyphOrigin;
67fc9fd3f1SPedro Giffuni     SHORT	gmCellIncX;
68fc9fd3f1SPedro Giffuni     SHORT	gmCellIncY;
69fc9fd3f1SPedro Giffuni } GLYPHMETRICS, *LPGLYPHMETRICS;
70fc9fd3f1SPedro Giffuni 
71fc9fd3f1SPedro Giffuni #define GGO_METRICS         0
72fc9fd3f1SPedro Giffuni #define GGO_BITMAP          1
73fc9fd3f1SPedro Giffuni #define GGO_NATIVE          2
74fc9fd3f1SPedro Giffuni #define GGO_BEZIER          3
75fc9fd3f1SPedro Giffuni #define GGO_GRAY2_BITMAP    4
76fc9fd3f1SPedro Giffuni #define GGO_GRAY4_BITMAP    5
77fc9fd3f1SPedro Giffuni #define GGO_GRAY8_BITMAP    6
78fc9fd3f1SPedro Giffuni #define GGO_GLYPH_INDEX     0x80
79fc9fd3f1SPedro Giffuni 
80fc9fd3f1SPedro Giffuni #define TT_PRIM_LINE    1
81fc9fd3f1SPedro Giffuni #define TT_PRIM_QSPLINE 2
82fc9fd3f1SPedro Giffuni #define TT_PRIM_CSPLINE 3
83fc9fd3f1SPedro Giffuni #define TT_POLYGON_TYPE 24
84fc9fd3f1SPedro Giffuni 
85fc9fd3f1SPedro Giffuni typedef struct
86fc9fd3f1SPedro Giffuni {
87fc9fd3f1SPedro Giffuni      W32FIXED  eM11;
88fc9fd3f1SPedro Giffuni      W32FIXED  eM12;
89fc9fd3f1SPedro Giffuni      W32FIXED  eM21;
90fc9fd3f1SPedro Giffuni      W32FIXED  eM22;
91fc9fd3f1SPedro Giffuni } MAT2, *LPMAT2;
92fc9fd3f1SPedro Giffuni 
93fc9fd3f1SPedro Giffuni #endif // _WINGDI_
94