Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
2.6 KiB

  1. /****************************************************************************
  2. *
  3. * (C) COPYRIGHT 1998-2000, MICROSOFT CORP.
  4. *
  5. * FILE: wiadevd.h
  6. *
  7. * VERSION: 1.0
  8. *
  9. * DATE: 7/5/1999
  10. *
  11. * DESCRIPTION:
  12. * Device Dialog and UI extensibility declarations.
  13. *
  14. *****************************************************************************/
  15. #ifndef _WIADEVD_H_INCLUDED
  16. #define _WIADEVD_H_INCLUDED
  17. #include "wia.h"
  18. #if defined(__cplusplus)
  19. extern "C" {
  20. #endif
  21. #include <pshpack8.h>
  22. typedef struct tagDEVICEDIALOGDATA
  23. {
  24. DWORD cbSize; // Size of the structure in bytes
  25. HWND hwndParent; // Parent window
  26. IWiaItem *pIWiaItemRoot; // Valid root item
  27. DWORD dwFlags; // Flags
  28. LONG lIntent; // Intent flags
  29. LONG lItemCount; // Number of items in ppWiaItems array. Filled on return.
  30. IWiaItem **ppWiaItems; // Array of IWiaItem interface pointers. Array must
  31. // be allocated using LocalAlloc, all interface pointers must be AddRef'ed
  32. } DEVICEDIALOGDATA, *LPDEVICEDIALOGDATA, *PDEVICEDIALOGDATA;
  33. HRESULT WINAPI DeviceDialog( PDEVICEDIALOGDATA pDeviceDialogData );
  34. // IWiaUIExtension provides a means to replace a device's image acquisition dialog
  35. // and to provide custom icons and logo bitmaps to appear on the standard dialog
  36. #undef INTERFACE
  37. #define INTERFACE IWiaUIExtension
  38. DECLARE_INTERFACE_(IWiaUIExtension, IUnknown)
  39. {
  40. // *** IUnknown methods ***
  41. STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  42. STDMETHOD_(ULONG,AddRef) (THIS) PURE;
  43. STDMETHOD_(ULONG,Release) (THIS) PURE;
  44. // *** IWiaUIExtension methods ***
  45. STDMETHOD(DeviceDialog)( THIS_ PDEVICEDIALOGDATA pDeviceDialogData ) PURE;
  46. STDMETHOD(GetDeviceIcon)(THIS_ BSTR bstrDeviceId, HICON *phIcon, ULONG nSize ) PURE;
  47. STDMETHOD(GetDeviceBitmapLogo)(THIS_ BSTR bstrDeviceId, HBITMAP *phBitmap, ULONG nMaxWidth, ULONG nMaxHeight ) PURE;
  48. };
  49. // {da319113-50ee-4c80-b460-57d005d44a2c}
  50. DEFINE_GUID(IID_IWiaUIExtension, 0xDA319113, 0x50EE, 0x4C80, 0xB4, 0x60, 0x57, 0xD0, 0x05, 0xD4, 0x4A, 0x2C);
  51. typedef HRESULT (WINAPI *DeviceDialogFunction)(PDEVICEDIALOGDATA);
  52. #define SHELLEX_WIAUIEXTENSION_NAME TEXT("WiaDialogExtensionHandlers")
  53. // Define clipboard format names for retrieving data from an IDataObject
  54. #define CFSTR_WIAITEMNAMES TEXT("WIAItemNames")
  55. #define CFSTR_WIAITEMPTR TEXT("WIAItemPointer")
  56. #include <poppack.h>
  57. #if defined(__cplusplus)
  58. };
  59. #endif
  60. #endif // !_WIADEVD_H_INCLUDED