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.

74 lines
3.2 KiB

  1. //---------------------------------------------------------------------------
  2. // IVBGetControl
  3. //---------------------------------------------------------------------------
  4. // This interface lives on the Extender Object
  5. //---------------------------------------------------------------------------
  6. // Constants for dwWhich parameter:
  7. #define GC_WCH_SIBLING 0x00000001L
  8. #define GC_WCH_CONTAINER 0x00000002L // no FONLYAFTER/BEFORE
  9. #define GC_WCH_CONTAINED 0x00000003L // no FONLYAFTER/BEFORE
  10. #define GC_WCH_ALL 0x00000004L
  11. #define GC_WCH_FREVERSEDIR 0x08000000L // OR'd with others
  12. #define GC_WCH_FONLYAFTER 0x10000000L // OR'd with others
  13. #define GC_WCH_FONLYBEFORE 0x20000000L // OR'd with others
  14. #define GC_WCH_FSELECTED 0x40000000L // OR'd with others
  15. DECLARE_INTERFACE_(IVBGetControl, IUnknown)
  16. {
  17. // *** IUnknown methods ****
  18. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  19. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  20. STDMETHOD_(ULONG, Release)(THIS) PURE;
  21. // *** IVBGetControl methods ****
  22. STDMETHOD(EnumControls)(THIS_ DWORD dwOleContF, DWORD dwWhich, LPENUMUNKNOWN FAR *ppenumUnk) PURE;
  23. };
  24. //---------------------------------------------------------------------------
  25. // IGetOleObject
  26. //---------------------------------------------------------------------------
  27. // This interface lives on the Extender Object (X-Object / hctl)
  28. //---------------------------------------------------------------------------
  29. DECLARE_INTERFACE_(IGetOleObject, IUnknown)
  30. {
  31. // *** IUnknown methods ****
  32. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  33. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  34. STDMETHOD_(ULONG, Release)(THIS) PURE;
  35. // *** IGetOleObject methods ****
  36. STDMETHOD(GetOleObject)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  37. };
  38. DECLARE_INTERFACE_(IVBFormat,IUnknown)
  39. {
  40. /* IUnknown methods */
  41. STDMETHOD(QueryInterface)(THIS_ REFIID riid, void FAR* FAR* ppvObj) PURE;
  42. STDMETHOD_(unsigned long, AddRef)(THIS) PURE;
  43. STDMETHOD_(unsigned long, Release)(THIS) PURE;
  44. STDMETHOD(Format)(VARIANT FAR *vData, BSTR bstrFormat, LPVOID lpBuffer,
  45. USHORT cb, LONG lcid, SHORT sFirstDayOfWeek,
  46. USHORT sFirstWeekOfYear, USHORT * rcb) PURE;
  47. };
  48. DECLARE_INTERFACE_(IGetVBAObject,IUnknown)
  49. {
  50. /* IUnknown methods */
  51. STDMETHOD(QueryInterface)(THIS_ REFIID riid, void FAR* FAR* ppvObj) PURE;
  52. STDMETHOD_(unsigned long, AddRef)(THIS) PURE;
  53. STDMETHOD_(unsigned long, Release)(THIS) PURE;
  54. STDMETHOD(GetObject)(THIS_ REFIID riid, void FAR* FAR* ppvObj, DWORD dwReserved) PURE;
  55. };
  56. #include <initguid.h>
  57. //IVBGetControl & IGetOleObject
  58. DEFINE_GUID(IID_IVBGetControl, 0x40A050A0L, 0x3C31, 0x101B, 0xA8, 0x2E, 0x08, 0x00, 0x2B, 0x2B, 0x23, 0x37);
  59. DEFINE_GUID(IID_IGetOleObject, 0x8A701DA0L, 0x4FEB, 0x101B, 0xA8, 0x2E, 0x08, 0x00, 0x2B, 0x2B, 0x23, 0x37);
  60. //Format
  61. DEFINE_GUID(IID_IGetVBAObject, 0x91733A60L, 0x3F4C, 0x101B, 0xA3, 0xF6, 0x00, 0xAA, 0x00, 0x34, 0xE4, 0xE9);
  62. DEFINE_GUID(IID_IVBFormat, 0x9849FD60L, 0x3768, 0x101B, 0x8D, 0x72, 0xAE, 0x61,0x64, 0xFF, 0xE3, 0xCF);