ReactOS 0.4.15-dev-8434-g155a7c7
utility.cpp File Reference
#include "precomp.h"
Include dependency graph for utility.cpp:

Go to the source code of this file.

Macros

#define SHCIDS_CANONICALONLY   0x10000000L
 

Functions

voidoperator new (size_t size)
 
void operator delete (void *p)
 
void operator delete (void *p, UINT_PTR)
 
HRESULT SHELL_GetIDListFromObject (IUnknown *punk, PIDLIST_ABSOLUTE *ppidl)
 
static HRESULT SHELL_CompareAbsoluteIDs (LPARAM lParam, PCIDLIST_ABSOLUTE a, PCIDLIST_ABSOLUTE b)
 
BOOL SHELL_IsEqualAbsoluteID (PCIDLIST_ABSOLUTE a, PCIDLIST_ABSOLUTE b)
 
BOOL SHELL_IsVerb (IContextMenu *pcm, UINT_PTR idCmd, LPCWSTR Verb)
 

Macro Definition Documentation

◆ SHCIDS_CANONICALONLY

#define SHCIDS_CANONICALONLY   0x10000000L

Definition at line 3 of file utility.cpp.

Function Documentation

◆ operator delete() [1/2]

void operator delete ( void p)
noexcept

Definition at line 11 of file utility.cpp.

12{
13 LocalFree(p);
14}
GLfloat GLfloat p
Definition: glext.h:8902
HLOCAL NTAPI LocalFree(HLOCAL hMem)
Definition: heapmem.c:1594

◆ operator delete() [2/2]

void operator delete ( void p,
UINT_PTR   
)

Definition at line 16 of file utility.cpp.

17{
18 LocalFree(p);
19}

◆ operator new()

void * operator new ( size_t  size)

Definition at line 6 of file utility.cpp.

7{
9}
GLsizeiptr size
Definition: glext.h:5919
HLOCAL NTAPI LocalAlloc(UINT uFlags, SIZE_T dwBytes)
Definition: heapmem.c:1390
#define LMEM_ZEROINIT
Definition: winbase.h:375

◆ SHELL_CompareAbsoluteIDs()

static HRESULT SHELL_CompareAbsoluteIDs ( LPARAM  lParam,
PCIDLIST_ABSOLUTE  a,
PCIDLIST_ABSOLUTE  b 
)
static

Definition at line 43 of file utility.cpp.

44{
45 IShellFolder *psf;
47 if (FAILED(hr))
48 return hr;
49 hr = psf->CompareIDs(lParam, a, b);
50 psf->Release();
51 return hr;
52}
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
LPARAM lParam
Definition: combotst.c:139
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
HRESULT CompareIDs([in] LPARAM lParam, [in] PCUIDLIST_RELATIVE pidl1, [in] PCUIDLIST_RELATIVE pidl2)
ULONG Release()
#define FAILED(hr)
Definition: intsafe.h:51
HRESULT hr
Definition: shlfolder.c:183

Referenced by SHELL_IsEqualAbsoluteID().

◆ SHELL_GetIDListFromObject()

HRESULT SHELL_GetIDListFromObject ( IUnknown punk,
PIDLIST_ABSOLUTE ppidl 
)

Definition at line 21 of file utility.cpp.

22{
23#if DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA && 0 // FIXME: SHELL32 not ready yet
24 return SHGetIDListFromObject(punk, ppidl);
25#else
26 HRESULT hr;
27 IPersistFolder2 *pf2;
29 {
30 hr = pf2->GetCurFolder(ppidl);
31 pf2->Release();
32 }
33 IPersistIDList *pil;
35 {
36 hr = pil->GetIDList(ppidl);
37 pil->Release();
38 }
39 return hr;
40#endif
41}
HRESULT GetCurFolder([out] PIDLIST_ABSOLUTE *ppidl)
HRESULT GetIDList([out] PIDLIST_ABSOLUTE *ppidl)
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
#define SUCCEEDED(hr)
Definition: intsafe.h:50
HRESULT WINAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl)
Definition: pidl.c:1519
#define IID_PPV_ARG(Itype, ppType)

Referenced by GetCurrentLocationFromView().

◆ SHELL_IsEqualAbsoluteID()

BOOL SHELL_IsEqualAbsoluteID ( PCIDLIST_ABSOLUTE  a,
PCIDLIST_ABSOLUTE  b 
)

Definition at line 54 of file utility.cpp.

55{
57}
#define SHCIDS_CANONICALONLY
Definition: utility.cpp:3
static HRESULT SHELL_CompareAbsoluteIDs(LPARAM lParam, PCIDLIST_ABSOLUTE a, PCIDLIST_ABSOLUTE b)
Definition: utility.cpp:43

Referenced by CExplorerBand::IsCurrentLocation().

◆ SHELL_IsVerb()

BOOL SHELL_IsVerb ( IContextMenu pcm,
UINT_PTR  idCmd,
LPCWSTR  Verb 
)

Definition at line 59 of file utility.cpp.

60{
61 HRESULT hr;
62 WCHAR wide[MAX_PATH];
63 if (SUCCEEDED(hr = pcm->GetCommandString(idCmd, GCS_VERBW, NULL, (LPSTR)wide, _countof(wide))))
64 return !lstrcmpiW(wide, Verb);
65
66 CHAR ansi[_countof(wide)], buf[MAX_PATH];
67 if (SHUnicodeToAnsi(Verb, buf, _countof(buf)))
68 {
69 if (SUCCEEDED(hr = pcm->GetCommandString(idCmd, GCS_VERBA, NULL, ansi, _countof(ansi))))
70 return !lstrcmpiA(ansi, buf);
71 }
72 return FALSE;
73}
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
#define MAX_PATH
Definition: compat.h:34
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
Definition: locale.c:4261
int WINAPI lstrcmpiA(LPCSTR str1, LPCSTR str2)
Definition: locale.c:4223
INT WINAPI SHUnicodeToAnsi(LPCWSTR lpSrcStr, LPSTR lpDstStr, INT iLen)
Definition: string.c:2791
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
HRESULT GetCommandString([in] UINT_PTR idCmd, [in] UINT uType, [out] UINT *pwReserved, [out, size_is(cchMax)] LPSTR pszName, [in] UINT cchMax)
#define _countof(array)
Definition: sndvol32.h:70
char * LPSTR
Definition: xmlstorage.h:182
__wchar_t WCHAR
Definition: xmlstorage.h:180
char CHAR
Definition: xmlstorage.h:175

Referenced by CExplorerBand::OnContextMenu().