2 * Header for the Device Driver Interface - User Interface library
4 * Copyright 2007 Marcel Partap
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #ifndef __WINE_WINDDIUI_H
22 #define __WINE_WINDDIUI_H
24 #include <ddk/compstui.h>
30 #if (NTDDI_VERSION >= NTDDI_WINXP)
31 typedef struct _DOCEVENT_FILTER
{
33 UINT cElementsAllocated
;
35 UINT cElementsReturned
;
36 DWORD aDocEventCall
[ANYSIZE_ARRAY
];
37 } DOCEVENT_FILTER
, *PDOCEVENT_FILTER
;
38 typedef struct _DOCEVENT_CREATEDCPRE
{
43 } DOCEVENT_CREATEDCPRE
, *PDCEVENT_CREATEDCPRE
;
44 typedef struct _DOCEVENT_ESCAPE
{
48 } DOCEVENT_ESCAPE
, *PDOCEVENT_ESCAPE
;
50 #define DOCUMENTEVENT_FIRST 1
51 #define DOCUMENTEVENT_CREATEDCPRE 1
52 #define DOCUMENTEVENT_CREATEDCPOST 2
53 #define DOCUMENTEVENT_RESETDCPRE 3
54 #define DOCUMENTEVENT_RESETDCPOST 4
55 #define DOCUMENTEVENT_STARTDOC 5
56 #define DOCUMENTEVENT_STARTDOCPRE 5
57 #define DOCUMENTEVENT_STARTPAGE 6
58 #define DOCUMENTEVENT_ENDPAGE 7
59 #define DOCUMENTEVENT_ENDDOC 8
60 #define DOCUMENTEVENT_ENDDOCPRE 8
61 #define DOCUMENTEVENT_ABORTDOC 9
62 #define DOCUMENTEVENT_DELETEDC 10
63 #define DOCUMENTEVENT_ESCAPE 11
64 #define DOCUMENTEVENT_ENDDOCPOST 12
65 #define DOCUMENTEVENT_STARTDOCPOST 13
66 #if (NTDDI_VERSION >= NTDDI_VISTA)
67 #define DOCUMENTEVENT_QUERYFILTER 14
68 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRE 1
69 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRE 2
70 #define DOCUMENTEVENT_XPS_ADDFIXEDPAGEEPRE 3
71 #define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPOST 4
72 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPOST 5
73 #define DOCUMENTEVENT_XPS_CANCELJOB 6
74 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRINTTICKETPRE 7
75 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRINTTICKETPRE 8
76 #define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPRINTTICKETPRE 9
77 #define DOCUMENTEVENT_XPS_ADDFIXEDPAGEPRINTTICKETPOST 10
78 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRINTTICKETPOST 11
79 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRINTTICKETPOST 12
80 #define DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPOST 13
81 #define DOCUMENTEVENT_LAST 15
82 #elif (NTDDI_VERSION >= NTDDI_WINXP)
83 #define DOCUMENTEVENT_QUERYFILTER 14
84 #define DOCUMENTEVENT_LAST 15
86 #define DOCUMENTEVENT_LAST 14
88 #define DOCUMENTEVENT_SPOOLED 0x10000
89 #define DOCUMENTEVENT_SUCCESS 1
90 #define DOCUMENTEVENT_UNSUPPORTED 0
91 #define DOCUMENTEVENT_FAILURE -1
92 #define DOCUMENTEVENT_EVENT(iX) (LOWORD(iX))
93 #define DOCUMENTEVENT_FLAGS(iX) (HIWORD(iX))
95 int WINAPI
DrvDocumentEvent(HANDLE
,HDC
,int,ULONG
,PVOID
,ULONG
,PVOID
);
97 #define DRIVER_EVENT_INITIALIZE 1
98 #define DRIVER_EVENT_DELETE 2
100 #define PRINTER_EVENT_ADD_CONNECTION 1
101 #define PRINTER_EVENT_DELETE_CONNECTION 2
102 #define PRINTER_EVENT_INITIALIZE 3
103 #define PRINTER_EVENT_DELETE 4
104 #define PRINTER_EVENT_CACHE_REFRESH 5
105 #define PRINTER_EVENT_CACHE_DELETE 6
106 #define PRINTER_EVENT_ATTRIBUTES_CHANGED 7
108 #define PRINTER_EVENT_FLAG_NO_UI 1
110 BOOL WINAPI
DrvDriverEvent(DWORD
, DWORD
, LPBYTE
, LPARAM
);
111 BOOL WINAPI
DrvPrinterEvent(LPWSTR
, INT
, DWORD
, LPARAM
);
117 #endif /* __WINE_WINDDIUI_H */