blob: 558c8d112452eca5f9409a14887e6f74e3d5e155 [file] [log] [blame]
cpp_quote("/**")
cpp_quote(" * This file is part of the mingw-w64 runtime package.")
cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
cpp_quote(" */")
import "oaidl.idl";
import "ocidl.idl";
cpp_quote("")
cpp_quote("#include <winapifamily.h>")
cpp_quote("")
cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_MSXPS, 0x9cae40a8, 0xded1, 0x41c9, 0xa9, 0xfd, 0xd7, 0x35, 0xef, 0x33, 0xae, 0xda);")
cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_OPENXPS, 0x0056bb72, 0x8c9c, 0x4612, 0xbd, 0x0f, 0x93, 0x01, 0x2a, 0x87, 0x09, 0x9d);")
cpp_quote("")
cpp_quote("#if NTDDI_VERSION >= 0x06010000")
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
[object, uuid (1b8efec4-3019-4c27-964e-367202156906)]
interface IPrintDocumentPackageTarget : IUnknown {
HRESULT GetPackageTargetTypes ([out] UINT32 *targetCount,[out, size_is (,*targetCount)] GUID **targetTypes);
HRESULT GetPackageTarget ([in] REFGUID guidTargetType,[in] REFIID riid,[out, iid_is (riid)] void **ppvTarget);
HRESULT Cancel ();
};
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
typedef [v1_enum] enum PrintDocumentPackageCompletion {
PrintDocumentPackageCompletion_InProgress = 0,
PrintDocumentPackageCompletion_Completed,
PrintDocumentPackageCompletion_Canceled,
PrintDocumentPackageCompletion_Failed
} PrintDocumentPackageCompletion;
typedef struct {
UINT32 JobId;
INT32 CurrentDocument;
INT32 CurrentPage;
INT32 CurrentPageTotal;
PrintDocumentPackageCompletion Completion;
HRESULT PackageStatus;
} PrintDocumentPackageStatus;
[object, uuid (ed90c8ad-5c34-4d05-a1ec-0e8a9b3ad7af), dual, nonextensible]
interface IPrintDocumentPackageStatusEvent : IDispatch {
[id (1)] HRESULT PackageStatusUpdated ([in] PrintDocumentPackageStatus *packageStatus);
};
[object, uuid (d2959bf7-b31b-4a3d-9600-712eb1335ba4)]
interface IPrintDocumentPackageTargetFactory : IUnknown {
HRESULT CreateDocumentPackageTargetForPrintJob ([in, string] LPCWSTR printerName,[in, string] LPCWSTR jobName,[in] IStream *jobOutputStream,[in] IStream *jobPrintTicketStream,[out] IPrintDocumentPackageTarget **docPackageTarget);
};
cpp_quote("#endif")
[uuid (410d76f7-8bb5-4a7d-9d37-9c71b1b14d14), version (1.0)]
library PrintDocumentTargetLib {
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
interface IPrintDocumentPackageTarget;
cpp_quote("#endif")
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
interface IPrintDocumentPackageStatusEvent;
interface IPrintDocumentPackageTargetFactory;
[uuid (4842669e-9947-46ea-8ba2-d8cce432c2ca), noncreatable]
coclass PrintDocumentPackageTarget {
[default] interface IPrintDocumentPackageTarget;
[source] dispinterface IPrintDocumentPackageStatusEvent;
};
[uuid (348ef17d-6c81-4982-92b4-ee188a43867a)]
coclass PrintDocumentPackageTargetFactory {
[default] interface IPrintDocumentPackageTargetFactory;
};
cpp_quote("#endif")
};
cpp_quote("#endif")