home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sibdemo3.zip / SOURCE.DAT / SOURCE / WIN32 / WINDEF.PAS < prev    next >
Pascal/Delphi Source File  |  1996-05-03  |  5KB  |  222 lines

  1. UNIT WinDef;
  2.  
  3. {***************************************************************************
  4.  *                                                                         *
  5.  * 32 Bit Windows constants and types for use with Win32 and DAX           *
  6.  *                                                                         *
  7.  *                                                                         *
  8.  ***************************************************************************}
  9.  
  10.  
  11. INTERFACE
  12.  
  13. USES WinNT;
  14.  
  15. TYPE
  16.      PBOOL=^BOOL;
  17.      BOOL=LONGBOOL;
  18.      PULONG=^ULONG;
  19.      ULONG=LONGWORD;
  20.      PLONG=^LONG;
  21.      LONG=LONGINT;
  22.      PSHORT=^SHORT;
  23.      SHORT=INTEGER;
  24.      PUSHORT=^USHORT;
  25.      USHORT=WORD;
  26.      PDWORD=^DWORD;
  27.      DWORD=LONGWORD;
  28.      LPDWORD=PDWORD;
  29.      LARGE_INTEGER=LONGWORD; {??}
  30.      WCHAR=CHAR; {??}
  31.      LPBYTE=^BYTE;
  32.      LPSTR=PCHAR;
  33.      LPCSTR=PChar;
  34.      LPTSTR=PChar; {??}
  35.      LPCTSTR=PChar; {??}
  36.      PUCHAR=^UCHAR;
  37.      UCHAR=BYTE;
  38.      PSZ=PChar;
  39.      PFLOAT=^FLOAT;
  40.      FLOAT=EXTENDED;
  41.      PBYTE=^BYTE;
  42.      WPARAM=ULONG;
  43.      LPARAM=LONG;
  44.      LRESULT=LONG;
  45.      HWND=LONGWORD;
  46.      HHOOK=LONGWORD;
  47.      ATOM=WORD;
  48.      SPHANDLE=^HANDLE;
  49.      LPHANDLE=^HANDLE;
  50.      HGLOBAL=HANDLE;
  51.      HLOCAL=HANDLE;
  52.      {GLOBALHANDLE=HANDLE;
  53.      LOCALHANDLE=HANDLE;}
  54.      HGDIOBJ=HANDLE;
  55.      HACCEL=HANDLE;
  56.      HBITMAP=HANDLE;
  57.      HBRUSH=HANDLE;
  58.      HDC=HANDLE;
  59.      HGLRC=HANDLE;
  60.      HDESK=HANDLE;
  61.      HENHMETAFILE=HANDLE;
  62.      HFONT=HANDLE;
  63.      HICON=HANDLE;
  64.      HMENU=HANDLE;
  65.      HMETAFILE=HANDLE;
  66.      HINSTANCE=HANDLE;
  67.      HMODULE=HINSTANCE;
  68.      HPALETTE=HANDLE;
  69.      HPEN=HANDLE;
  70.      HRGN=HANDLE;
  71.      HRSRC=HANDLE;
  72.      HSTR=HANDLE;
  73.      HTASK=HANDLE;
  74.      HWINSTA=HANDLE;
  75.      HKL=HANDLE;
  76.      HFILE=LONGINT;
  77.      HCURSOR=HICON;
  78.      LPCOLORREF=^COLORREF;
  79.      COLORREF=ULONG;
  80.      PCOLORREF=LPCOLORREF;
  81.  
  82. CONST
  83.      MAX_PATH          = 260;
  84.      NULL              = 0;
  85.      HFILE_ERROR       =-1;
  86.  
  87. TYPE
  88.     PRECT=^RECT;
  89.     RECT=RECORD
  90.                left:LONG;
  91.                top:LONG;
  92.                right:LONG;
  93.                bottom:LONG;
  94.          END;
  95.     NPRECT=PRECT;
  96.     LPRECT=PRECT;
  97.  
  98.     PRECTL=^RECTL;
  99.     RECTL=RECORD
  100.                 left:LONG;
  101.                 top:LONG;
  102.                 right:LONG;
  103.                 bottom:LONG;
  104.           END;
  105.     LPRECTL=PRECTL;
  106.  
  107.     PPOINT=^POINT;
  108.     POINT=RECORD
  109.                 x:LONG;
  110.                 y:LONG;
  111.           END;
  112.     NPPOINT=PPOINT;
  113.     LPPOINT=PPOINT;
  114.  
  115.     PPOINTL=^POINTL;
  116.     POINTL=RECORD
  117.                  x:LONG;
  118.                  y:LONG;
  119.            END;
  120.  
  121.     PSIZE=^SIZE;
  122.     SIZE=RECORD
  123.                cx:LONG;
  124.                cy:LONG;
  125.          END;
  126.     LPSIZE=PSIZE;
  127.     SIZEL=SIZE;
  128.     PSIZEL=^SIZE;
  129.     LPSIZEL=^SIZE;
  130.  
  131.     PPOINTS=^POINTS;
  132.     POINTS=RECORD
  133.                  x:SHORT;
  134.                  y:SHORT;
  135.            END;
  136.     LPPOINTS=PPOINTS;
  137.  
  138. CONST
  139.      DM_UPDATE           =1;
  140.      DM_COPY             =2;
  141.      DM_PROMPT           =4;
  142.      DM_MODIFY           =8;
  143.      DM_IN_BUFFER        =DM_MODIFY;
  144.      DM_IN_PROMPT        =DM_PROMPT;
  145.      DM_OUT_BUFFER       =DM_COPY;
  146.      DM_OUT_DEFAULT      =DM_UPDATE;
  147.  
  148.      DC_FIELDS           =1;
  149.      DC_PAPERS           =2;
  150.      DC_PAPERSIZE        =3;
  151.      DC_MINEXTENT        =4;
  152.      DC_MAXEXTENT        =5;
  153.      DC_BINS             =6;
  154.      DC_DUPLEX           =7;
  155.      DC_SIZE             =8;
  156.      DC_EXTRA            =9;
  157.      DC_VERSION          =10;
  158.      DC_DRIVER           =11;
  159.      DC_BINNAMES         =12;
  160.      DC_ENUMRESOLUTIONS  =13;
  161.      DC_FILEDEPENDENCIES =14;
  162.      DC_TRUETYPE         =15;
  163.      DC_PAPERNAMES       =16;
  164.      DC_ORIENTATION      =17;
  165.      DC_COPIES           =18;
  166.  
  167. FUNCTION max(a,b:LONGINT):LONGINT;
  168. FUNCTION min(a,b:LONGINT):LONGINT;
  169. FUNCTION MAKEWORD(a,b:BYTE):WORD;
  170. FUNCTION MAKELONG(a,b:INTEGER):LONG;
  171. FUNCTION LOWORD(l:LONGINT):WORD;
  172. FUNCTION HIWORD(l:LONGINT):WORD;
  173. FUNCTION LOBYTE(w:WORD):BYTE;
  174. FUNCTION HIBYTE(w:WORD):BYTE;
  175.  
  176. IMPLEMENTATION
  177.  
  178. FUNCTION max(a,b:LONGINT):LONGINT;
  179. BEGIN
  180.      IF a>b THEN max:=a
  181.      ELSe max:=b;
  182. END;
  183.  
  184. FUNCTION min(a,b:LONGINT):LONGINT;
  185. BEGIN
  186.      IF a<b THEN min:=a
  187.      ELSe min:=b;
  188. END;
  189.  
  190. FUNCTION MAKEWORD(a,b:BYTE):WORD;
  191. BEGIN
  192.      MAKEWORD:=a OR (b SHL 8);
  193. END;
  194.  
  195. FUNCTION MAKELONG(a,b:INTEGER):LONG;
  196. BEGIN
  197.      MAKELONG:=a OR (b SHL 16);
  198. END;
  199.  
  200. FUNCTION LOWORD(l:LONGINT):WORD;
  201. BEGIN
  202.      LOWORD:=lo(l);
  203. END;
  204.  
  205. FUNCTION HIWORD(l:LONGINT):WORD;
  206. BEGIN
  207.      HIWORD:=hi(l);
  208. END;
  209.  
  210. FUNCTION LOBYTE(w:WORD):BYTE;
  211. BEGIN
  212.      LOBYTE:=lo(w);
  213. END;
  214.  
  215. FUNCTION HIBYTE(w:WORD):BYTE;
  216. BEGIN
  217.      HIBYTE:=hi(w);
  218. END;
  219.  
  220. BEGIN
  221. END.
  222.