ReactOS 0.4.17-dev-573-g8315b8c
CTaskbarList Class Reference

#include <CTaskbarList.h>

Inheritance diagram for CTaskbarList:
Collaboration diagram for CTaskbarList:

Public Member Functions

 CTaskbarList ()
 
virtual ~CTaskbarList ()
 
STDMETHOD() SetTabProperties (HWND hwnd, STPFLAG stpFlags) override
 
STDMETHOD() SetProgressValue (HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal) override
 
STDMETHOD() SetProgressState (HWND hwnd, TBPFLAG tbpFlags) override
 
STDMETHOD() RegisterTab (HWND hwnd, HWND hwndMDI) override
 
STDMETHOD() UnregisterTab (HWND hwndTab) override
 
STDMETHOD() SetTabOrder (HWND hwndTab, HWND hwndInsertBefore) override
 
STDMETHOD() SetTabActive (HWND hwndTab, HWND hwndMDI, DWORD dwReserved) override
 
STDMETHOD() ThumbBarAddButtons (HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) override
 
STDMETHOD() ThumbBarUpdateButtons (HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) override
 
STDMETHOD() ThumbBarSetImageList (HWND hwnd, HIMAGELIST himl) override
 
STDMETHOD() SetOverlayIcon (HWND hwnd, HICON hIcon, LPCWSTR pszDescription) override
 
STDMETHOD() SetThumbnailTooltip (HWND hwnd, LPCWSTR pszTip) override
 
STDMETHOD() SetThumbnailClip (HWND hwnd, RECT *prcClip) override
 
STDMETHOD() MarkFullscreenWindow (HWND hwnd, BOOL fFullscreen) override
 
STDMETHOD() HrInit () override
 
STDMETHOD() AddTab (HWND hwnd) override
 
STDMETHOD() DeleteTab (HWND hwnd) override
 
STDMETHOD() ActivateTab (HWND hwnd) override
 
STDMETHOD() SetActiveAlt (HWND hwnd) override
 
- Public Member Functions inherited from ATL::CComObjectRootEx< CComMultiThreadModelNoCS >
 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 
- Public Member Functions inherited from ITaskbarList4
 DEFINE_ENUM_FLAG_OPERATORS (STPFLAG) HRESULT SetTabProperties([in] HWND hwndTab
 
- Public Member Functions inherited from ITaskbarList3
 DEFINE_ENUM_FLAG_OPERATORS (TBPFLAG) HRESULT SetProgressValue([in] HWND hwnd
 
HRESULT SetProgressState ([in] HWND hwnd, [in] TBPFLAG tbpFlags)
 
HRESULT RegisterTab ([in] HWND hwndTab, [in] HWND hwndMDI)
 
HRESULT UnregisterTab ([in] HWND hwndTab)
 
HRESULT SetTabOrder ([in] HWND hwndTab, [in] HWND hwndInsertBefore)
 
HRESULT SetTabActive ([in] HWND hwndTab, [in] HWND hwndMDI, [in] DWORD dwReserved)
 
HRESULT ThumbBarAddButtons ([in] HWND hwnd, [in] UINT cButtons, [in, size_is(cButtons)] LPTHUMBBUTTON pButton)
 
HRESULT ThumbBarUpdateButtons ([in] HWND hwnd, [in] UINT cButtons, [in, size_is(cButtons)] LPTHUMBBUTTON pButton)
 
HRESULT ThumbBarSetImageList ([in] HWND hwnd, [in] HIMAGELIST himl)
 
HRESULT SetOverlayIcon ([in] HWND hwnd, [in] HICON hIcon, [in, unique, string] LPCWSTR pszDescription)
 
HRESULT SetThumbnailTooltip ([in] HWND hwnd, [in, unique, string] LPCWSTR pszTip)
 
HRESULT SetThumbnailClip ([in] HWND hwnd, [in] RECT *prcClip)
 
HRESULT MarkFullscreenWindow ([in] HWND hwnd, [in] BOOL fullscreen)
 
HRESULT HrInit ()
 
HRESULT AddTab ([in] HWND hwnd)
 
HRESULT DeleteTab ([in] HWND hwnd)
 
HRESULT ActivateTab ([in] HWND hwnd)
 
HRESULT SetActiveAlt ([in] HWND hwnd)
 
- Public Member Functions inherited from IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 

Private Member Functions

HWND TaskWnd ()
 
void SendTaskWndShellHook (WPARAM wParam, HWND hWnd)
 

Private Attributes

HWND m_hTaskWnd
 
UINT m_ShellHookMsg
 

Additional Inherited Members

- Public Types inherited from ITaskbarList4
enum  STPFLAG {
  STPF_NONE = 0x0000 , STPF_USEAPPTHUMBNAILALWAYS = 0x0001 , STPF_USEAPPTHUMBNAILWHENACTIVE = 0x0002 , STPF_USEAPPPEEKALWAYS = 0x0004 ,
  STPF_USEAPPPEEKWHENACTIVE = 0x0008
}
 
typedef enum ITaskbarList4::STPFLAG STPFLAG
 
- Public Types inherited from ITaskbarList3
enum  TBPFLAG {
  TBPF_NOPROGRESS = 0x0000 , TBPF_INDETERMINATE = 0x0001 , TBPF_NORMAL = 0x0002 , TBPF_ERROR = 0x0004 ,
  TBPF_PAUSED = 0x0008
}
 
typedef enum ITaskbarList3::TBPFLAG TBPFLAG
 
- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 
- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 
- Public Attributes inherited from ITaskbarList4
STPFLAG stpFlags
 
- Public Attributes inherited from ITaskbarList3
ULONGLONG ullCompleted
 
ULONGLONG ULONGLONG ullTotal
 

Detailed Description

Definition at line 11 of file CTaskbarList.h.

Constructor & Destructor Documentation

◆ CTaskbarList()

CTaskbarList::CTaskbarList ( )

Definition at line 17 of file CTaskbarList.cpp.

19{
21}
UINT m_ShellHookMsg
Definition: CTaskbarList.h:17
#define NULL
Definition: types.h:112
#define L(x)
Definition: resources.c:13
UINT WINAPI RegisterWindowMessageW(_In_ LPCWSTR)

◆ ~CTaskbarList()

CTaskbarList::~CTaskbarList ( )
virtual

Definition at line 23 of file CTaskbarList.cpp.

24{
25}

Member Function Documentation

◆ ActivateTab()

HRESULT WINAPI CTaskbarList::ActivateTab ( HWND  hwnd)
override

Implements ITaskbarList.

Definition at line 174 of file CTaskbarList.cpp.

175{
176 SendTaskWndShellHook(HSHELL_WINDOWACTIVATED, hwnd);
177 return S_OK;
178}
void SendTaskWndShellHook(WPARAM wParam, HWND hWnd)
#define S_OK
Definition: intsafe.h:52
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023

◆ AddTab()

HRESULT WINAPI CTaskbarList::AddTab ( HWND  hwnd)
override

Implements ITaskbarList.

Definition at line 162 of file CTaskbarList.cpp.

163{
165 return S_OK;
166}
#define HSHELL_WINDOWCREATED
Definition: winuser.h:1266

◆ DeleteTab()

HRESULT WINAPI CTaskbarList::DeleteTab ( HWND  hwnd)
override

Implements ITaskbarList.

Definition at line 168 of file CTaskbarList.cpp.

169{
171 return S_OK;
172}
#define HSHELL_WINDOWDESTROYED
Definition: winuser.h:1267

◆ HrInit()

HRESULT WINAPI CTaskbarList::HrInit ( )
override

Implements ITaskbarList.

Definition at line 151 of file CTaskbarList.cpp.

152{
153 if (m_ShellHookMsg == NULL)
154 return E_OUTOFMEMORY;
155
156 if (!TaskWnd())
157 return E_HANDLE;
158
159 return S_OK;
160}
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define E_HANDLE
Definition: winerror.h:4117

◆ MarkFullscreenWindow()

HRESULT WINAPI CTaskbarList::MarkFullscreenWindow ( HWND  hwnd,
BOOL  fFullscreen 
)
override

Implements ITaskbarList2.

Definition at line 140 of file CTaskbarList.cpp.

141{
143 return E_NOTIMPL;
144}
#define UNIMPLEMENTED
Definition: ntoskrnl.c:15
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ RegisterTab()

HRESULT WINAPI CTaskbarList::RegisterTab ( HWND  hwnd,
HWND  hwndMDI 
)
override

Implements ITaskbarList3.

Definition at line 74 of file CTaskbarList.cpp.

75{
77 return E_NOTIMPL;
78}

◆ SendTaskWndShellHook()

void CTaskbarList::SendTaskWndShellHook ( WPARAM  wParam,
HWND  hWnd 
)
private

Definition at line 41 of file CTaskbarList.cpp.

42{
43 HWND hTaskWnd = TaskWnd();
44 if (hTaskWnd && m_ShellHookMsg)
46}
HWND hWnd
Definition: settings.c:17
WPARAM wParam
Definition: combotst.c:138
LONG_PTR LPARAM
Definition: minwindef.h:175
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)

Referenced by ActivateTab(), AddTab(), and DeleteTab().

◆ SetActiveAlt()

HRESULT WINAPI CTaskbarList::SetActiveAlt ( HWND  hwnd)
override

Implements ITaskbarList.

Definition at line 180 of file CTaskbarList.cpp.

181{
183 return E_NOTIMPL;
184}

◆ SetOverlayIcon()

HRESULT WINAPI CTaskbarList::SetOverlayIcon ( HWND  hwnd,
HICON  hIcon,
LPCWSTR  pszDescription 
)
override

Implements ITaskbarList3.

Definition at line 117 of file CTaskbarList.cpp.

118{
120 return E_NOTIMPL;
121}

◆ SetProgressState()

HRESULT WINAPI CTaskbarList::SetProgressState ( HWND  hwnd,
TBPFLAG  tbpFlags 
)
override

Implements ITaskbarList3.

Definition at line 68 of file CTaskbarList.cpp.

69{
71 return E_NOTIMPL;
72}

◆ SetProgressValue()

HRESULT WINAPI CTaskbarList::SetProgressValue ( HWND  hwnd,
ULONGLONG  ullCompleted,
ULONGLONG  ullTotal 
)
override

Definition at line 62 of file CTaskbarList.cpp.

63{
65 return E_NOTIMPL;
66}

◆ SetTabActive()

HRESULT WINAPI CTaskbarList::SetTabActive ( HWND  hwndTab,
HWND  hwndMDI,
DWORD  dwReserved 
)
override

Implements ITaskbarList3.

Definition at line 93 of file CTaskbarList.cpp.

94{
96 return E_NOTIMPL;
97}

◆ SetTabOrder()

HRESULT WINAPI CTaskbarList::SetTabOrder ( HWND  hwndTab,
HWND  hwndInsertBefore 
)
override

Implements ITaskbarList3.

Definition at line 86 of file CTaskbarList.cpp.

87{
89 return E_NOTIMPL;
90}

◆ SetTabProperties()

HRESULT WINAPI CTaskbarList::SetTabProperties ( HWND  hwnd,
STPFLAG  stpFlags 
)
override

Definition at line 51 of file CTaskbarList.cpp.

52{
54 return E_NOTIMPL;
55}

◆ SetThumbnailClip()

HRESULT WINAPI CTaskbarList::SetThumbnailClip ( HWND  hwnd,
RECT prcClip 
)
override

Implements ITaskbarList3.

Definition at line 129 of file CTaskbarList.cpp.

130{
132 return E_NOTIMPL;
133}

◆ SetThumbnailTooltip()

HRESULT WINAPI CTaskbarList::SetThumbnailTooltip ( HWND  hwnd,
LPCWSTR  pszTip 
)
override

Implements ITaskbarList3.

Definition at line 123 of file CTaskbarList.cpp.

124{
126 return E_NOTIMPL;
127}

◆ TaskWnd()

HWND CTaskbarList::TaskWnd ( )
private

Definition at line 27 of file CTaskbarList.cpp.

28{
29 HWND hTrayWnd;
31 return m_hTaskWnd;
32
33 hTrayWnd = FindWindowW(L"Shell_TrayWnd", NULL);
34 if (hTrayWnd)
35 {
37 }
38 return m_hTaskWnd;
39}
#define TWM_GETTASKSWITCH
Definition: precomp.h:132
HANDLE HWND
Definition: compat.h:19
BOOL WINAPI IsWindow(_In_opt_ HWND)
HWND WINAPI FindWindowW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR)

