winddi.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 3,009 行 · 第 1/5 页

H
3,009
字号
CLIPOBJ_cEnumStart(
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ BOOL  bAll,
  /*IN*/ ULONG  iType,
  /*IN*/ ULONG  iDirection,
  /*IN*/ ULONG  cLimit);

WIN32KAPI
PATHOBJ*
DDKAPI
CLIPOBJ_ppoGetPath(
  /*IN*/ CLIPOBJ  *pco);

WIN32KAPI
VOID
DDKAPI
EngAcquireSemaphore(
  /*IN*/ HSEMAPHORE  hsem);

#define FL_ZERO_MEMORY                    0x00000001
#define FL_NONPAGED_MEMORY                0x00000002

WIN32KAPI
PVOID
DDKAPI
EngAllocMem(
  /*IN*/ ULONG  Flags,
  /*IN*/ ULONG  MemSize,
  /*IN*/ ULONG  Tag);

WIN32KAPI
PVOID
DDKAPI
EngAllocPrivateUserMem(
  /*IN*/ PDD_SURFACE_LOCAL  psl,
  /*IN*/ SIZE_T  cj,
  /*IN*/ ULONG  tag);

WIN32KAPI
PVOID
DDKAPI
EngAllocUserMem(
  /*IN*/ SIZE_T  cj,
  /*IN*/ ULONG  tag);

WIN32KAPI
BOOL
DDKAPI
EngAlphaBlend(
  /*IN*/ SURFOBJ  *psoDest,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ RECTL  *prclDest,
  /*IN*/ RECTL  *prclSrc,
  /*IN*/ BLENDOBJ  *pBlendObj);

/* EngAssociateSurface.flHooks constants */
#define HOOK_BITBLT                       0x00000001
#define HOOK_STRETCHBLT                   0x00000002
#define HOOK_PLGBLT                       0x00000004
#define HOOK_TEXTOUT                      0x00000008
#define HOOK_PAINT                        0x00000010
#define HOOK_STROKEPATH                   0x00000020
#define HOOK_FILLPATH                     0x00000040
#define HOOK_STROKEANDFILLPATH            0x00000080
#define HOOK_LINETO                       0x00000100
#define HOOK_COPYBITS                     0x00000400
#define HOOK_MOVEPANNING                  0x00000800
#define HOOK_SYNCHRONIZE                  0x00001000
#define HOOK_STRETCHBLTROP                0x00002000
#define HOOK_SYNCHRONIZEACCESS            0x00004000
#define HOOK_TRANSPARENTBLT               0x00008000
#define HOOK_ALPHABLEND                   0x00010000
#define HOOK_GRADIENTFILL                 0x00020000
#define HOOK_FLAGS                        0x0003b5ff

WIN32KAPI
BOOL
DDKAPI
EngAssociateSurface(
  /*IN*/ HSURF  hsurf,
  /*IN*/ HDEV  hdev,
  /*IN*/ FLONG  flHooks);

WIN32KAPI
BOOL
DDKAPI
EngBitBlt(
  /*IN*/ SURFOBJ  *psoTrg,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ SURFOBJ  *psoMask,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ RECTL  *prclTrg,
  /*IN*/ POINTL  *pptlSrc,
  /*IN*/ POINTL  *pptlMask,
  /*IN*/ BRUSHOBJ  *pbo,
  /*IN*/ POINTL  *pptlBrush,
  /*IN*/ ROP4  rop4);

WIN32KAPI
BOOL
DDKAPI
EngCheckAbort(
  /*IN*/ SURFOBJ  *pso);

WIN32KAPI
VOID
DDKAPI
EngClearEvent(
  /*IN*/ PEVENT  pEvent);

WIN32KAPI
FD_GLYPHSET*
DDKAPI
EngComputeGlyphSet(
  /*IN*/ INT  nCodePage,
  /*IN*/ INT  nFirstChar,
  /*IN*/ INT  cChars);

/* EngControlSprites.fl constants */
#define ECS_TEARDOWN                      0x00000001
#define ECS_REDRAW                        0x00000002

