tlogstg.idl 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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. cpp_quote("")
  6. import "objidl.idl";
  7. import "oleidl.idl";
  8. import "shtypes.idl";
  9. cpp_quote("#include <winapifamily.h>")
  10. cpp_quote("")
  11. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  12. cpp_quote("")
  13. cpp_quote("#define SID_STravelLogCursor IID_ITravelLogStg")
  14. enum tagTLENUMF {
  15. TLEF_RELATIVE_INCLUDE_CURRENT = 0x00000001,
  16. TLEF_RELATIVE_BACK = 0x00000010,
  17. TLEF_RELATIVE_FORE = 0x00000020,
  18. TLEF_INCLUDE_UNINVOKEABLE = 0x00000040,
  19. TLEF_ABSOLUTE = 0x00000031,
  20. TLEF_EXCLUDE_SUBFRAME_ENTRIES = 0x00000080,
  21. };
  22. typedef struct _WINDOWDATA {
  23. DWORD dwWindowID;
  24. UINT uiCP;
  25. PIDLIST_ABSOLUTE pidl;
  26. [string] LPWSTR lpszUrl;
  27. [string] LPWSTR lpszUrlLocation;
  28. [string] LPWSTR lpszTitle;
  29. } WINDOWDATA;
  30. typedef DWORD TLENUMF;
  31. typedef WINDOWDATA *LPWINDOWDATA;
  32. typedef const WINDOWDATA *LPCWINDOWDATA;
  33. [object, uuid (7ebfdd87-ad18-11d3-a4c5-00c04f72d6b8)]
  34. interface ITravelLogEntry : IUnknown {
  35. HRESULT GetTitle ([out] LPWSTR *ppszTitle);
  36. HRESULT GetURL ([out] LPWSTR *ppszURL);
  37. };
  38. [object, uuid (241c033e-e659-43da-aa4d-4086dbc4758d)]
  39. interface ITravelLogClient : IUnknown {
  40. HRESULT FindWindowByIndex ([in] DWORD dwID,[out] IUnknown **ppunk);
  41. HRESULT GetWindowData ([in] IStream *pStream,[out] LPWINDOWDATA pWinData);
  42. HRESULT LoadHistoryPosition ([in] LPWSTR pszUrlLocation,[in] DWORD dwPosition);
  43. };
  44. [object, uuid (7ebfdd85-ad18-11d3-a4c5-00c04f72d6b8)]
  45. interface IEnumTravelLogEntry : IUnknown {
  46. HRESULT Next ([in] ULONG cElt,[out, size_is (cElt), length_is (*pcEltFetched)] ITravelLogEntry **rgElt,[out] ULONG *pcEltFetched);
  47. HRESULT Skip ([in] ULONG cElt);
  48. HRESULT Reset (void);
  49. HRESULT Clone ([out] IEnumTravelLogEntry **ppEnum);
  50. };
  51. [object, uuid (7ebfdd80-ad18-11d3-a4c5-00c04f72d6b8), pointer_default (unique)]
  52. interface ITravelLogStg : IUnknown {
  53. HRESULT CreateEntry ([in] LPCWSTR pszUrl,[in] LPCWSTR pszTitle,[in] ITravelLogEntry *ptleRelativeTo,[in] BOOL fPrepend,[out] ITravelLogEntry **pptle);
  54. HRESULT TravelTo ([in] ITravelLogEntry *ptle);
  55. HRESULT EnumEntries ([in] TLENUMF flags,[out] IEnumTravelLogEntry **ppenum);
  56. HRESULT FindEntries ([in] TLENUMF flags,[in] LPCWSTR pszUrl,[out] IEnumTravelLogEntry **ppenum);
  57. HRESULT GetCount ([in] TLENUMF flags,[out] DWORD *pcEntries);
  58. HRESULT RemoveEntry ([in] ITravelLogEntry *ptle);
  59. HRESULT GetRelativeEntry ([in] int iOffset,[out] ITravelLogEntry **ptle);
  60. };
  61. cpp_quote("#endif")