VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/windef16.h@ 23571

Last change on this file since 23571 was 16477, checked in by vboxsync, 16 years ago

LGPL disclaimer by filemuncher

  • Property svn:eol-style set to native
File size: 4.9 KB
Line 
1/*
2 * Basic type definitions for 16 bit variations on Windows types.
3 * These types are provided mostly to insure compatibility with
4 * 16 bit windows code.
5 *
6 * Copyright (C) the Wine project
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 */
22
23/*
24 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
25 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
26 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
27 * a choice of LGPL license versions is made available with the language indicating
28 * that LGPLv2 or any later version may be used, or where a choice of which version
29 * of the LGPL is applied is otherwise unspecified.
30 */
31
32#ifndef __WINE_WINDEF16_H
33#define __WINE_WINDEF16_H
34
35#ifndef RC_INVOKED
36#include <stdarg.h>
37#endif
38#include <windef.h>
39#include <winbase.h>
40
41/* Standard data types */
42
43typedef unsigned short BOOL16;
44typedef DWORD SEGPTR;
45
46typedef UINT16 HANDLE16;
47typedef HANDLE16 *LPHANDLE16;
48
49typedef UINT16 WPARAM16;
50typedef INT16 *LPINT16;
51typedef UINT16 *LPUINT16;
52
53typedef WORD CATCHBUF[9];
54typedef WORD *LPCATCHBUF;
55
56#define MAKESEGPTR(seg,off) ((SEGPTR)MAKELONG(off,seg))
57#define SELECTOROF(ptr) (HIWORD(ptr))
58#define OFFSETOF(ptr) (LOWORD(ptr))
59
60typedef WORD *VA_LIST16;
61
62#define __VA_ROUNDED16(type) \
63 ((sizeof(type) + sizeof(WORD) - 1) / sizeof(WORD) * sizeof(WORD))
64#define VA_ARG16(list,type) \
65 (((list) = (VA_LIST16)((char *)(list) + __VA_ROUNDED16(type))), \
66 *((type *)(void *)((char *)(list) - __VA_ROUNDED16(type))))
67
68#define HFILE_ERROR16 ((HFILE16)-1)
69
70#define DECLARE_HANDLE16(a) \
71 typedef HANDLE16 a##16; \
72 typedef a##16 *P##a##16; \
73 typedef a##16 *NP##a##16; \
74 typedef a##16 *LP##a##16
75
76DECLARE_HANDLE16(HACMDRIVERID);
77DECLARE_HANDLE16(HACMDRIVER);
78DECLARE_HANDLE16(HACMOBJ);
79DECLARE_HANDLE16(HACMSTREAM);
80DECLARE_HANDLE16(HMETAFILEPICT);
81
82DECLARE_HANDLE16(HACCEL);
83DECLARE_HANDLE16(HBITMAP);
84DECLARE_HANDLE16(HBRUSH);
85DECLARE_HANDLE16(HCOLORSPACE);
86DECLARE_HANDLE16(HCURSOR);
87DECLARE_HANDLE16(HDC);
88DECLARE_HANDLE16(HDROP);
89DECLARE_HANDLE16(HDRVR);
90DECLARE_HANDLE16(HDWP);
91DECLARE_HANDLE16(HENHMETAFILE);
92DECLARE_HANDLE16(HFILE);
93DECLARE_HANDLE16(HFONT);
94DECLARE_HANDLE16(HICON);
95DECLARE_HANDLE16(HINSTANCE);
96DECLARE_HANDLE16(HKEY);
97DECLARE_HANDLE16(HMENU);
98DECLARE_HANDLE16(HMETAFILE);
99DECLARE_HANDLE16(HMIDI);
100DECLARE_HANDLE16(HMIDIIN);
101DECLARE_HANDLE16(HMIDIOUT);
102DECLARE_HANDLE16(HMIDISTRM);
103DECLARE_HANDLE16(HMIXER);
104DECLARE_HANDLE16(HMIXEROBJ);
105DECLARE_HANDLE16(HMMIO);
106DECLARE_HANDLE16(HPALETTE);
107DECLARE_HANDLE16(HPEN);
108DECLARE_HANDLE16(HQUEUE);
109DECLARE_HANDLE16(HRGN);
110DECLARE_HANDLE16(HRSRC);
111DECLARE_HANDLE16(HTASK);
112DECLARE_HANDLE16(HWAVE);
113DECLARE_HANDLE16(HWAVEIN);
114DECLARE_HANDLE16(HWAVEOUT);
115DECLARE_HANDLE16(HWINSTA);
116DECLARE_HANDLE16(HDESK);
117DECLARE_HANDLE16(HWND);
118DECLARE_HANDLE16(HKL);
119DECLARE_HANDLE16(HIC);
120DECLARE_HANDLE16(HRASCONN);
121#undef DECLARE_HANDLE16
122
123typedef HINSTANCE16 HMODULE16;
124typedef HANDLE16 HGDIOBJ16;
125typedef HANDLE16 HGLOBAL16;
126typedef HANDLE16 HLOCAL16;
127
128#include <pshpack1.h>
129
130/* The SIZE structure */
131
132typedef struct
133{
134 INT16 cx;
135 INT16 cy;
136} SIZE16, *PSIZE16, *LPSIZE16;
137
138/* The POINT structure */
139
140typedef struct
141{
142 INT16 x;
143 INT16 y;
144} POINT16, *PPOINT16, *LPPOINT16;
145
146/* The RECT structure */
147
148typedef struct
149{
150 INT16 left;
151 INT16 top;
152 INT16 right;
153 INT16 bottom;
154} RECT16, *LPRECT16;
155
156#include <poppack.h>
157
158/* Callback function pointers types */
159
160typedef LRESULT (CALLBACK *DRIVERPROC16)(DWORD,HDRVR16,UINT16,LPARAM,LPARAM);
161typedef BOOL16 (CALLBACK *DLGPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
162typedef INT16 (CALLBACK *EDITWORDBREAKPROC16)(LPSTR,INT16,INT16,INT16);
163typedef LRESULT (CALLBACK *FARPROC16)();
164typedef INT16 (CALLBACK *PROC16)();
165typedef BOOL16 (CALLBACK *GRAYSTRINGPROC16)(HDC16,LPARAM,INT16);
166typedef LRESULT (CALLBACK *HOOKPROC16)(INT16,WPARAM16,LPARAM);
167typedef BOOL16 (CALLBACK *PROPENUMPROC16)(HWND16,SEGPTR,HANDLE16);
168typedef VOID (CALLBACK *TIMERPROC16)(HWND16,UINT16,UINT16,DWORD);
169typedef LRESULT (CALLBACK *WNDENUMPROC16)(HWND16,LPARAM);
170typedef LRESULT (CALLBACK *WNDPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
171
172#endif /* __WINE_WINDEF16_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette