ReactOS  0.4.15-dev-1397-g19779b3
CCopyToMenu Class Reference

#include <CCopyToMoveToMenu.h>

Inheritance diagram for CCopyToMenu:
Collaboration diagram for CCopyToMenu:

Public Member Functions

 CCopyToMenu ()
 
 ~CCopyToMenu ()
 
virtual HRESULT WINAPI QueryContextMenu (HMENU hMenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags)
 
virtual HRESULT WINAPI InvokeCommand (LPCMINVOKECOMMANDINFO lpcmi)
 
virtual HRESULT WINAPI GetCommandString (UINT_PTR idCommand, UINT uFlags, UINT *lpReserved, LPSTR lpszName, UINT uMaxNameLen)
 
virtual HRESULT WINAPI HandleMenuMsg (UINT uMsg, WPARAM wParam, LPARAM lParam)
 
virtual HRESULT WINAPI Initialize (PCIDLIST_ABSOLUTE pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID)
 
virtual HRESULT WINAPI SetSite (IUnknown *pUnkSite)
 
virtual HRESULT WINAPI GetSite (REFIID riid, void **ppvSite)
 
- 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 IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 
- Public Member Functions inherited from IObjectWithSite
HRESULT GetSite ([in] REFIID riid, [out, iid_is(riid)] PVOID *ppvSite)
 

Public Attributes

CComHeapPtr< ITEMIDLISTm_pidlFolder
 
WNDPROC m_fnOldWndProc
 
BOOL m_bIgnoreTextBoxChange
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 
- Public Attributes inherited from IContextMenu
CMIC_MASK_NOZONECHECKS typedef IContextMenuLPCONTEXTMENU
 

Protected Member Functions

HRESULT DoCopyToFolder (LPCMINVOKECOMMANDINFO lpici)
 
HRESULT DoRealCopy (LPCMINVOKECOMMANDINFO lpici, PCUIDLIST_ABSOLUTE pidl)
 
CStringW DoGetFileTitle ()
 

Protected Attributes

UINT m_idCmdFirst
 
UINT m_idCmdLast
 
UINT m_idCmdCopyTo
 
CComPtr< IDataObjectm_pDataObject
 
CComPtr< IUnknownm_pSite
 

Additional Inherited Members

- Public Types inherited from IContextMenu2
typedef IContextMenu2LPCONTEXTMENU2
 
- Public Types inherited from IContextMenu
typedef struct IContextMenu::tagCMINVOKECOMMANDINFO CMINVOKECOMMANDINFO
 
typedef struct IContextMenu::tagCMINVOKECOMMANDINFOLPCMINVOKECOMMANDINFO
 
typedef struct IContextMenu::tagCMInvokeCommandInfoEx CMINVOKECOMMANDINFOEX
 
typedef struct IContextMenu::tagCMInvokeCommandInfoExLPCMINVOKECOMMANDINFOEX
 
- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 
- Public Types inherited from IObjectWithSite
typedef IObjectWithSiteLPOBJECTWITHSITE
 
- Public Types inherited from IShellExtInit
typedef IShellExtInitLPSHELLEXTINIT
 
- 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)
 
- Static Public Attributes inherited from IContextMenu
static CMDSTR_VIEWDETAILSW(const WCHAR []) const WCHAR CMDSTR_NEWFOLDERW [] = {'N','e','w','F','o','l','d','e','r',0}
 
static const WCHAR CMDSTR_VIEWLISTW [] = {'V','i','e','w','L','i','s','t',0}
 
static const WCHAR CMDSTR_VIEWDETAILSW [] = {'V','i','e','w','D','e','t','a','i','l','s',0}
 

Detailed Description

Definition at line 11 of file CCopyToMoveToMenu.h.

Constructor & Destructor Documentation

◆ CCopyToMenu()

CCopyToMenu::CCopyToMenu ( )

Definition at line 45 of file CCopyToMenu.cpp.

45  :
46  m_idCmdFirst(0),
47  m_idCmdLast(0),
48  m_idCmdCopyTo(-1),
51 {
52 }
#define FALSE
Definition: types.h:117
WNDPROC m_fnOldWndProc
BOOL m_bIgnoreTextBoxChange
#define NULL
Definition: types.h:112

◆ ~CCopyToMenu()

CCopyToMenu::~CCopyToMenu ( )

Definition at line 54 of file CCopyToMenu.cpp.

55 {
56 }

Member Function Documentation

◆ DoCopyToFolder()

HRESULT CCopyToMenu::DoCopyToFolder ( LPCMINVOKECOMMANDINFO  lpici)
protected

Definition at line 260 of file CCopyToMenu.cpp.

261 {
262  WCHAR wszPath[MAX_PATH];
263  HRESULT hr = E_FAIL;
264 
265  TRACE("DoCopyToFolder(%p)\n", lpici);
266 
267  if (!SHGetPathFromIDListW(m_pidlFolder, wszPath))
268  {
269  ERR("SHGetPathFromIDListW failed\n");
270  return hr;
271  }
272 
273  CStringW strFileTitle = DoGetFileTitle();
274  CStringW strTitle;
275  strTitle.Format(IDS_COPYTOTITLE, static_cast<LPCWSTR>(strFileTitle));
276 
277  BROWSEINFOW info = { lpici->hwnd };
278  info.pidlRoot = NULL;
279  info.lpszTitle = strTitle;
281  info.lpfn = BrowseCallbackProc;
282  info.lParam = reinterpret_cast<LPARAM>(this);
284  if (pidl)
285  {
286  hr = DoRealCopy(lpici, pidl);
287  }
288 
289  return hr;
290 }
HRESULT hr
Definition: shlfolder.c:183
#define IDS_COPYTOTITLE
Definition: shresdef.h:301
CComHeapPtr< ITEMIDLIST > m_pidlFolder
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
Definition: pidl.c:1294
void __cdecl Format(UINT nFormatID,...)
Definition: cstringt.h:716
#define E_FAIL
Definition: ddrawi.h:102
CStringW DoGetFileTitle()
HRESULT DoRealCopy(LPCMINVOKECOMMANDINFO lpici, PCUIDLIST_ABSOLUTE pidl)
#define SHBrowseForFolder
Definition: shlobj.h:1180
#define TRACE(s)
Definition: solgame.cpp:4
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:79
#define MAX_PATH
Definition: compat.h:34
#define BIF_USENEWUI
Definition: shlobj.h:1151
#define ERR(fmt,...)
Definition: debug.h:110
#define BIF_RETURNONLYFSDIRS
Definition: shlobj.h:1144
static int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData)
#define NULL
Definition: types.h:112

Referenced by InvokeCommand().

◆ DoGetFileTitle()

CStringW CCopyToMenu::DoGetFileTitle ( )
protected

Definition at line 223 of file CCopyToMenu.cpp.

224 {
225  CStringW ret = L"(file)";
226 
227  CComHeapPtr<CIDA> pCIDA;
229  if (FAILED_UNEXPECTEDLY(hr))
230  return ret;
231 
232  PCUIDLIST_ABSOLUTE pidlParent = HIDA_GetPIDLFolder(pCIDA);
233  if (!pidlParent)
234  {
235  ERR("HIDA_GetPIDLFolder failed\n");
236  return ret;
237  }
238 
240  PCUIDLIST_RELATIVE pidlRelative = HIDA_GetPIDLItem(pCIDA, 0);
241  if (!pidlRelative)
242  {
243  ERR("HIDA_GetPIDLItem failed\n");
244  return ret;
245  }
246 
247  CComHeapPtr<ITEMIDLIST> pidlCombine(ILCombine(pidlParent, pidlRelative));
248 
249  if (SHGetPathFromIDListW(pidlCombine, szPath))
251  else
252  ERR("Cannot get path\n");
253 
254  if (pCIDA->cidl > 1)
255  ret += L" ...";
256 
257  return ret;
258 }
HRESULT _GetCidlFromDataObject(IDataObject *pDataObject, CIDA **ppcida)
Definition: CCopyToMenu.cpp:12
HRESULT hr
Definition: shlfolder.c:183
LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
Definition: pidl.c:699
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
Definition: pidl.c:1294
static PCUIDLIST_RELATIVE HIDA_GetPIDLItem(CIDA const *pida, SIZE_T i)
Definition: shellutils.h:543
LPWSTR WINAPI PathFindFileNameW(LPCWSTR lpszPath)
Definition: path.c:389
CComPtr< IDataObject > m_pDataObject
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define MAX_PATH
Definition: compat.h:34
UINT cidl
Definition: shlobj.h:499
int ret
static const WCHAR L[]
Definition: oid.c:1250
static PCUIDLIST_ABSOLUTE HIDA_GetPIDLFolder(CIDA const *pida)
Definition: shellutils.h:538
#define ERR(fmt,...)
Definition: debug.h:110
const ITEMIDLIST_ABSOLUTE UNALIGNED * PCUIDLIST_ABSOLUTE
Definition: shtypes.idl:63
LPCWSTR szPath
Definition: env.c:35
const ITEMIDLIST_RELATIVE UNALIGNED * PCUIDLIST_RELATIVE
Definition: shtypes.idl:57

Referenced by DoCopyToFolder().

◆ DoRealCopy()

HRESULT CCopyToMenu::DoRealCopy ( LPCMINVOKECOMMANDINFO  lpici,
PCUIDLIST_ABSOLUTE  pidl 
)
protected

Definition at line 158 of file CCopyToMenu.cpp.

159 {
160  CComHeapPtr<CIDA> pCIDA;
162  if (FAILED_UNEXPECTEDLY(hr))
163  return hr;
164 
165  PCUIDLIST_ABSOLUTE pidlParent = HIDA_GetPIDLFolder(pCIDA);
166  if (!pidlParent)
167  {
168  ERR("HIDA_GetPIDLFolder failed\n");
169  return E_FAIL;
170  }
171 
172  CStringW strFiles;
174  for (UINT n = 0; n < pCIDA->cidl; ++n)
175  {
176  PCUIDLIST_RELATIVE pidlRelative = HIDA_GetPIDLItem(pCIDA, n);
177  if (!pidlRelative)
178  continue;
179 
180  CComHeapPtr<ITEMIDLIST> pidlCombine(ILCombine(pidlParent, pidlRelative));
181  if (!pidl)
182  return E_FAIL;
183 
184  SHGetPathFromIDListW(pidlCombine, szPath);
185 
186  if (n > 0)
187  strFiles += L'|';
188  strFiles += szPath;
189  }
190 
191  strFiles += L'|'; // double null-terminated
192  strFiles.Replace(L'|', L'\0');
193 
194  if (_ILIsDesktop(pidl))
196  else
198  INT cchPath = lstrlenW(szPath);
199  if (cchPath + 1 < MAX_PATH)
200  {
201  szPath[cchPath + 1] = 0; // double null-terminated
202  }
203  else
204  {
205  ERR("Too long path\n");
206  return E_FAIL;
207  }
208 
209  SHFILEOPSTRUCTW op = { lpici->hwnd };
210  op.wFunc = FO_COPY;
211  op.pFrom = strFiles;
212  op.pTo = szPath;
213  op.fFlags = FOF_ALLOWUNDO;
214  int res = SHFileOperationW(&op);
215  if (res)
216  {
217  ERR("SHFileOperationW failed with 0x%x\n", res);
218  return E_FAIL;
219  }
220  return S_OK;
221 }
HRESULT _GetCidlFromDataObject(IDataObject *pDataObject, CIDA **ppcida)
Definition: CCopyToMenu.cpp:12
HRESULT hr
Definition: shlfolder.c:183
#define FO_COPY
Definition: shellapi.h:134
LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
Definition: pidl.c:699
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
Definition: pidl.c:1294
static PCUIDLIST_RELATIVE HIDA_GetPIDLItem(CIDA const *pida, SIZE_T i)
Definition: shellutils.h:543
GLdouble n
Definition: glext.h:7729
#define FOF_ALLOWUNDO
Definition: shellapi.h:144
#define lstrlenW
Definition: compat.h:609
#define E_FAIL
Definition: ddrawi.h:102
int32_t INT
Definition: typedefs.h:58
int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
Definition: shlfileop.cpp:1918
#define FALSE
Definition: types.h:117
BOOL _ILIsDesktop(LPCITEMIDLIST pidl)
Definition: CBandSite.h:24
CComPtr< IDataObject > m_pDataObject
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define MAX_PATH
Definition: compat.h:34
UINT cidl
Definition: shlobj.h:499
UINT op
Definition: effect.c:224
static const WCHAR L[]
Definition: oid.c:1250
static PCUIDLIST_ABSOLUTE HIDA_GetPIDLFolder(CIDA const *pida)
Definition: shellutils.h:538
#define ERR(fmt,...)
Definition: debug.h:110
int Replace(PCXSTR pszOld, PCXSTR pszNew)
Definition: cstringt.h:774
#define S_OK
Definition: intsafe.h:51
const ITEMIDLIST_ABSOLUTE UNALIGNED * PCUIDLIST_ABSOLUTE
Definition: shtypes.idl:63
BOOL WINAPI SHGetSpecialFolderPathW(HWND hwndOwner, LPWSTR szPath, int nFolder, BOOL bCreate)
Definition: shellpath.c:2709
LPCWSTR szPath
Definition: env.c:35
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
const ITEMIDLIST_RELATIVE UNALIGNED * PCUIDLIST_RELATIVE
Definition: shtypes.idl:57
GLuint res
Definition: glext.h:9613
#define CSIDL_DESKTOPDIRECTORY
Definition: shlobj.h:2027