Referenced by HrInit(), and SendTaskWndShellHook().

◆ ThumbBarAddButtons()

HRESULT WINAPI CTaskbarList::ThumbBarAddButtons ( HWND  hwnd,
UINT  cButtons,
LPTHUMBBUTTON  pButton 
)
override

Implements ITaskbarList3.

Definition at line 99 of file CTaskbarList.cpp.

100{
102 return E_NOTIMPL;
103}

◆ ThumbBarSetImageList()

HRESULT WINAPI CTaskbarList::ThumbBarSetImageList ( HWND  hwnd,
HIMAGELIST  himl 
)
override

Definition at line 111 of file CTaskbarList.cpp.

112{
114 return E_NOTIMPL;
115}

◆ ThumbBarUpdateButtons()

HRESULT WINAPI CTaskbarList::ThumbBarUpdateButtons ( HWND  hwnd,
UINT  cButtons,
LPTHUMBBUTTON  pButton 
)
override

Implements ITaskbarList3.

Definition at line 105 of file CTaskbarList.cpp.

106{
108 return E_NOTIMPL;
109}

◆ UnregisterTab()

HRESULT WINAPI CTaskbarList::UnregisterTab ( HWND  hwndTab)
override

Implements ITaskbarList3.

Definition at line 80 of file CTaskbarList.cpp.

81{
83 return E_NOTIMPL;
84}

Member Data Documentation

◆ m_hTaskWnd

HWND CTaskbarList::m_hTaskWnd
private

Definition at line 16 of file CTaskbarList.h.

Referenced by TaskWnd().

◆ m_ShellHookMsg

UINT CTaskbarList::m_ShellHookMsg
private

Definition at line 17 of file CTaskbarList.h.

Referenced by CTaskbarList(), HrInit(), and SendTaskWndShellHook().


The documentation for this class was generated from the following files: