ReactOS 0.4.15-dev-7842-g558ab78
RegistryRoot Struct Reference

Registry key entry. More...

#include <regfs.h>

Inheritance diagram for RegistryRoot:
Collaboration diagram for RegistryRoot:

Public Member Functions

 RegistryRoot ()
 
 RegistryRoot (Entry *parent, LPCTSTR path)
 
 ~RegistryRoot ()
 
virtual void read_directory (int scan_flags=0)
 
- Public Member Functions inherited from RegEntry
 RegEntry (Entry *parent)
 
- Public Member Functions inherited from Entry
virtual ~Entry ()
 
void free_subentries ()
 
void read_directory_base (SORT_ORDER sortOrder=SORT_NAME, int scan_flags=0)
 
Entryread_tree (const void *path, SORT_ORDER sortOrder=SORT_NAME, int scan_flags=0)
 
void sort_directory (SORT_ORDER sortOrder)
 
void smart_scan (SORT_ORDER sortOrder=SORT_NAME, int scan_flags=0)
 
int extract_icon (ICONCACHE_FLAGS flags=ICF_NORMAL)
 
int safe_extract_icon (ICONCACHE_FLAGS flags=ICF_NORMAL)
 
virtual void read_directory (int scan_flags=0)
 
virtual const voidget_next_path_component (const void *) const
 
virtual Entryfind_entry (const void *)
 
virtual bool get_path (PTSTR path, size_t path_count) const =0
 
virtual ShellPath create_absolute_pidl () const
 
virtual HRESULT GetUIObjectOf (HWND hWnd, REFIID riid, LPVOID *ppvOut)
 
virtual ShellFolder get_shell_folder () const
 
virtual BOOL launch_entry (HWND hwnd, UINT nCmdShow=SW_SHOWNORMAL)
 
virtual HRESULT do_context_menu (HWND hwnd, const POINT &pos, CtxMenuInterfaces &cm_ifs)
 

Additional Inherited Members

- Public Attributes inherited from Entry
Entry_next
 
Entry_down
 
Entry_up
 
bool _expanded
 
bool _scanned
 
int _level
 
WIN32_FIND_DATA _data
 
SFGAOF _shell_attribs
 
LPTSTR _display_name
 
LPTSTR _type_name
 
LPTSTR _content
 
ENTRY_TYPE _etype
 
int _icon_id
 
BY_HANDLE_FILE_INFORMATION _bhfi
 
bool _bhfi_valid
 
- Protected Member Functions inherited from RegEntry
 RegEntry ()
 
virtual bool get_path (PTSTR path, size_t path_count) const
 
virtual BOOL launch_entry (HWND hwnd, UINT nCmdShow)
 
- Protected Member Functions inherited from Entry
 Entry (ENTRY_TYPE etype)
 
 Entry (Entry *parent, ENTRY_TYPE etype)
 
 Entry (const Entry &)
 
bool get_path_base (PTSTR path, size_t path_count, ENTRY_TYPE etype) const
 
- Protected Member Functions inherited from Directory
 Directory ()
 
virtual ~Directory ()
 
- Protected Attributes inherited from Directory
void_path
 

Detailed Description

Registry key entry.

Definition at line 63 of file regfs.h.

Constructor & Destructor Documentation

◆ RegistryRoot() [1/2]

RegistryRoot::RegistryRoot ( )
inline

Definition at line 65 of file regfs.h.

66 {
67 }

◆ RegistryRoot() [2/2]

RegistryRoot::RegistryRoot ( Entry parent,
LPCTSTR  path 
)
inline

Definition at line 69 of file regfs.h.

71 {
73 }
r parent
Definition: btrfs.c:3010
#define _tcsdup
Definition: tchar.h:625
void * _path
Definition: entries.h:143
RegEntry()
Definition: regfs.h:35

◆ ~RegistryRoot()

RegistryRoot::~RegistryRoot ( )
inline

Definition at line 75 of file regfs.h.

76 {
77 free(_path);
78 _path = NULL;
79 }
#define free
Definition: debug_ros.c:5
#define NULL
Definition: types.h:112

Member Function Documentation

◆ read_directory()

void RegistryRoot::read_directory ( int  scan_flags = 0)
virtual

Reimplemented from Entry.

Definition at line 249 of file regfs.cpp.

250{
251 Entry *entry, *last, *first_entry;
252 int level = _level + 1;
253
254 _data.dwFileAttributes |= FILE_ATTRIBUTE_DIRECTORY;
255
256 entry = new RegDirectory(this, TEXT("\\"), HKEY_CURRENT_USER);
257 _tcscpy(entry->_data.cFileName, TEXT("HKEY_CURRENT_USER"));
258 entry->_level = level;
259
260 first_entry = entry;
261 last = entry;
262
263 entry = new RegDirectory(this, TEXT("\\"), HKEY_LOCAL_MACHINE);
264 _tcscpy(entry->_data.cFileName, TEXT("HKEY_LOCAL_MACHINE"));
265 entry->_level = level;
266
267 last->_next = entry;
268 last = entry;
269
270 entry = new RegDirectory(this, TEXT("\\"), HKEY_CLASSES_ROOT);
271 _tcscpy(entry->_data.cFileName, TEXT("HKEY_CLASSES_ROOT"));
272 entry->_level = level;
273
274 last->_next = entry;
275 last = entry;
276
277 entry = new RegDirectory(this, TEXT("\\"), HKEY_USERS);
278 _tcscpy(entry->_data.cFileName, TEXT("HKEY_USERS"));
279 entry->_level = level;
280
281 last->_next = entry;
282 last = entry;
283/*
284 entry = new RegDirectory(this, TEXT("\\"), HKEY_PERFORMANCE_DATA);
285 _tcscpy(entry->_data.cFileName, TEXT("HKEY_PERFORMANCE_DATA"));
286 entry->_level = level;
287
288 last->_next = entry;
289 last = entry;
290*/
291 entry = new RegDirectory(this, TEXT("\\"), HKEY_CURRENT_CONFIG);
292 _tcscpy(entry->_data.cFileName, TEXT("HKEY_CURRENT_CONFIG"));
293 entry->_level = level;
294
295 last->_next = entry;
296 last = entry;
297/*
298 entry = new RegDirectory(this, TEXT("\\"), HKEY_DYN_DATA);
299 _tcscpy(entry->_data.cFileName, TEXT("HKEY_DYN_DATA"));
300 entry->_level = level;
301
302 last->_next = entry;
303 last = entry;
304*/
305 last->_next = NULL;
306
307 _down = first_entry;
308 _scanned = true;
309}
GLint level
Definition: gl.h:1546
#define _tcscpy
Definition: tchar.h:623
uint32_t entry
Definition: isohybrid.c:63
#define TEXT(s)
Definition: k32.h:26
static UINT UINT last
Definition: font.c:45
#define FILE_ATTRIBUTE_DIRECTORY
Definition: nt_native.h:705
base of all file and directory entries
Definition: entries.h:83
Entry * _down
Definition: entries.h:93
WIN32_FIND_DATA _data
Definition: entries.h:100
int _level
Definition: entries.h:98
bool _scanned
Definition: entries.h:97
Registry key entry.
Definition: regfs.h:44
#define HKEY_LOCAL_MACHINE
Definition: winreg.h:12
#define HKEY_CURRENT_CONFIG
Definition: winreg.h:15
#define HKEY_CURRENT_USER
Definition: winreg.h:11
#define HKEY_CLASSES_ROOT
Definition: winreg.h:10
#define HKEY_USERS
Definition: winreg.h:13

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