WIN32KAPI
BOOL
DDKAPI
EngControlSprites(
  /*IN*/ WNDOBJ  *pwo,
  /*IN*/ FLONG  fl);

WIN32KAPI
BOOL
DDKAPI
EngCopyBits(

  /*OUT*/ SURFOBJ  *psoDest,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ RECTL  *prclDest,
  /*IN*/ POINTL  *pptlSrc);

WIN32KAPI
HBITMAP
DDKAPI
EngCreateBitmap(
  /*IN*/ SIZEL  sizl,
  /*IN*/ LONG  lWidth,
  /*IN*/ ULONG  iFormat,
  /*IN*/ FLONG  fl,
  /*IN*/ PVOID  pvBits);

WIN32KAPI
CLIPOBJ*
DDKAPI
EngCreateClip(
  VOID);

WIN32KAPI
HBITMAP
DDKAPI
EngCreateDeviceBitmap(
  /*IN*/ DHSURF  dhsurf,
  /*IN*/ SIZEL  sizl,
  /*IN*/ ULONG  iFormatCompat);

WIN32KAPI
HSURF
DDKAPI
EngCreateDeviceSurface(
  DHSURF  dhsurf,
  SIZEL  sizl,
  ULONG  iFormatCompat);

#if 0
WIN32KAPI
HDRVOBJ
DDKAPI
EngCreateDriverObj(
  PVOID  pvObj,
  FREEOBJPROC  pFreeObjProc,
  HDEV  hdev);
#endif

WIN32KAPI
BOOL
DDKAPI
EngCreateEvent(

  /*OUT*/ PEVENT  *ppEvent);

/* EngCreatePalette.iMode constants */
#define PAL_INDEXED                       0x00000001
#define PAL_BITFIELDS                     0x00000002
#define PAL_RGB                           0x00000004
#define PAL_BGR                           0x00000008
#define PAL_CMYK                          0x00000010

WIN32KAPI
HPALETTE
DDKAPI
EngCreatePalette(
  /*IN*/ ULONG  iMode,
  /*IN*/ ULONG  cColors,
  /*IN*/ ULONG  *pulColors,
  /*IN*/ FLONG  flRed,
  /*IN*/ FLONG  flGreen,
  /*IN*/ FLONG  flBlue);

WIN32KAPI
PATHOBJ*
DDKAPI
EngCreatePath(
  VOID);

WIN32KAPI
HSEMAPHORE
DDKAPI
EngCreateSemaphore(
  VOID);

/* EngCreateWnd.fl constants */
#define WO_RGN_CLIENT_DELTA               0x00000001
#define WO_RGN_CLIENT                     0x00000002
#define WO_RGN_SURFACE_DELTA              0x00000004
#define WO_RGN_SURFACE                    0x00000008
#define WO_RGN_UPDATE_ALL                 0x00000010
#define WO_RGN_WINDOW                     0x00000020
#define WO_DRAW_NOTIFY                    0x00000040
#define WO_SPRITE_NOTIFY                  0x00000080
#define WO_RGN_DESKTOP_COORD              0x00000100

WIN32KAPI
WNDOBJ*
DDKAPI
EngCreateWnd(
  SURFOBJ  *pso,
  HWND  hwnd,
  WNDOBJCHANGEPROC  pfn,
  FLONG  fl,
  int  iPixelFormat);

WIN32KAPI
VOID
DDKAPI
EngDebugBreak(
  VOID);

WIN32KAPI
VOID
DDKAPI
EngDebugPrint(
  /*IN*/ PCHAR StandardPrefix,
  /*IN*/ PCHAR DebugMessage,
  /*IN*/ va_list ap);

WIN32KAPI
VOID
DDKAPI
EngDeleteClip(
  /*IN*/ CLIPOBJ  *pco);

WIN32KAPI
BOOL
DDKAPI
EngDeleteDriverObj(
  /*IN*/ HDRVOBJ  hdo,
  /*IN*/ BOOL  bCallBack,
  /*IN*/ BOOL  bLocked);

WIN32KAPI
BOOL
DDKAPI
EngDeleteEvent(
  /*IN*/ PEVENT  pEvent);

