source: Daodan/MinGW/include/shobjidl.h@ 1106

Last change on this file since 1106 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

File size: 5.6 KB
Line 
1#ifndef _SHLOBJIDL_H
2#define _SHLOBJIDL_H
3#if __GNUC__ >= 3
4#pragma GCC system_header
5#endif
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#include <ole2.h>
12#include <shlguid.h>
13#include <shellapi.h>
14#pragma pack(push,1)
15#include <commctrl.h>
16
17extern const IID IID_ITaskbarList3;
18extern const GUID CLSID_ITaskbarList;
19
20/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd562322%28v=vs.85%29.aspx */
21typedef enum THUMBBUTTONMASK {
22 THB_BITMAP = 0x00000001,
23 THB_ICON = 0x00000002,
24 THB_TOOLTIP = 0x00000004,
25 THB_FLAGS = 0x00000008
26} THUMBBUTTONMASK;
27
28/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd562321%28v=vs.85%29.aspx */
29typedef enum THUMBBUTTONFLAGS {
30 THBF_ENABLED = 0x00000000,
31 THBF_DISABLED = 0x00000001,
32 THBF_DISMISSONCLICK = 0x00000002,
33 THBF_NOBACKGROUND = 0x00000004,
34 THBF_HIDDEN = 0x00000008,
35 THBF_NONINTERACTIVE = 0x00000010
36} THUMBBUTTONFLAGS;
37
38/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391559%28v=vs.85%29.aspx */
39typedef struct THUMBBUTTON {
40 THUMBBUTTONMASK dwMask;
41 UINT iId;
42 UINT iBitmap;
43 HICON hIcon;
44 WCHAR szTip[260];
45 THUMBBUTTONFLAGS dwFlags;
46} THUMBBUTTON, *LPTHUMBBUTTON;
47
48/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391697%28v=vs.85%29.aspx */
49typedef enum TBPFLAG {
50 TBPF_NOPROGRESS = 0x00000000,
51 TBPF_INDETERMINATE = 0x00000001,
52 TBPF_NORMAL = 0x00000002,
53 TBPF_ERROR = 0x00000004,
54 TBPF_PAUSED = 0x00000008
55} TBPFLAG;
56
57/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774652%28v=vs.85%29.aspx */
58#define INTERFACE ITaskbarList
59DECLARE_INTERFACE_(ITaskbarList, IUnknown)
60{
61 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
62 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
63 STDMETHOD_(ULONG,Release)(THIS) PURE;
64/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774650%28v=vs.85%29.aspx */
65 STDMETHOD(HrInit)(THIS) PURE;
66/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774646%28v=vs.85%29.aspx */
67 STDMETHOD(AddTab)(THIS_ HWND) PURE;
68/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774648%28v=vs.85%29.aspx */
69 STDMETHOD(DeleteTab)(THIS_ HWND) PURE;
70/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774644%28v=vs.85%29.aspx */
71 STDMETHOD(ActivateTab)(THIS_ HWND) PURE;
72/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774655%28v=vs.85%29.aspx */
73 STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE;
74};
75#undef INTERFACE
76typedef ITaskbarList *LPTASKBARLIST;
77
78/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774638%28v=vs.85%29.aspx */
79#define INTERFACE ITaskbarList2
80DECLARE_INTERFACE_(ITaskbarList2, ITaskbarList)
81{
82 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
83 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
84 STDMETHOD_(ULONG,Release)(THIS) PURE;
85 STDMETHOD(HrInit)(THIS) PURE;
86 STDMETHOD(AddTab)(THIS_ HWND) PURE;
87 STDMETHOD(DeleteTab)(THIS_ HWND) PURE;
88 STDMETHOD(ActivateTab)(THIS_ HWND) PURE;
89 STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE;
90/* http://msdn.microsoft.com/en-us/library/windows/desktop/bb774640%28v=vs.85%29.aspx */
91 STDMETHOD(MarkFullscreenWindow)(THIS_ HWND,BOOL) PURE;
92};
93#undef INTERFACE
94typedef ITaskbarList2 *LPTASKBARLIST2;
95
96/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391692%28v=vs.85%29.aspx */
97#define INTERFACE ITaskbarList3
98DECLARE_INTERFACE_(ITaskbarList3, ITaskbarList2)
99{
100 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
101 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
102 STDMETHOD_(ULONG,Release)(THIS) PURE;
103 STDMETHOD(HrInit)(THIS) PURE;
104 STDMETHOD(AddTab)(THIS_ HWND) PURE;
105 STDMETHOD(DeleteTab)(THIS_ HWND) PURE;
106 STDMETHOD(ActivateTab)(THIS_ HWND) PURE;
107 STDMETHOD(SetActiveAlt)(THIS_ HWND) PURE;
108 STDMETHOD(MarkFullscreenWindow)(THIS_ HWND,BOOL) PURE;
109/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391698%28v=vs.85%29.aspx */
110 STDMETHOD(SetProgressValue)(THIS_ ULONGLONG,ULONGLONG) PURE;
111/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391697%28v=vs.85%29.aspx */
112 STDMETHOD(SetProgressState)(THIS_ HWND,TBPFLAG) PURE;
113/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391694%28v=vs.85%29.aspx */
114 STDMETHOD(RegisterTab)(THIS_ HWND,HWND) PURE;
115/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391706%28v=vs.85%29.aspx */
116 STDMETHOD(UnregisterTab)(THIS_ HWND) PURE;
117/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391700%28v=vs.85%29.aspx */
118 STDMETHOD(SetTabOrder)(THIS_ HWND,HWND) PURE;
119/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391699%28v=vs.85%29.aspx */
120 STDMETHOD(SetTabActive)(THIS_ HWND,HWND,DWORD) PURE;
121/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391703%28v=vs.85%29.aspx */
122 STDMETHOD(ThumbBarAddButtons)(THIS_ HWND,UINT,LPTHUMBBUTTON) PURE;
123/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391705%28v=vs.85%29.aspx */
124 STDMETHOD(ThumbBarUpdateButtons)(THIS_ HWND,UINT,LPTHUMBBUTTON) PURE;
125/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391704%28v=vs.85%29.aspx */
126 STDMETHOD(ThumbBarSetImageList)(THIS_ HWND,HIMAGELIST) PURE;
127/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391696%28v=vs.85%29.aspx */
128 STDMETHOD(SetOverlayIcon)(THIS_ HWND,HICON,LPCWSTR) PURE;
129/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391702%28v=vs.85%29.aspx */
130 STDMETHOD(SetThumbnailTooltip)(THIS_ HWND,LPCWSTR) PURE;
131/* http://msdn.microsoft.com/en-us/library/windows/desktop/dd391701%28v=vs.85%29.aspx */
132 STDMETHOD(SetThumbnailClip)(THIS_ HWND,RECT*) PURE;
133};
134#undef INTERFACE
135typedef ITaskbarList3 *LPTASKBARLIST3;
136
137#pragma pack(pop)
138#ifdef __cplusplus
139}
140#endif
141
142
143#endif /* _SHLOBJIDL_H */
Note: See TracBrowser for help on using the repository browser.