summaryrefslogtreecommitdiffstats
path: root/private/inc/isltrack.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--private/inc/isltrack.h80
1 files changed, 80 insertions, 0 deletions
diff --git a/private/inc/isltrack.h b/private/inc/isltrack.h
new file mode 100644
index 000000000..6b971868b
--- /dev/null
+++ b/private/inc/isltrack.h
@@ -0,0 +1,80 @@
+
+#ifndef _ISLTRACK_H_
+#define _ISLTRACK_H_
+
+#if defined(ENABLE_TRACK)
+
+//===========================================================================
+//
+// Interface: IShellLinkTracker
+//
+// The IShellLinkTracker interface is used to access the ShellLink's
+// CTracker object. For example, Monikers call this interface to set
+// the creation flags in the CTracker.
+//
+//
+// [Member functions]
+//
+// Initialize
+// This function is called to set the Creation Flags on
+// a ShellLinkTracker object
+//
+// Parameters: [DWORD] dwCreationFlags
+//
+// GetTrackFlags
+// This function is used to get the creation flags (known externally
+// as "track flags").
+//
+// Parameters: [DWORD *] pdwTrackFlags
+//
+// Resolve
+// This function resolves the shell link, searching for the
+// link if necessary.
+//
+// Parameters: [HWND] hwnd
+// - The window of the caller (can be GetDesktopWindow()).
+// [DWORD] fFlags
+// - Flags to control the Resolve, from the SLR_ enumeration.
+// [DWORD] dwRestricted
+// - Track Flags to be OR-ed with the ShellLink object's
+// internal Track Flags (a.k.a. Creation Flags).
+// [DWORD] dwTickCountDeadline
+// - The maximum amount of time, in milliseconds, for
+// which a search should execute (if a search is necessary).
+//
+//
+//===========================================================================
+
+#undef INTERFACE
+#define INTERFACE IShellLinkTracker
+
+DECLARE_INTERFACE_(IShellLinkTracker, IUnknown)
+{
+ // *** IUnknown methods ***
+ STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID * ppvObj) PURE;
+ STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+ STDMETHOD_(ULONG,Release) (THIS) PURE;
+
+
+ // *** IShellLinkTracker methods ***
+ STDMETHOD(Initialize)(THIS_
+ DWORD dwTrackFlags) PURE;
+ STDMETHOD(GetTrackFlags)(THIS_
+ DWORD * pdwTrackFlags) PURE;
+ STDMETHOD(Resolve)(THIS_
+ HWND hwnd,
+ DWORD fFlags,
+ DWORD dwRestriction,
+ DWORD dwTickCountDeadline,
+ DWORD dwReserved ) PURE;
+
+
+};
+
+
+typedef IShellLinkTracker * LPSHELLLINKTRACKER;
+
+DEFINE_GUID(IID_IShellLinkTracker, 0x5E35D200L, 0xF3BB, 0x11CE, 0x9B, 0xDB, 0x00, 0xAA, 0x00, 0x4C, 0xD0, 0x1A);
+
+#endif // _CAIRO_
+#endif // _ISLTRACK_H_