Referenced by DoCopyToFolder().

◆ GetCommandString()

HRESULT WINAPI CCopyToMenu::GetCommandString ( UINT_PTR  idCommand,
UINT  uFlags,
UINT lpReserved,
LPSTR  lpszName,
UINT  uMaxNameLen 
)
virtual

Implements IContextMenu.

Definition at line 369 of file CCopyToMenu.cpp.

374 {
375  FIXME("%p %lu %u %p %p %u\n", this,
376  idCmd, uType, pwReserved, pszName, cchMax);
377 
378  return E_NOTIMPL;
379 }
#define FIXME(fmt,...)
Definition: debug.h:111
UINT cchMax
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetSite()

HRESULT WINAPI CCopyToMenu::GetSite ( REFIID  riid,
void **  ppvSite 
)
virtual

Definition at line 403 of file CCopyToMenu.cpp.

404 {
405  if (!m_pSite)
406  return E_FAIL;
407 
408  return m_pSite->QueryInterface(riid, ppvSite);
409 }
REFIID riid
Definition: precomp.h:44
#define E_FAIL
Definition: ddrawi.h:102
CComPtr< IUnknown > m_pSite

◆ HandleMenuMsg()

HRESULT WINAPI CCopyToMenu::HandleMenuMsg ( UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Implements IContextMenu2.

Definition at line 382 of file CCopyToMenu.cpp.

383 {
384  TRACE("This %p uMsg %x\n", this, uMsg);
385  return E_NOTIMPL;
386 }
#define TRACE(s)
Definition: solgame.cpp:4
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Initialize()

HRESULT WINAPI CCopyToMenu::Initialize ( PCIDLIST_ABSOLUTE  pidlFolder,
IDataObject pdtobj,
HKEY  hkeyProgID 
)
virtual

Implements IShellExtInit.

Definition at line 389 of file CCopyToMenu.cpp.

391 {
392  m_pidlFolder.Attach(ILClone(pidlFolder));
393  m_pDataObject = pdtobj;
394  return S_OK;
395 }
CComHeapPtr< ITEMIDLIST > m_pidlFolder
CComPtr< IDataObject > m_pDataObject
#define S_OK
Definition: intsafe.h:51
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228

◆ InvokeCommand()

HRESULT WINAPI CCopyToMenu::InvokeCommand ( LPCMINVOKECOMMANDINFO  lpcmi)
virtual

Implements IContextMenu.

Definition at line 345 of file CCopyToMenu.cpp.

346 {
347  HRESULT hr = E_FAIL;
348  TRACE("CCopyToMenu::InvokeCommand(%p)\n", lpici);
349 
350  if (HIWORD(lpici->lpVerb) == 0)
351  {
352  if (m_idCmdFirst + LOWORD(lpici->lpVerb) == m_idCmdCopyTo)
353  {
354  hr = DoCopyToFolder(lpici);
355  }
356  }
357  else
358  {
359  if (::lstrcmpiA(lpici->lpVerb, "copyto") == 0)
360  {
361  hr = DoCopyToFolder(lpici);
362  }
363  }
364 
365  return hr;
366 }
int WINAPI lstrcmpiA(LPCSTR lpString1, LPCSTR lpString2)
Definition: lstring.c:42
HRESULT hr
Definition: shlfolder.c:183
#define E_FAIL
Definition: ddrawi.h:102
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:79
HRESULT DoCopyToFolder(LPCMINVOKECOMMANDINFO lpici)
#define HIWORD(l)
Definition: typedefs.h:247
#define LOWORD(l)
Definition: pedump.c:82

◆ QueryContextMenu()

HRESULT WINAPI CCopyToMenu::QueryContextMenu ( HMENU  hMenu,
UINT  indexMenu,
UINT  idCmdFirst,
UINT  idCmdLast,
UINT  uFlags 
)
virtual

Implements IContextMenu.

Definition at line 293 of file CCopyToMenu.cpp.

298 {
299  MENUITEMINFOW mii;
300  UINT Count = 0;
301 
302  TRACE("CCopyToMenu::QueryContextMenu(%p, %u, %u, %u, %u)\n",
303  hMenu, indexMenu, idCmdFirst, idCmdLast, uFlags);
304 
305  m_idCmdFirst = m_idCmdLast = idCmdFirst;
306 
307  // insert separator if necessary
308  ZeroMemory(&mii, sizeof(mii));
309  mii.cbSize = sizeof(mii);
310  mii.fMask = MIIM_TYPE;
311  if (GetMenuItemInfoW(hMenu, indexMenu - 1, TRUE, &mii) &&
312  mii.fType != MFT_SEPARATOR)
313  {
314  ZeroMemory(&mii, sizeof(mii));
315  mii.cbSize = sizeof(mii);
316  mii.fMask = MIIM_TYPE;
317  mii.fType = MFT_SEPARATOR;
318  if (InsertMenuItemW(hMenu, indexMenu, TRUE, &mii))
319  {
320  ++indexMenu;
321  ++Count;
322  }
323  }
324 
325  // insert "Copy to folder..."
327  ZeroMemory(&mii, sizeof(mii));
328  mii.cbSize = sizeof(mii);
329  mii.fMask = MIIM_ID | MIIM_TYPE;
330  mii.fType = MFT_STRING;
331  mii.dwTypeData = strText.GetBuffer();
332  mii.cch = wcslen(mii.dwTypeData);
333  mii.wID = m_idCmdLast;
334  if (InsertMenuItemW(hMenu, indexMenu, TRUE, &mii))
335  {
337  ++indexMenu;
338  ++Count;
339  }
340 
341  return MAKE_HRESULT(SEVERITY_SUCCESS, 0, Count);
342 }
#define MFT_STRING
Definition: winuser.h:741
#define TRUE
Definition: types.h:120
#define ZeroMemory
Definition: winbase.h:1648
LPWSTR dwTypeData
Definition: winuser.h:3244
UINT uFlags
Definition: api.c:59
#define SEVERITY_SUCCESS
Definition: winerror.h:64
#define MAKE_HRESULT(sev, fac, code)
Definition: dmerror.h:30
#define MIIM_ID
Definition: winuser.h:717
int Count
Definition: noreturn.cpp:7
BOOL WINAPI GetMenuItemInfoW(_In_ HMENU, _In_ UINT, _In_ BOOL, _Inout_ LPMENUITEMINFOW)
#define TRACE(s)
Definition: solgame.cpp:4
#define MFT_SEPARATOR
Definition: winuser.h:739
#define MIIM_TYPE
Definition: winuser.h:720
BOOL WINAPI InsertMenuItemW(_In_ HMENU, _In_ UINT, _In_ BOOL, _In_ LPCMENUITEMINFOW)
unsigned int UINT
Definition: ndis.h:50
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
#define IDS_COPYTOMENU
Definition: shresdef.h:300
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)

◆ SetSite()

HRESULT WINAPI CCopyToMenu::SetSite ( IUnknown pUnkSite)
virtual

Implements IObjectWithSite.

Definition at line 397 of file CCopyToMenu.cpp.

398 {
399  m_pSite = pUnkSite;
400  return S_OK;
401 }
CComPtr< IUnknown > m_pSite
#define S_OK
Definition: intsafe.h:51

Member Data Documentation

◆ m_bIgnoreTextBoxChange

BOOL CCopyToMenu::m_bIgnoreTextBoxChange

Definition at line 30 of file CCopyToMoveToMenu.h.

Referenced by BrowseCallbackProc(), and WindowProc().

◆ m_fnOldWndProc

WNDPROC CCopyToMenu::m_fnOldWndProc

Definition at line 29 of file CCopyToMoveToMenu.h.

Referenced by BrowseCallbackProc(), and WindowProc().

◆ m_idCmdCopyTo

UINT CCopyToMenu::m_idCmdCopyTo
protected

Definition at line 19 of file CCopyToMoveToMenu.h.

Referenced by InvokeCommand(), and QueryContextMenu().

◆ m_idCmdFirst

UINT CCopyToMenu::m_idCmdFirst
protected

Definition at line 19 of file CCopyToMoveToMenu.h.

Referenced by InvokeCommand(), and QueryContextMenu().

◆ m_idCmdLast

UINT CCopyToMenu::m_idCmdLast
protected

Definition at line 19 of file CCopyToMoveToMenu.h.

Referenced by QueryContextMenu().

◆ m_pDataObject

CComPtr<IDataObject> CCopyToMenu::m_pDataObject
protected

Definition at line 20 of file CCopyToMoveToMenu.h.

Referenced by DoGetFileTitle(), DoRealCopy(), and Initialize().

◆ m_pidlFolder

CComHeapPtr<ITEMIDLIST> CCopyToMenu::m_pidlFolder

Definition at line 28 of file CCopyToMoveToMenu.h.

Referenced by BrowseCallbackProc(), DoCopyToFolder(), and Initialize().

◆ m_pSite

CComPtr<IUnknown> CCopyToMenu::m_pSite
protected

Definition at line 21 of file CCopyToMoveToMenu.h.

Referenced by GetSite(), and SetSite().


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