WIN32KAPI
BOOL
DDKAPI
EngDeleteFile(
  /*IN*/ LPWSTR  pwszFileName);

WIN32KAPI
BOOL
DDKAPI
EngDeletePalette(
  /*IN*/ HPALETTE  hpal);

WIN32KAPI
VOID
DDKAPI
EngDeletePath(
  /*IN*/ PATHOBJ  *ppo);

WIN32KAPI
VOID
DDKAPI
EngDeleteSafeSemaphore(
  /*IN OUT*/ ENGSAFESEMAPHORE  *pssem);

WIN32KAPI
VOID
DDKAPI
EngDeleteSemaphore(
  /*IN OUT*/ HSEMAPHORE  hsem);

WIN32KAPI
BOOL
DDKAPI
EngDeleteSurface(
  /*IN*/ HSURF  hsurf);

WIN32KAPI
VOID
DDKAPI
EngDeleteWnd(
  /*IN*/ WNDOBJ  *pwo);

WIN32KAPI
DWORD
DDKAPI
EngDeviceIoControl(
  /*IN*/ HANDLE  hDevice,
  /*IN*/ DWORD  dwIoControlCode,
  /*IN*/ LPVOID  lpInBuffer,
  /*IN*/ DWORD  nInBufferSize,
  /*IN OUT*/ LPVOID  lpOutBuffer,
  /*IN*/ DWORD  nOutBufferSize,

  /*OUT*/ LPDWORD  lpBytesReturned);

WIN32KAPI
ULONG
DDKAPI
EngDitherColor(
  /*IN*/ HDEV  hdev,
  /*IN*/ ULONG  iMode,
  /*IN*/ ULONG  rgb,

  /*OUT*/ ULONG  *pul);

WIN32KAPI
BOOL
DDKAPI
EngEnumForms(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ DWORD  Level,

  /*OUT*/ LPBYTE  pForm,
  /*IN*/ DWORD  cbBuf,

  /*OUT*/ LPDWORD  pcbNeeded,

  /*OUT*/ LPDWORD  pcReturned);

WIN32KAPI
BOOL
DDKAPI
EngEraseSurface(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ RECTL  *prcl,
  /*IN*/ ULONG  iColor);

WIN32KAPI
BOOL
DDKAPI
EngFillPath(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ PATHOBJ  *ppo,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ BRUSHOBJ  *pbo,
  /*IN*/ POINTL  *pptlBrushOrg,
  /*IN*/ MIX  mix,
  /*IN*/ FLONG  flOptions);

WIN32KAPI
PVOID
DDKAPI
EngFindImageProcAddress(
  /*IN*/ HANDLE  hModule,
  /*IN*/ LPSTR  lpProcName);

WIN32KAPI
PVOID
DDKAPI
EngFindResource(
  /*IN*/ HANDLE  h,
  /*IN*/ int  iName,
  /*IN*/ int  iType,

  /*OUT*/ PULONG  pulSize);

WIN32KAPI
PVOID
DDKAPI
EngFntCacheAlloc(
  /*IN*/ ULONG  FastCheckSum,
  /*IN*/ ULONG  ulSize);

/* EngFntCacheFault.iFaultMode constants */
#define ENG_FNT_CACHE_READ_FAULT          0x00000001
#define ENG_FNT_CACHE_WRITE_FAULT         0x00000002

WIN32KAPI
VOID
DDKAPI
EngFntCacheFault(
  /*IN*/ ULONG  ulFastCheckSum,
  /*IN*/ ULONG  iFaultMode);

WIN32KAPI
PVOID
DDKAPI
EngFntCacheLookUp(
  /*IN*/ ULONG  FastCheckSum,

  /*OUT*/ ULONG  *pulSize);

WIN32KAPI
VOID
DDKAPI
EngFreeMem(
  /*IN*/ PVOID  Mem);

WIN32KAPI
VOID
DDKAPI
EngFreeModule(
  /*IN*/ HANDLE  h);

