diff options
author | Chris Sutcliffe <ir0nh34d@users.sourceforge.net> | 2012-04-29 06:43:40 +0400 |
---|---|---|
committer | Chris Sutcliffe <ir0nh34d@users.sourceforge.net> | 2012-04-29 06:43:40 +0400 |
commit | d578467671df5214ce2de0c311374fd84477d269 (patch) | |
tree | 17cb601081b48a61f1807a2d6eea32fe3593f3c2 /winsup/w32api/include | |
parent | 4a94927000e8755e3ee74a519a668029fbd49904 (diff) |
2012-04-28 LRN <l_r_nightmare@users.sf.net>
* include/shobjidl.h: New file.
* lib/shobjidl-uuid.c: New file.
* lib/Makefile.in: Reference shobjidl-uuid.c.
Diffstat (limited to 'winsup/w32api/include')
-rw-r--r-- | winsup/w32api/include/shobjidl.h | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/winsup/w32api/include/shobjidl.h b/winsup/w32api/include/shobjidl.h new file mode 100644 index 000000000..c69e5cf72 --- /dev/null +++ b/winsup/w32api/include/shobjidl.h @@ -0,0 +1,143 @@ +#ifndef _SHLOBJIDL_H +#define _SHLOBJIDL_H +#if __GNUC__ >= 3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#include <ole2.h> +#include <shlguid.h> +#include <shellapi.h> +#pragma pack(push,1) +#include <commctrl.h> + +extern const IID IID_ITaskbarList3; +extern const GUID CLSID_ITaskbarList; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd562322%28v=vs.85%29.aspx */ +typedef enum THUMBBUTTONMASK { + THB_BITMAP = 0x00000001, + THB_ICON = 0x00000002, + THB_TOOLTIP = 0x00000004, + THB_FLAGS = 0x00000008 +} THUMBBUTTONMASK; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd562321%28v=vs.85%29.aspx */ +typedef enum THUMBBUTTONFLAGS { + THBF_ENABLED = 0x00000000, + THBF_DISABLED = 0x00000001, + THBF_DISMISSONCLICK = 0x00000002, + THBF_NOBACKGROUND = 0x00000004, + THBF_HIDDEN = 0x00000008, + THBF_NONINTERACTIVE = 0x00000010 +} THUMBBUTTONFLAGS; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391559%28v=vs.85%29.aspx */ +typedef struct THUMBBUTTON { + THUMBBUTTONMASK dwMask; + UINT iId; + UINT iBitmap; + HICON hIcon; + WCHAR szTip[260]; + THUMBBUTTONFLAGS dwFlags; +} THUMBBUTTON, *LPTHUMBBUTTON; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391697%28v=vs.85%29.aspx */ +typedef enum TBPFLAG { + TBPF_NOPROGRESS = 0x00000000, + TBPF_INDETERMINATE = 0x00000001, + TBPF_NORMAL = 0x00000002, + TBPF_ERROR = 0x00000004, + TBPF_PAUSED = 0x00000008 +} TBPFLAG; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774652%28v=vs.85%29.aspx */ +#define INTERFACE ITaskbarList +DECLARE_INTERFACE_(ITaskbarList, IUnknown) +{ + STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; + STDMETHOD_(ULONG,AddRef)(THIS) PURE; + STDMETHOD_(ULONG,Release)(THIS) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774650%28v=vs.85%29.aspx */ + STDMETHOD(HrInit)(THIS) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774646%28v=vs.85%29.aspx */ + STDMETHOD(AddTab)(THIS_ HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774648%28v=vs.85%29.aspx */ + STDMETHOD(DeleteTab)(THIS_ HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774644%28v=vs.85%29.aspx */ + STDMETHOD(ActivateTab)(THIS_ HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774655%28v=vs.85%29.aspx */ + STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE; +}; +#undef INTERFACE +typedef ITaskbarList *LPTASKBARLIST; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774638%28v=vs.85%29.aspx */ +#define INTERFACE ITaskbarList2 +DECLARE_INTERFACE_(ITaskbarList2, ITaskbarList) +{ + STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; + STDMETHOD_(ULONG,AddRef)(THIS) PURE; + STDMETHOD_(ULONG,Release)(THIS) PURE; + STDMETHOD(HrInit)(THIS) PURE; + STDMETHOD(AddTab)(THIS_ HWND) PURE; + STDMETHOD(DeleteTab)(THIS_ HWND) PURE; + STDMETHOD(ActivateTab)(THIS_ HWND) PURE; + STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774640%28v=vs.85%29.aspx */ + STDMETHOD(MarkFullscreenWindow)(THIS_ HWND,BOOL) PURE; +}; +#undef INTERFACE +typedef ITaskbarList2 *LPTASKBARLIST2; + +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391692%28v=vs.85%29.aspx */ +#define INTERFACE ITaskbarList3 +DECLARE_INTERFACE_(ITaskbarList3, ITaskbarList2) +{ + STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; + STDMETHOD_(ULONG,AddRef)(THIS) PURE; + STDMETHOD_(ULONG,Release)(THIS) PURE; + STDMETHOD(HrInit)(THIS) PURE; + STDMETHOD(AddTab)(THIS_ HWND) PURE; + STDMETHOD(DeleteTab)(THIS_ HWND) PURE; + STDMETHOD(ActivateTab)(THIS_ HWND) PURE; + STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE; + STDMETHOD(MarkFullscreenWindow)(THIS_ HWND,BOOL) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391698%28v=vs.85%29.aspx */ + STDMETHOD(SetProgressValue)(THIS_ ULONGLONG,ULONGLONG) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391697%28v=vs.85%29.aspx */ + STDMETHOD(SetProgressState)(THIS_ HWND,TBPFLAG) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391694%28v=vs.85%29.aspx */ + STDMETHOD(RegisterTab)(THIS_ HWND,HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391706%28v=vs.85%29.aspx */ + STDMETHOD(UnregisterTab)(THIS_ HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391700%28v=vs.85%29.aspx */ + STDMETHOD(SetTabOrder)(THIS_ HWND,HWND) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391699%28v=vs.85%29.aspx */ + STDMETHOD(SetTabActive)(THIS_ HWND,HWND,DWORD) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391703%28v=vs.85%29.aspx */ + STDMETHOD(ThumbBarAddButtons)(THIS_ HWND,UINT,LPTHUMBBUTTON) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391705%28v=vs.85%29.aspx */ + STDMETHOD(ThumbBarUpdateButtons)(THIS_ HWND,UINT,LPTHUMBBUTTON) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391704%28v=vs.85%29.aspx */ + STDMETHOD(ThumbBarSetImageList)(THIS_ HWND,HIMAGELIST) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391696%28v=vs.85%29.aspx */ + STDMETHOD(SetOverlayIcon)(THIS_ HWND,HICON,LPCWSTR) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391702%28v=vs.85%29.aspx */ + STDMETHOD(SetThumbnailTooltip)(THIS_ HWND,LPCWSTR) PURE; +/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391701%28v=vs.85%29.aspx */ + STDMETHOD(SetThumbnailClip)(THIS_ HWND,RECT*) PURE; +}; +#undef INTERFACE +typedef ITaskbarList3 *LPTASKBARLIST3; + +#pragma pack(pop) +#ifdef __cplusplus +} +#endif + + +#endif /* _SHLOBJIDL_H */ |