reactos/sdk/include/psdk/winddiui.h
James Tabor 517e6dc8ab [WinddiUI] Fix Format
Format This ....
2020-07-26 15:42:28 -05:00

158 lines
5.1 KiB
C

/*
* Header for the Device Driver Interface - User Interface library
*
* Copyright 2007 Marcel Partap
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_WINDDIUI_H
#define __WINE_WINDDIUI_H
#include <compstui.h>
#ifdef __cplusplus
extern "C" {
#endif
#if (NTDDI_VERSION >= NTDDI_WINXP)
typedef struct _DOCEVENT_FILTER {
UINT cbSize;
UINT cElementsAllocated;
UINT cElementsNeeded;
UINT cElementsReturned;
DWORD aDocEventCall[ANYSIZE_ARRAY];
} DOCEVENT_FILTER, *PDOCEVENT_FILTER;
typedef struct _DOCEVENT_CREATEDCPRE {
PWSTR pszDriver;
PWSTR pszDevice;
PDEVMODEW pdm;
BOOL bIC;
} DOCEVENT_CREATEDCPRE, *PDCEVENT_CREATEDCPRE;
typedef struct _DOCEVENT_ESCAPE {
int iEscape;
int cjInput;
PVOID pvInData;
} DOCEVENT_ESCAPE, *PDOCEVENT_ESCAPE;
#endif
#define DOCUMENTEVENT_FIRST 1
#define DOCUMENTEVENT_CREATEDCPRE 1
#define DOCUMENTEVENT_CREATEDCPOST 2
#define DOCUMENTEVENT_RESETDCPRE 3
#define DOCUMENTEVENT_RESETDCPOST 4
#define DOCUMENTEVENT_STARTDOC 5
#define DOCUMENTEVENT_STARTDOCPRE 5
#define DOCUMENTEVENT_STARTPAGE 6
#define DOCUMENTEVENT_ENDPAGE 7
#define DOCUMENTEVENT_ENDDOC 8
#define DOCUMENTEVENT_ENDDOCPRE 8
#define DOCUMENTEVENT_ABORTDOC 9
#define DOCUMENTEVENT_DELETEDC 10
#define DOCUMENTEVENT_ESCAPE 11
#define DOCUMENTEVENT_ENDDOCPOST 12
#define DOCUMENTEVENT_STARTDOCPOST 13
#if (NTDDI_VERSION >= NTDDI_VISTA)
#define DOCUMENTEVENT_QUERYFILTER 14
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRE 1
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRE 2
#define DOCUMENTEVENT_XPS_ADDFIXEDPAGEEPRE 3
#define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPOST 4
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPOST 5
#define DOCUMENTEVENT_XPS_CANCELJOB 6
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRINTTICKETPRE 7
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRINTTICKETPRE 8
#define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPRINTTICKETPRE 9
#define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPRINTTICKETPOST 10
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRINTTICKETPOST 11
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRINTTICKETPOST 12
#define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPOST 13
#define DOCUMENTEVENT_LAST 15
#elif (NTDDI_VERSION >= NTDDI_WINXP)
#define DOCUMENTEVENT_QUERYFILTER 14
#define DOCUMENTEVENT_LAST 15
#else
#define DOCUMENTEVENT_LAST 14
#endif
#define DOCUMENTEVENT_SPOOLED 0x10000
#define DOCUMENTEVENT_SUCCESS 1
#define DOCUMENTEVENT_UNSUPPORTED 0
#define DOCUMENTEVENT_FAILURE -1
#define DOCUMENTEVENT_EVENT(iX) (LOWORD(iX))
#define DOCUMENTEVENT_FLAGS(iX) (HIWORD(iX))
int WINAPI DrvDocumentEvent(HANDLE,HDC,int,ULONG,PVOID,ULONG,PVOID);
#define DRIVER_EVENT_INITIALIZE 1
#define DRIVER_EVENT_DELETE 2
#define PRINTER_EVENT_ADD_CONNECTION 1
#define PRINTER_EVENT_DELETE_CONNECTION 2
#define PRINTER_EVENT_INITIALIZE 3
#define PRINTER_EVENT_DELETE 4
#define PRINTER_EVENT_CACHE_REFRESH 5
#define PRINTER_EVENT_CACHE_DELETE 6
#define PRINTER_EVENT_ATTRIBUTES_CHANGED 7
#define PRINTER_EVENT_FLAG_NO_UI 1
BOOL WINAPI DrvDriverEvent(DWORD, DWORD, LPBYTE, LPARAM);
BOOL WINAPI DrvPrinterEvent(LPWSTR, INT, DWORD, LPARAM);
DWORD WINAPI DrvDeviceCapabilities(HANDLE,PWSTR,WORD,PVOID,PDEVMODE);
LONG WINAPI DrvDevicePropertySheets(PPROPSHEETUI_INFO,LPARAM);
typedef struct _DEVICEPROPERTYHEADER {
WORD cbSize;
WORD Flags;
HANDLE hPrinter;
LPTSTR pszPrinterName;
} DEVICEPROPERTYHEADER, *PDEVICEPROPERTYHEADER;
#define DPS_NOPERMISSION 0x0001
LONG WINAPI DrvDocumentPropertySheets(PPROPSHEETUI_INFO,LPARAM);
typedef struct _DOCUMENTPROPERTYHEADER {
WORD cbSize;
WORD Reserved;
HANDLE hPrinter;
LPTSTR pszPrinterName;
PDEVMODE pdmIn;
PDEVMODE pdmOut;
DWORD cbOut;
DWORD fMode;
} DOCUMENTPROPERTYHEADER, *PDOCUMENTPROPERTYHEADER;
#define DM_ADVANCED 0x10
#define DM_NOPERMISSION 0x20
#define DM_USER_DEFAULT 0x40
typedef struct _DEVQUERYPRINT_INFO {
WORD cbSize;
WORD Level;
HANDLE hPrinter;
DEVMODE *pDevMode;
LPWSTR pszErrorStr;
DWORD cchErrorStr;
DWORD cchNeeded;
} DEVQUERYPRINT_INFO, *PDEVQUERYPRINT_INFO;
BOOL WINAPI DevQueryPrintEx(PDEVQUERYPRINT_INFO);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* __WINE_WINDDIUI_H */