WIN32KAPI
VOID
DDKAPI
EngFreePrivateUserMem(
  /*IN*/ PDD_SURFACE_LOCAL  psl,
  /*IN*/ PVOID  pv);

WIN32KAPI
VOID
DDKAPI
EngFreeUserMem(
  /*IN*/ PVOID  pv);

WIN32KAPI
VOID
DDKAPI
EngGetCurrentCodePage(

  /*OUT*/ PUSHORT  OemCodePage,

  /*OUT*/ PUSHORT  AnsiCodePage);

WIN32KAPI
HANDLE
DDKAPI
EngGetCurrentProcessId(
  VOID);

WIN32KAPI
HANDLE
DDKAPI
EngGetCurrentThreadId(
  VOID);

WIN32KAPI
LPWSTR
DDKAPI
EngGetDriverName(
  /*IN*/ HDEV  hdev);

WIN32KAPI
BOOL
DDKAPI
EngGetFileChangeTime(
  /*IN*/ HANDLE  h,

  /*OUT*/ LARGE_INTEGER  *pChangeTime);

WIN32KAPI
BOOL
DDKAPI
EngGetFilePath(
  /*IN*/ HANDLE  h,

  /*OUT*/ WCHAR  (*pDest)[MAX_PATH+1]);

WIN32KAPI
BOOL
DDKAPI
EngGetForm(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ LPWSTR  pFormName,
  /*IN*/ DWORD  Level,

  /*OUT*/ LPBYTE  pForm,
  /*IN*/ DWORD  cbBuf,

  /*OUT*/ LPDWORD  pcbNeeded);

WIN32KAPI
ULONG
DDKAPI
EngGetLastError(
  VOID);

WIN32KAPI
BOOL
DDKAPI
EngGetPrinter(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ DWORD  dwLevel,

  /*OUT*/ LPBYTE  pPrinter,
  /*IN*/ DWORD  cbBuf,

  /*OUT*/ LPDWORD  pcbNeeded);

WIN32KAPI
DWORD
DDKAPI
EngGetPrinterData(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ LPWSTR  pValueName,

  /*OUT*/ LPDWORD  pType,

  /*OUT*/ LPBYTE  pData,
  /*IN*/ DWORD  nSize,

  /*OUT*/ LPDWORD  pcbNeeded);

WIN32KAPI
LPWSTR
DDKAPI
EngGetPrinterDataFileName(
  /*IN*/ HDEV  hdev);

WIN32KAPI
BOOL
DDKAPI
EngGetPrinterDriver(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ LPWSTR  pEnvironment,
  /*IN*/ DWORD  dwLevel,

  /*OUT*/ BYTE  *lpbDrvInfo,
  /*IN*/ DWORD  cbBuf,

  /*OUT*/ DWORD  *pcbNeeded);

WIN32KAPI
HANDLE
DDKAPI
EngGetProcessHandle(
  VOID);

WIN32KAPI
BOOL
DDKAPI
EngGetType1FontList(
  /*IN*/ HDEV  hdev,

  /*OUT*/ TYPE1_FONT  *pType1Buffer,
  /*IN*/ ULONG  cjType1Buffer,

  /*OUT*/ PULONG  pulLocalFonts,

  /*OUT*/ PULONG  pulRemoteFonts,

  /*OUT*/ LARGE_INTEGER  *pLastModified);

WIN32KAPI
BOOL
DDKAPI
EngGradientFill(
  /*IN*/ SURFOBJ  *psoDest,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ TRIVERTEX  *pVertex,
  /*IN*/ ULONG  nVertex,
  /*IN*/ PVOID  pMesh,
  /*IN*/ ULONG  nMesh,
  /*IN*/ RECTL  *prclExtents,
  /*IN*/ POINTL  *pptlDitherOrg,
  /*IN*/ ULONG  ulMode);

/* EngHangNotification return values */
#define EHN_RESTORED                      0x00000000
#define EHN_ERROR                         0x00000001

WIN32KAPI
ULONG
DDKAPI
EngHangNotification(
  /*IN*/ HDEV  hDev,
  /*IN*/ PVOID  Reserved);

WIN32KAPI
BOOL
DDKAPI

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?