documenttarget.idl 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. cpp_quote("/**")
  2. cpp_quote(" * This file is part of the mingw-w64 runtime package.")
  3. cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
  4. cpp_quote(" */")
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. cpp_quote("")
  8. cpp_quote("#include <winapifamily.h>")
  9. cpp_quote("")
  10. cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_MSXPS, 0x9cae40a8, 0xded1, 0x41c9, 0xa9, 0xfd, 0xd7, 0x35, 0xef, 0x33, 0xae, 0xda);")
  11. cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_OPENXPS, 0x0056bb72, 0x8c9c, 0x4612, 0xbd, 0x0f, 0x93, 0x01, 0x2a, 0x87, 0x09, 0x9d);")
  12. cpp_quote("")
  13. cpp_quote("#if NTDDI_VERSION >= 0x06010000")
  14. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
  15. [object, uuid (1b8efec4-3019-4c27-964e-367202156906)]
  16. interface IPrintDocumentPackageTarget : IUnknown {
  17. HRESULT GetPackageTargetTypes ([out] UINT32 *targetCount,[out, size_is (,*targetCount)] GUID **targetTypes);
  18. HRESULT GetPackageTarget ([in] REFGUID guidTargetType,[in] REFIID riid,[out, iid_is (riid)] void **ppvTarget);
  19. HRESULT Cancel ();
  20. };
  21. cpp_quote("#endif")
  22. cpp_quote("")
  23. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  24. typedef [v1_enum] enum PrintDocumentPackageCompletion {
  25. PrintDocumentPackageCompletion_InProgress = 0,
  26. PrintDocumentPackageCompletion_Completed,
  27. PrintDocumentPackageCompletion_Canceled,
  28. PrintDocumentPackageCompletion_Failed
  29. } PrintDocumentPackageCompletion;
  30. typedef struct {
  31. UINT32 JobId;
  32. INT32 CurrentDocument;
  33. INT32 CurrentPage;
  34. INT32 CurrentPageTotal;
  35. PrintDocumentPackageCompletion Completion;
  36. HRESULT PackageStatus;
  37. } PrintDocumentPackageStatus;
  38. [object, uuid (ed90c8ad-5c34-4d05-a1ec-0e8a9b3ad7af), dual, nonextensible]
  39. interface IPrintDocumentPackageStatusEvent : IDispatch {
  40. [id (1)] HRESULT PackageStatusUpdated ([in] PrintDocumentPackageStatus *packageStatus);
  41. };
  42. [object, uuid (d2959bf7-b31b-4a3d-9600-712eb1335ba4)]
  43. interface IPrintDocumentPackageTargetFactory : IUnknown {
  44. HRESULT CreateDocumentPackageTargetForPrintJob ([in, string] LPCWSTR printerName,[in, string] LPCWSTR jobName,[in] IStream *jobOutputStream,[in] IStream *jobPrintTicketStream,[out] IPrintDocumentPackageTarget **docPackageTarget);
  45. };
  46. cpp_quote("#endif")
  47. [uuid (410d76f7-8bb5-4a7d-9d37-9c71b1b14d14), version (1.0)]
  48. library PrintDocumentTargetLib {
  49. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
  50. interface IPrintDocumentPackageTarget;
  51. cpp_quote("#endif")
  52. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  53. interface IPrintDocumentPackageStatusEvent;
  54. interface IPrintDocumentPackageTargetFactory;
  55. [uuid (4842669e-9947-46ea-8ba2-d8cce432c2ca), noncreatable]
  56. coclass PrintDocumentPackageTarget {
  57. [default] interface IPrintDocumentPackageTarget;
  58. [source] dispinterface IPrintDocumentPackageStatusEvent;
  59. };
  60. [uuid (348ef17d-6c81-4982-92b4-ee188a43867a)]
  61. coclass PrintDocumentPackageTargetFactory {
  62. [default] interface IPrintDocumentPackageTargetFactory;
  63. };
  64. cpp_quote("#endif")
  65. };
  66. cpp_quote("#endif")