ReactOS 0.4.16-dev-1305-ge26ad0d
CRegFolderInfo Struct Reference
Inheritance diagram for CRegFolderInfo:
Collaboration diagram for CRegFolderInfo:

Public Member Functions

void InitializeFolderInfo (const REGFOLDERINFO *pInfo)
 
const CLSIDIsRegItem (LPCITEMIDLIST pidl) const
 
LPITEMIDLIST CreateItem (size_t i) const
 
WORD GetRegItemOrder (LPCITEMIDLIST pidl) const
 
LPCWSTR GetParsingPath () const
 
UINT GetCLSIDOffset () const
 
PIDLTYPE GetPidlType () const
 
UINT GetRequiredItemsCount () const
 
const REQUIREDREGITEMGetAt (size_t i) const
 

Public Attributes

const REGFOLDERINFOm_pInfo
 

Detailed Description

Definition at line 96 of file CRegFolder.cpp.

Member Function Documentation

◆ CreateItem()

LPITEMIDLIST CRegFolderInfo::CreateItem ( size_t  i) const
inline

Definition at line 122 of file CRegFolder.cpp.

123 {
124 const REQUIREDREGITEM &item = GetAt(i);
125 return CreateRegItem(GetPidlType(), item.clsid, item.Order);
126 }
static LPITEMIDLIST CreateRegItem(PIDLTYPE type, REFCLSID clsid, int order=-1)
Definition: CRegFolder.cpp:70
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
static ATOM item
Definition: dde.c:856
const REQUIREDREGITEM & GetAt(size_t i) const
Definition: CRegFolder.cpp:138
PIDLTYPE GetPidlType() const
Definition: CRegFolder.cpp:136

Referenced by CRegFolderEnum::Initialize().

◆ GetAt()

const REQUIREDREGITEM & CRegFolderInfo::GetAt ( size_t  i) const
inline

Definition at line 138 of file CRegFolder.cpp.

138{ return m_pInfo->Items[i]; }
const REGFOLDERINFO * m_pInfo
Definition: CRegFolder.cpp:98
const REQUIREDREGITEM * Items
Definition: shfldr.h:62

Referenced by CreateItem(), and CRegFolder::IsRequiredItem().

◆ GetCLSIDOffset()

UINT CRegFolderInfo::GetCLSIDOffset ( ) const
inline

Definition at line 135 of file CRegFolder.cpp.

static UINT GetRegItemCLSIDOffset(PIDLTYPE type)
Definition: CRegFolder.cpp:57
PIDLTYPE PidlType
Definition: shfldr.h:60

Referenced by IsRegItem().

◆ GetParsingPath()

LPCWSTR CRegFolderInfo::GetParsingPath ( ) const
inline

Definition at line 134 of file CRegFolder.cpp.

134{ return m_pInfo->pszParsingPath; }
LPCWSTR pszParsingPath
Definition: shfldr.h:64

Referenced by CRegFolder::GetDisplayNameOf().

◆ GetPidlType()

PIDLTYPE CRegFolderInfo::GetPidlType ( ) const
inline

◆ GetRegItemOrder()

WORD CRegFolderInfo::GetRegItemOrder ( LPCITEMIDLIST  pidl) const
inline

Definition at line 128 of file CRegFolder.cpp.

129 {
130 const CLSID *pCLSID = IsRegItem(pidl);
131 return pCLSID ? ::GetRegItemOrder(*pCLSID) : 0xffff;
132 }
const CLSID * IsRegItem(LPCITEMIDLIST pidl) const
Definition: CRegFolder.cpp:105
WORD GetRegItemOrder(LPCITEMIDLIST pidl) const
Definition: CRegFolder.cpp:128

Referenced by CRegFolder::CompareRegItemsSortOrder(), and GetRegItemOrder().

◆ GetRequiredItemsCount()

UINT CRegFolderInfo::GetRequiredItemsCount ( ) const
inline

Definition at line 137 of file CRegFolder.cpp.

137{ return m_pInfo->Count; }
BYTE Count
Definition: shfldr.h:61

Referenced by CRegFolderEnum::Initialize(), and CRegFolder::IsRequiredItem().

◆ InitializeFolderInfo()

void CRegFolderInfo::InitializeFolderInfo ( const REGFOLDERINFO pInfo)
inline

Definition at line 100 of file CRegFolder.cpp.

101 {
102 m_pInfo = pInfo;
103 }

Referenced by CRegFolderEnum::Initialize(), and CRegFolder::Initialize().

◆ IsRegItem()

const CLSID * CRegFolderInfo::IsRegItem ( LPCITEMIDLIST  pidl) const
inline

Definition at line 105 of file CRegFolder.cpp.

106 {
107 if (pidl && pidl->mkid.cb >= sizeof(WORD) + 1 + 1 + sizeof(GUID))
108 {
109 if (pidl->mkid.abID[0] == m_pInfo->PidlType)
110 return (CLSID*)(SIZE_T(pidl) + GetCLSIDOffset());
111 if (pidl->mkid.abID[0] == PT_CONTROLS_OLDREGITEM)
113 }
114 if (const IID* pIID = _ILGetGUIDPointer(pidl))
115 {
116 FIXME("Unexpected GUID PIDL type %#x\n", pidl->mkid.abID[0]);
117 return pIID; // FIXME: Remove this when all folders have been fixed
118 }
119 return NULL;
120 }
@ PT_CONTROLS_OLDREGITEM
Definition: ItemIDList.cpp:16
#define FIXME(fmt,...)
Definition: precomp.h:53
#define NULL
Definition: types.h:112
unsigned short WORD
Definition: ntddk_ex.h:93
IID * _ILGetGUIDPointer(LPCITEMIDLIST pidl)
Definition: pidl.c:2408
UINT GetCLSIDOffset() const
Definition: CRegFolder.cpp:135
ULONG_PTR SIZE_T
Definition: typedefs.h:80

Referenced by CRegFolder::GetDetailsEx(), CRegFolderEnum::GetPidlClsid(), GetRegItemOrder(), CRegFolder::IsRequiredItem(), RegFolderContextMenuCallback(), and CRegFolder::SetNameOf().

Member Data Documentation

◆ m_pInfo


The documentation for this struct was generated from the following file: