ReactOS  0.4.15-dev-2714-g4864c87
CMenuSFToolbar Class Reference

#include <CMenuToolbars.h>

Inheritance diagram for CMenuSFToolbar:
Collaboration diagram for CMenuSFToolbar:

Public Member Functions

 CMenuSFToolbar (CMenuBand *menuBand)
 
virtual ~CMenuSFToolbar ()
 
HRESULT SetShellFolder (IShellFolder *psf, LPCITEMIDLIST pidlFolder, HKEY hKey, DWORD dwFlags)
 
HRESULT GetShellFolder (DWORD *pdwFlags, LPITEMIDLIST *ppidl, REFIID riid, void **ppv)
 
virtual HRESULT FillToolbar (BOOL clearFirst=FALSE)
 
- Public Member Functions inherited from CMenuToolbarBase
 CMenuToolbarBase (CMenuBand *menuBand, BOOL usePager)
 
virtual ~CMenuToolbarBase ()
 
HRESULT IsWindowOwner (HWND hwnd)
 
HRESULT CreateToolbar (HWND hwndParent, DWORD dwFlags)
 
HRESULT GetWindow (HWND *phwnd)
 
HRESULT ShowDW (BOOL fShow)
 
HRESULT Close ()
 
HRESULT OnWinEvent (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *theResult)
 
HRESULT ChangeHotItem (CMenuToolbarBase *toolbar, INT item, DWORD dwFlags)
 
HRESULT ChangePopupItem (CMenuToolbarBase *toolbar, INT item)
 
HRESULT PopupSubMenu (UINT itemId, UINT index, IShellMenu *childShellMenu, BOOL keyInitiated)
 
HRESULT PopupSubMenu (UINT itemId, UINT index, HMENU menu)
 
HRESULT TrackContextMenu (IContextMenu *contextMenu, POINT pt)
 
HRESULT KeyboardItemChange (DWORD changeType)
 
HRESULT PrepareExecuteItem (INT iItem)
 
HRESULT ExecuteItem ()
 
HRESULT GetSizes (SIZE *pMinSize, SIZE *pMaxSize, SIZE *pIntegralSize)
 
HRESULT SetPosSize (int x, int y, int cx, int cy)
 
void InvalidateDraw ()
 
HRESULT DisableMouseTrack (BOOL bDisable)
 
HRESULT CancelCurrentPopup ()
 
HRESULT PopupItem (INT iItem, BOOL keyInitiated)
 
HRESULT GetDataFromId (INT iItem, INT *pIndex, DWORD_PTR *pData)
 
HRESULT KillPopupTimer ()
 
HRESULT MenuBarMouseDown (INT iIndex, BOOL isLButton)
 
HRESULT MenuBarMouseUp (INT iIndex, BOOL isLButton)
 
HRESULT ProcessClick (INT iItem)
 
HRESULT ProcessContextMenu (INT iItem)
 
HRESULT BeforeCancelPopup ()
 

Protected Member Functions

virtual HRESULT OnDeletingButton (const NMTOOLBAR *tb)
 
virtual HRESULT InternalGetTooltip (INT iItem, INT index, DWORD_PTR dwData, LPWSTR pszText, INT cchTextMax)
 
virtual HRESULT InternalExecuteItem (INT iItem, INT index, DWORD_PTR dwData)
 
virtual HRESULT InternalPopupItem (INT iItem, INT index, DWORD_PTR dwData, BOOL keyInitiated)
 
virtual HRESULT InternalHasSubMenu (INT iItem, INT index, DWORD_PTR dwData)
 
virtual HRESULT InternalContextMenu (INT iItem, INT index, DWORD_PTR dwData, POINT pt)
 
- Protected Member Functions inherited from CMenuToolbarBase
HRESULT AddButton (DWORD commandId, LPCWSTR caption, BOOL hasSubMenu, INT iconId, DWORD_PTR buttonData, BOOL last)
 
HRESULT AddSeparator (BOOL last)
 
HRESULT AddPlaceholder ()
 
HRESULT ClearToolbar ()
 
HWND GetToolbar ()
 

Private Attributes

CComPtr< IShellFolderm_shellFolder
 
LPCITEMIDLIST m_idList
 
HKEY m_hKey
 

Additional Inherited Members

- Protected Attributes inherited from CMenuToolbarBase
CMenuBandm_menuBand
 
DWORD m_dwMenuFlags
 
BOOL m_hasSizes
 
SIZE m_idealSize
 
SIZE m_itemSize
 
BOOL m_usePager
 
CMenuToolbarBasem_hotBar
 
INT m_hotItem
 
CMenuToolbarBasem_popupBar
 
INT m_popupItem
 
DWORD m_initFlags
 
BOOL m_isTrackingPopup
 
INT m_executeIndex
 
INT m_executeItem
 
DWORD_PTR m_executeData
 
BOOL m_cancelingPopup
 

Detailed Description

Definition at line 167 of file CMenuToolbars.h.

Constructor & Destructor Documentation

◆ CMenuSFToolbar()

CMenuSFToolbar::CMenuSFToolbar ( CMenuBand menuBand)

Definition at line 1288 of file CMenuToolbars.cpp.

1288  :
1289  CMenuToolbarBase(menuBand, TRUE),
1291  m_idList(NULL),
1292  m_hKey(NULL)
1293 {
1294 }
CMenuToolbarBase(CMenuBand *menuBand, BOOL usePager)
#define TRUE
Definition: types.h:120
CComPtr< IShellFolder > m_shellFolder
#define NULL
Definition: types.h:112
LPCITEMIDLIST m_idList

◆ ~CMenuSFToolbar()

CMenuSFToolbar::~CMenuSFToolbar ( )
virtual

Definition at line 1296 of file CMenuToolbars.cpp.

1297 {
1298 }

Member Function Documentation

◆ FillToolbar()

HRESULT CMenuSFToolbar::FillToolbar ( BOOL  clearFirst = FALSE)
virtual

Implements CMenuToolbarBase.

Definition at line 1314 of file CMenuToolbars.cpp.

1315 {
1316  HRESULT hr;
1317 
1318  CComPtr<IEnumIDList> eidl;
1319  hr = m_shellFolder->EnumObjects(GetToolbar(), SHCONTF_FOLDERS | SHCONTF_NONFOLDERS, &eidl);
1320  if (FAILED_UNEXPECTEDLY(hr))
1321  return hr;
1322 
1323  HDPA dpaSort = DPA_Create(10);
1324 
1326  hr = eidl->Next(1, &item, NULL);
1327  while (hr == S_OK)
1328  {
1329  if (m_menuBand->_CallCBWithItemPidl(item, 0x10000000, 0, 0) == S_FALSE)
1330  {
1331  DPA_AppendPtr(dpaSort, item);
1332  }
1333  else
1334  {
1336  }
1337 
1338  hr = eidl->Next(1, &item, NULL);
1339  }
1340 
1341  // If no items were added, show the "empty" placeholder
1342  if (DPA_GetPtrCount(dpaSort) == 0)
1343  {
1344  DPA_Destroy(dpaSort);
1345  return AddPlaceholder();
1346  }
1347 
1348  TRACE("FillToolbar added %d items to the DPA\n", DPA_GetPtrCount(dpaSort));
1349 
1351 
1352  for (int i = 0; i<DPA_GetPtrCount(dpaSort);)
1353  {
1354  PWSTR MenuString;
1355 
1356  INT index = 0;
1357  INT indexOpen = 0;
1358 
1359  STRRET sr = { STRRET_CSTR, { 0 } };
1360 
1361  item = (LPITEMIDLIST)DPA_GetPtr(dpaSort, i);
1362 
1363  hr = m_shellFolder->GetDisplayNameOf(item, SIGDN_NORMALDISPLAY, &sr);
1364  if (FAILED_UNEXPECTEDLY(hr))
1365  {
1366  DPA_Destroy(dpaSort);
1367  return hr;
1368  }
1369 
1370  StrRetToStr(&sr, NULL, &MenuString);
1371 
1373 
1374  LPCITEMIDLIST itemc = item;
1375 
1376  SFGAOF attrs = SFGAO_FOLDER;
1377  hr = m_shellFolder->GetAttributesOf(1, &itemc, &attrs);
1378 
1379  DWORD_PTR dwData = reinterpret_cast<DWORD_PTR>(item);
1380 
1381  // Fetch next item already, so we know if the current one is the last
1382  i++;
1383 
1384  AddButton(i, MenuString, attrs & SFGAO_FOLDER, index, dwData, i >= DPA_GetPtrCount(dpaSort));
1385 
1386  CoTaskMemFree(MenuString);
1387  }
1388 
1389  DPA_Destroy(dpaSort);
1390  return hr;
1391 }
HRESULT AddPlaceholder()
HRESULT AddButton(DWORD commandId, LPCWSTR caption, BOOL hasSubMenu, INT iconId, DWORD_PTR buttonData, BOOL last)
HDPA WINAPI DPA_Create(INT nGrow)
Definition: dpa.c:950
VOID WINAPI CoTaskMemFree(LPVOID ptr)
Definition: ifs.c:442
HRESULT hr
Definition: shlfolder.c:183
BOOL WINAPI DPA_Destroy(HDPA hdpa)
Definition: dpa.c:396
uint16_t * PWSTR
Definition: typedefs.h:56
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
static HANDLE ULONG_PTR dwData
Definition: file.c:35
int32_t INT
Definition: typedefs.h:58
#define DPA_AppendPtr(hdpa, pitem)
Definition: commctrl.h:4958
CComPtr< IShellFolder > m_shellFolder
int CALLBACK PidlListSort(void *item1, void *item2, LPARAM lParam)
#define S_FALSE
Definition: winerror.h:2357
LONG_PTR LPARAM
Definition: windef.h:208
#define DPA_GetPtrCount(hdpa)
Definition: commctrl.h:4955
GLuint index
Definition: glext.h:6031
HRESULT _CallCBWithItemPidl(LPITEMIDLIST pidl, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: CMenuBand.cpp:773
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
BOOL WINAPI DPA_Sort(HDPA hdpa, PFNDPACOMPARE pfnCompare, LPARAM lParam)
Definition: dpa.c:813
uint32_t DWORD_PTR
Definition: typedefs.h:65
#define S_OK
Definition: intsafe.h:51
static ATOM item
Definition: dde.c:856
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define DPA_GetPtr
Definition: commctrl.h:5
#define NULL
Definition: types.h:112
CMenuBand * m_menuBand
Definition: CMenuToolbars.h:39
int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder *sh, LPCITEMIDLIST pidl, int *pIndex)
Definition: iconcache.cpp:789
#define StrRetToStr
Definition: shlwapi.h:1751
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
static IShellFolder IShellItem **static IBindCtx LPITEMIDLIST SFGAOF
Definition: ebrowser.c:83
Definition: dpa.c:48

Referenced by CMenuBand::SetShellFolder(), and CMenuBand::SetSite().

◆ GetShellFolder()

HRESULT CMenuSFToolbar::GetShellFolder ( DWORD pdwFlags,
LPITEMIDLIST ppidl,
REFIID  riid,
void **  ppv 
)

Definition at line 1419 of file CMenuToolbars.cpp.

1420 {
1421  HRESULT hr;
1422 
1423  hr = m_shellFolder->QueryInterface(riid, ppv);
1424  if (FAILED_UNEXPECTEDLY(hr))
1425  return hr;
1426 
1427  if (pdwFlags)
1428  *pdwFlags = m_dwMenuFlags;
1429 
1430  if (ppidl)
1431  {
1432  LPITEMIDLIST pidl = NULL;
1433 
1434  if (m_idList)
1435  {
1436  pidl = ILClone(m_idList);
1437  if (!pidl)
1438  {
1439  ERR("ILClone failed!\n");
1440  (*reinterpret_cast<IUnknown**>(ppv))->Release();
1441  return E_FAIL;
1442  }
1443  }
1444 
1445  *ppidl = pidl;
1446  }
1447 
1448  return hr;
1449 }
HRESULT hr
Definition: shlfolder.c:183
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define E_FAIL
Definition: ddrawi.h:102
CComPtr< IShellFolder > m_shellFolder
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define ERR(fmt,...)
Definition: debug.h:110
_In_ BOOLEAN Release
Definition: cdrom.h:920
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
#define NULL
Definition: types.h:112
LPCITEMIDLIST m_idList
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41

Referenced by CMenuBand::_CallCB(), and CMenuBand::GetShellFolder().

◆ InternalContextMenu()

HRESULT CMenuSFToolbar::InternalContextMenu ( INT  iItem,
INT  index,
DWORD_PTR  dwData,
POINT  pt 
)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1451 of file CMenuToolbars.cpp.

1452 {
1453  HRESULT hr;
1454  CComPtr<IContextMenu> contextMenu = NULL;
1455  LPCITEMIDLIST pidl = reinterpret_cast<LPCITEMIDLIST>(dwData);
1456 
1457  hr = m_shellFolder->GetUIObjectOf(GetToolbar(), 1, &pidl, IID_NULL_PPV_ARG(IContextMenu, &contextMenu));
1458  if (FAILED_UNEXPECTEDLY(hr))
1459  {
1460  return hr;
1461  }
1462 
1463  hr = TrackContextMenu(contextMenu, pt);
1464 
1465  return hr;
1466 }
HRESULT hr
Definition: shlfolder.c:183
#define pt(x, y)
Definition: drawing.c:79
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
static HANDLE ULONG_PTR dwData
Definition: file.c:35
CComPtr< IShellFolder > m_shellFolder
#define IID_NULL_PPV_ARG(Itype, ppType)
LONG HRESULT
Definition: typedefs.h:79
HRESULT TrackContextMenu(IContextMenu *contextMenu, POINT pt)
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define NULL
Definition: types.h:112

◆ InternalExecuteItem()

HRESULT CMenuSFToolbar::InternalExecuteItem ( INT  iItem,
INT  index,
DWORD_PTR  dwData 
)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1468 of file CMenuToolbars.cpp.

1469 {
1470  return m_menuBand->_CallCBWithItemPidl(reinterpret_cast<LPITEMIDLIST>(data), SMC_SFEXEC, 0, 0);
1471 }
HRESULT _CallCBWithItemPidl(LPITEMIDLIST pidl, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: CMenuBand.cpp:773
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
CMenuBand * m_menuBand
Definition: CMenuToolbars.h:39

◆ InternalGetTooltip()

HRESULT CMenuSFToolbar::InternalGetTooltip ( INT  iItem,
INT  index,
DWORD_PTR  dwData,
LPWSTR  pszText,
INT  cchTextMax 
)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1393 of file CMenuToolbars.cpp.

1394 {
1395  //ITEMIDLIST * pidl = reinterpret_cast<LPITEMIDLIST>(dwData);
1396  UNIMPLEMENTED;
1397  return E_NOTIMPL;
1398 }
#define E_NOTIMPL
Definition: ddrawi.h:99
#define UNIMPLEMENTED
Definition: debug.h:115

◆ InternalHasSubMenu()

HRESULT CMenuSFToolbar::InternalHasSubMenu ( INT  iItem,
INT  index,
DWORD_PTR  dwData 
)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1510 of file CMenuToolbars.cpp.

1511 {
1512  HRESULT hr;
1513  LPCITEMIDLIST pidl = reinterpret_cast<LPITEMIDLIST>(dwData);
1514 
1515  SFGAOF attrs = SFGAO_FOLDER;
1516  hr = m_shellFolder->GetAttributesOf(1, &pidl, &attrs);
1517  if (FAILED_UNEXPECTEDLY(hr))
1518  return hr;
1519 
1520  return (attrs & SFGAO_FOLDER) ? S_OK : S_FALSE;
1521 }
HRESULT hr
Definition: shlfolder.c:183
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
static HANDLE ULONG_PTR dwData
Definition: file.c:35
CComPtr< IShellFolder > m_shellFolder
#define S_FALSE
Definition: winerror.h:2357
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define S_OK
Definition: intsafe.h:51
static IShellFolder IShellItem **static IBindCtx LPITEMIDLIST SFGAOF
Definition: ebrowser.c:83

◆ InternalPopupItem()

HRESULT CMenuSFToolbar::InternalPopupItem ( INT  iItem,
INT  index,
DWORD_PTR  dwData,
BOOL  keyInitiated 
)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1473 of file CMenuToolbars.cpp.

1474 {
1475  HRESULT hr;
1476  UINT uId;
1477  UINT uIdAncestor;
1478  DWORD flags;
1479  CComPtr<IShellMenuCallback> psmc;
1480  CComPtr<IShellMenu> shellMenu;
1481 
1482  LPITEMIDLIST pidl = reinterpret_cast<LPITEMIDLIST>(dwData);
1483 
1484  if (!pidl)
1485  return E_FAIL;
1486 
1488  if (FAILED_UNEXPECTEDLY(hr))
1489  return hr;
1490 
1491  m_menuBand->GetMenuInfo(&psmc, &uId, &uIdAncestor, &flags);
1492 
1493  // FIXME: not sure what to use as uId/uIdAncestor here
1494  hr = shellMenu->Initialize(psmc, 0, uId, SMINIT_VERTICAL);
1495  if (FAILED_UNEXPECTEDLY(hr))
1496  return hr;
1497 
1498  CComPtr<IShellFolder> childFolder;
1499  hr = m_shellFolder->BindToObject(pidl, NULL, IID_PPV_ARG(IShellFolder, &childFolder));
1500  if (FAILED_UNEXPECTEDLY(hr))
1501  return hr;
1502 
1503  hr = shellMenu->SetShellFolder(childFolder, NULL, NULL, SMSET_TOP);
1504  if (FAILED_UNEXPECTEDLY(hr))
1505  return hr;
1506 
1507  return PopupSubMenu(iItem, index, shellMenu, keyInitiated);
1508 }
HRESULT hr
Definition: shlfolder.c:183
static HANDLE ULONG_PTR dwData
Definition: file.c:35
virtual HRESULT STDMETHODCALLTYPE GetMenuInfo(IShellMenuCallback **ppsmc, UINT *puId, UINT *puIdAncestor, DWORD *pdwFlags)
Definition: CMenuBand.cpp:91
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
CComPtr< IShellFolder > m_shellFolder
GLuint index
Definition: glext.h:6031
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
HRESULT PopupSubMenu(UINT itemId, UINT index, IShellMenu *childShellMenu, BOOL keyInitiated)
#define CMenuBand_CreateInstance
Definition: shellmenu.h:81
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
CMenuBand * m_menuBand
Definition: CMenuToolbars.h:39
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41

◆ OnDeletingButton()

HRESULT CMenuSFToolbar::OnDeletingButton ( const NMTOOLBAR tb)
protectedvirtual

Implements CMenuToolbarBase.

Definition at line 1400 of file CMenuToolbars.cpp.

1401 {
1402  ILFree(reinterpret_cast<LPITEMIDLIST>(tb->tbButton.dwData));
1403  return S_OK;
1404 }
void WINAPI ILFree(LPITEMIDLIST pidl)
Definition: pidl.c:925
static const WCHAR tb[]
Definition: suminfo.c:286
#define S_OK
Definition: intsafe.h:51

◆ SetShellFolder()

HRESULT CMenuSFToolbar::SetShellFolder ( IShellFolder psf,
LPCITEMIDLIST  pidlFolder,
HKEY  hKey,
DWORD  dwFlags 
)

Definition at line 1406 of file CMenuToolbars.cpp.

1407 {
1408  m_shellFolder = psf;
1409  m_idList = ILClone(pidlFolder);
1410  m_hKey = hKey;
1412 
1413  if (IsWindow())
1414  ClearToolbar();
1415 
1416  return S_OK;
1417 }
BOOL WINAPI IsWindow(_In_opt_ HWND)
CComPtr< IShellFolder > m_shellFolder
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define S_OK
Definition: intsafe.h:51
FxAutoRegKey hKey
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
LPCITEMIDLIST m_idList

Referenced by CMenuBand::SetShellFolder().

Member Data Documentation

◆ m_hKey

HKEY CMenuSFToolbar::m_hKey
private

Definition at line 173 of file CMenuToolbars.h.

Referenced by SetShellFolder().

◆ m_idList

LPCITEMIDLIST CMenuSFToolbar::m_idList
private

Definition at line 172 of file CMenuToolbars.h.

Referenced by GetShellFolder(), and SetShellFolder().

◆ m_shellFolder

CComPtr<IShellFolder> CMenuSFToolbar::m_shellFolder
private

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