source: trunk/include/helpers/gpih.h@ 55

Last change on this file since 55 was 53, checked in by umoeller, 24 years ago

Dialog mgr.

  • Property svn:eol-style set to CRLF
  • Property svn:keywords set to Author Date Id Revision
File size: 9.8 KB
Line 
1
2/*
3 *@@sourcefile gpih.h:
4 * header file for gpih.c (GPI helper functions). See remarks there.
5 *
6 * Note: Version numbering in this file relates to XWorkplace version
7 * numbering.
8 *
9 *@@include #define INCL_GPILOGCOLORTABLE // for some funcs
10 *@@include #include <os2.h>
11 *@@include #include "gpih.h"
12 */
13
14/*
15 * Copyright (C) 1997-2000 Ulrich M”ller.
16 * This file is part of the "XWorkplace helpers" source package.
17 * This is free software; you can redistribute it and/or modify
18 * it under the terms of the GNU General Public License as published
19 * by the Free Software Foundation, in version 2 as it comes in the
20 * "COPYING" file of the XWorkplace main distribution.
21 * This program is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 * GNU General Public License for more details.
25 */
26
27#if __cplusplus
28extern "C" {
29#endif
30
31#ifndef GPIH_HEADER_INCLUDED
32 #define GPIH_HEADER_INCLUDED
33
34 /* ******************************************************************
35 *
36 * Device helpers
37 *
38 ********************************************************************/
39
40 ULONG gpihQueryDisplayCaps(ULONG ulIndex);
41
42 /* ******************************************************************
43 *
44 * Color helpers
45 *
46 ********************************************************************/
47
48 // common RGB colors
49 #define RGBCOL_BLACK 0x00000000
50 #define RGBCOL_WHITE 0x00FFFFFF
51
52 #define RGBCOL_RED 0x00FF0000
53 #define RGBCOL_PINK 0x00FF00FF
54 #define RGBCOL_BLUE 0x000000FF
55 #define RGBCOL_CYAN 0x0000FFFF
56 #define RGBCOL_GREEN 0x0000FF00
57 #define RGBCOL_YELLOW 0x00FFFF00
58 #define RGBCOL_GRAY 0x00CCCCCC
59
60 #define RGBCOL_DARKRED 0x00800000
61 #define RGBCOL_DARKPINK 0x00800080
62 #define RGBCOL_DARKBLUE 0x00000080
63 #define RGBCOL_DARKCYAN 0x00008080
64 #define RGBCOL_DARKGREEN 0x00008000
65 #define RGBCOL_DARKYELLOW 0x00808000
66 #define RGBCOL_DARKGRAY 0x00808080
67
68 VOID XWPENTRY gpihManipulateRGB(PLONG plColor, BYTE bMultiplier, BYTE bDivisor);
69 typedef VOID XWPENTRY GPIHMANIPULATERGB(PLONG plColor, BYTE bMultiplier, BYTE bDivisor);
70 typedef GPIHMANIPULATERGB *PGPIHMANIPULATERGB;
71
72 BOOL XWPENTRY gpihSwitchToRGB(HPS hps);
73 typedef BOOL XWPENTRY GPIHSWITCHTORGB(HPS hps);
74 typedef GPIHSWITCHTORGB *PGPIHSWITCHTORGB;
75
76 /* ******************************************************************
77 *
78 * Drawing primitives helpers
79 *
80 ********************************************************************/
81
82 VOID XWPENTRY gpihDrawRect(HPS hps, PRECTL prcl);
83 typedef VOID XWPENTRY GPIHDRAWRECT(HPS hps, PRECTL prcl);
84 typedef GPIHDRAWRECT *PGPIHDRAWRECT;
85
86 VOID XWPENTRY gpihBox(HPS hps, LONG lControl, PRECTL prcl);
87 typedef VOID XWPENTRY GPIHBOX(HPS hps, LONG lControl, PRECTL prcl);
88 typedef GPIHBOX *PGPIHBOX;
89
90 VOID XWPENTRY gpihMarker(HPS hps, LONG x, LONG y, ULONG ulWidth);
91 typedef VOID XWPENTRY GPIHMARKER(HPS hps, LONG x, LONG y, ULONG ulWidth);
92 typedef GPIHMARKER *PGPIHMARKER;
93
94 VOID XWPENTRY gpihDrawThickFrame(HPS hps, PRECTL prcl, ULONG ulWidth);
95 typedef VOID XWPENTRY GPIHDRAWTHICKFRAME(HPS hps, PRECTL prcl, ULONG ulWidth);
96 typedef GPIHDRAWTHICKFRAME *PGPIHDRAWTHICKFRAME;
97
98 VOID XWPENTRY gpihDraw3DFrame(HPS hps,
99 PRECTL prcl,
100 USHORT usWidth,
101 LONG lColorLeft,
102 LONG lColorRight);
103 typedef VOID XWPENTRY GPIHDRAW3DFRAME(HPS hps,
104 PRECTL prcl,
105 USHORT usWidth,
106 LONG lColorLeft,
107 LONG lColorRight);
108 typedef GPIHDRAW3DFRAME *PGPIHDRAW3DFRAME;
109
110 LONG XWPENTRY gpihCharStringPosAt(HPS hps,
111 PPOINTL pptlStart,
112 PRECTL prclRect,
113 ULONG flOptions,
114 LONG lCount,
115 PCH pchString);
116 typedef LONG XWPENTRY GPIHCHARSTRINGPOSAT(HPS hps,
117 PPOINTL pptlStart,
118 PRECTL prclRect,
119 ULONG flOptions,
120 LONG lCount,
121 PCH pchString);
122 typedef GPIHCHARSTRINGPOSAT *PGPIHCHARSTRINGPOSAT;
123
124 /* ******************************************************************
125 *
126 * Font helpers
127 *
128 ********************************************************************/
129
130 BOOL XWPENTRY gpihSplitPresFont(PSZ pszFontNameSize,
131 PULONG pulSize,
132 PSZ *ppszFaceName);
133 typedef BOOL XWPENTRY GPIHSPLITPRESFONT(PSZ pszFontNameSize,
134 PULONG pulSize,
135 PSZ *ppszFaceName);
136 typedef GPIHSPLITPRESFONT *PGPIHSPLITPRESFONT;
137
138 BOOL XWPENTRY gpihLockLCIDs(VOID);
139 typedef BOOL XWPENTRY GPIHLOCKLCIDS(VOID);
140 typedef GPIHLOCKLCIDS *PGPIHLOCKLCIDS;
141
142 VOID XWPENTRY gpihUnlockLCIDs(VOID);
143 typedef VOID XWPENTRY GPIHUNLOCKLCIDS(VOID);
144 typedef GPIHUNLOCKLCIDS *PGPIHUNLOCKLCIDS;
145
146 LONG XWPENTRY gpihFindFont(HPS hps,
147 LONG lSize,
148 BOOL fFamily,
149 PSZ pszName,
150 USHORT usFormat,
151 PFONTMETRICS pFontMetrics);
152 typedef LONG XWPENTRY GPIHFINDFONT(HPS hps,
153 LONG lSize,
154 BOOL fFamily,
155 PSZ pszName,
156 USHORT usFormat,
157 PFONTMETRICS pFontMetrics);
158 typedef GPIHFINDFONT *PGPIHFINDFONT;
159
160 LONG XWPENTRY gpihFindPresFont(HWND hwnd,
161 BOOL fInherit,
162 HPS hps,
163 const char *pcszDefaultFont,
164 PFONTMETRICS pFontMetrics,
165 PLONG plSize);
166 typedef LONG XWPENTRY GPIHFINDPRESFONT(HWND hwnd,
167 BOOL fInherit,
168 HPS hps,
169 const char *pcszDefaultFont,
170 PFONTMETRICS pFontMetrics,
171 PLONG plSize);
172 typedef GPIHFINDPRESFONT *PGPIHFINDPRESFONT;
173
174 BOOL XWPENTRY gpihSetPointSize(HPS hps, LONG lPointSize);
175 typedef BOOL XWPENTRY GPIHSETPOINTSIZE(HPS hps, LONG lPointSize);
176 typedef GPIHSETPOINTSIZE *PGPIHSETPOINTSIZE;
177
178 LONG XWPENTRY gpihQueryLineSpacing(HPS hps);
179 typedef LONG XWPENTRY GPIHQUERYLINESPACING(HPS hps);
180 typedef GPIHQUERYLINESPACING *PGPIHQUERYLINESPACING;
181
182 /* ******************************************************************
183 *
184 * Bitmap helpers
185 *
186 ********************************************************************/
187
188 BOOL XWPENTRY gpihCreateMemPS(HAB hab, PSIZEL psizlPage, HDC *hdcMem, HPS *hpsMem);
189 typedef BOOL XWPENTRY GPIHCREATEMEMPS(HAB hab, PSIZEL psizlPage, HDC *hdcMem, HPS *hpsMem);
190 typedef GPIHCREATEMEMPS *PGPIHCREATEMEMPS;
191
192 HBITMAP XWPENTRY gpihCreateBitmap(HPS hpsMem, ULONG cx, ULONG cy);
193 typedef HBITMAP XWPENTRY GPIHCREATEBITMAP(HPS hpsMem, ULONG cx, ULONG cy);
194 typedef GPIHCREATEBITMAP *PGPIHCREATEBITMAP;
195
196 HBITMAP XWPENTRY gpihCreateBmpFromPS(HAB hab, HPS hpsScreen, PRECTL prcl);
197 typedef HBITMAP XWPENTRY GPIHCREATEBMPFROMPS(HAB hab, HPS hpsScreen, PRECTL prcl);
198 typedef GPIHCREATEBMPFROMPS *PGPIHCREATEBMPFROMPS;
199
200 HBITMAP XWPENTRY gpihCreateHalftonedBitmap(HAB hab, HBITMAP hbmSource, LONG lColorGray);
201 typedef HBITMAP XWPENTRY GPIHCREATEHALFTONEDBITMAP(HAB hab, HBITMAP hbmSource, LONG lColorGray);
202 typedef GPIHCREATEHALFTONEDBITMAP *PGPIHCREATEHALFTONEDBITMAP;
203
204 HBITMAP XWPENTRY gpihLoadBitmapFile(HPS hps, PSZ pszBmpFile, PULONG pulError);
205 typedef HBITMAP XWPENTRY GPIHLOADBITMAPFILE(HPS hps, PSZ pszBmpFile, PULONG pulError);
206 typedef GPIHLOADBITMAPFILE *PGPIHLOADBITMAPFILE;
207
208 LONG XWPENTRY gpihStretchBitmap(HPS hpsTarget,
209 HBITMAP hbmSource,
210 PRECTL prclSource,
211 PRECTL prclTarget,
212 BOOL fProportional);
213 typedef LONG XWPENTRY GPIHSTRETCHBITMAP(HPS hpsTarget,
214 HBITMAP hbmSource,
215 PRECTL prclSource,
216 PRECTL prclTarget,
217 BOOL fProportional);
218 typedef GPIHSTRETCHBITMAP *PGPIHSTRETCHBITMAP;
219
220 BOOL XWPENTRY gpihIcon2Bitmap(HPS hpsMem, HPOINTER hptr, LONG lBkgndColor, ULONG ulIconSize);
221 typedef BOOL XWPENTRY GPIHICON2BITMAP(HPS hpsMem, HPOINTER hptr, LONG lBkgndColor, ULONG ulIconSize);
222 typedef GPIHICON2BITMAP *PGPIHICON2BITMAP;
223
224#endif
225
226#if __cplusplus
227}
228#endif
229
Note: See TracBrowser for help on using the repository browser.