ReactOS  0.4.14-dev-606-g14ebc0b
main.h
Go to the documentation of this file.
1 /*
2  * Regedit definitions
3  *
4  * Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19  */
20 
21 #pragma once
22 
23 #include "resource.h"
24 
25 
26 #define STATUS_WINDOW 2001
27 #define TREE_WINDOW 2002
28 #define LIST_WINDOW 2003
29 
30 #define SPLIT_WIDTH 5
31 #define SPLIT_MIN 30
32 
33 #define COUNT_OF(a) (sizeof(a)/sizeof(a[0]))
34 
35 #define PM_MODIFYVALUE 0
36 #define PM_NEW 1
37 #define PM_TREECONTEXT 2
38 #define PM_HEXEDIT 3
39 
40 #define MAX_NEW_KEY_LEN 128
41 
42 extern HINSTANCE hInst;
43 
44 /******************************************************************************/
45 
47 {
55 };
56 
57 typedef struct
58 {
65  int nFocusPanel; /* 0: left 1: right */
66  int nSplitPos;
69 } ChildWnd;
70 extern ChildWnd* g_pChildWnd;
71 
72 /*******************************************************************************
73  * Global Variables:
74  */
76 extern HWND hFrameWnd;
77 extern HMENU hMenuFrame;
78 extern HWND hStatusBar;
79 extern HMENU hPopupMenus;
80 extern HFONT hFont;
81 extern enum OPTION_FLAGS Options;
82 
83 extern WCHAR szTitle[];
84 extern WCHAR szFrameClass[];
85 extern WCHAR szChildClass[];
86 
87 extern const WCHAR g_szGeneralRegKey[];
88 
89 /* about.c */
90 extern void ShowAboutBox(HWND hWnd);
91 
92 /* childwnd.c */
94 extern void ResizeWnd(int cx, int cy);
95 extern LPCWSTR get_root_key_name(HKEY hRootKey);
96 
97 /* error.c */
98 extern int ErrorMessageBox(HWND hWnd, LPCWSTR lpTitle, DWORD dwErrorCode, ...);
99 extern int InfoMessageBox(HWND hWnd, UINT uType, LPCWSTR lpTitle, LPCWSTR lpMessage, ...);
100 
101 /* find.c */
102 extern void FindDialog(HWND hWnd);
103 extern BOOL FindNext(HWND hWnd);
104 
105 /* framewnd.c */
107 extern void SetupStatusBar(HWND hWnd, BOOL bResize);
108 extern void UpdateStatusBar(void);
109 extern BOOL CopyKeyName(HWND hWnd, HKEY hRootKey, LPCWSTR keyName);
111 
112 /* listview.c */
114 extern BOOL RefreshListView(HWND hwndLV, HKEY hKey, LPCWSTR keyPath);
115 extern LPCWSTR GetValueName(HWND hwndLV, int iStartAt);
117 extern BOOL IsDefaultValue(HWND hwndLV, int i);
118 
119 /* regedit.c */
120 LPCWSTR getAppName(void);
121 
122 /* treeview.c */
123 extern HWND CreateTreeView(HWND hwndParent, LPWSTR pHostName, HMENU id);
124 extern BOOL RefreshTreeView(HWND hWndTV);
125 extern BOOL RefreshTreeItem(HWND hwndTV, HTREEITEM hItem);
126 extern BOOL OnTreeExpanding(HWND hWnd, NMTREEVIEW* pnmtv);
127 extern LPCWSTR GetItemPath(HWND hwndTV, HTREEITEM hItem, HKEY* phRootKey);
128 extern BOOL DeleteNode(HWND hwndTV, HTREEITEM hItem);
130 extern HWND StartKeyRename(HWND hwndTV);
131 extern BOOL CreateNewKey(HWND hwndTV, HTREEITEM hItem);
132 extern BOOL SelectNode(HWND hwndTV, LPCWSTR keyPath);
133 extern void DestroyTreeView(HWND hwndTV);
134 extern void DestroyListView(HWND hwndLV);
135 extern void DestroyMainMenu(void);
136 
137 /* edit.c */
138 extern BOOL ModifyValue(HWND hwnd, HKEY hKey, LPCWSTR valueName, BOOL EditBin);
139 extern BOOL DeleteKey(HWND hwnd, HKEY hKeyRoot, LPCWSTR keyPath);
140 extern LONG RenameKey(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpNewName);
141 extern LONG RenameValue(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpDestValue, LPCWSTR lpSrcValue);
142 extern LONG QueryStringValue(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpValueName, LPWSTR pszBuffer, DWORD dwBufferLen);
143 extern BOOL GetKeyName(LPWSTR pszDest, size_t iDestLength, HKEY hRootKey, LPCWSTR lpSubKey);
144 
145 /* security.c */
146 extern BOOL RegKeyEditPermissions(HWND hWndOwner, HKEY hKey, LPCWSTR lpMachine, LPCWSTR lpKeyName);
147 
148 /* settings.c */
149 extern void LoadSettings(void);
150 extern void SaveSettings(void);
151 
152 /* EOF */
void SaveSettings(void)
Definition: settings.c:115
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
const WCHAR g_szGeneralRegKey[]
Definition: settings.c:16
static HICON
Definition: imagelist.c:84
BOOL IsDefaultValue(HWND hwndLV, int i)
Definition: listview.c:107
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
LRESULT CALLBACK ChildWndProc(HWND, UINT, WPARAM, LPARAM)
Definition: childwnd.c:385
HWND hTreeWnd
Definition: main.h:60
HWND hListWnd
Definition: main.h:61
#define CALLBACK
Definition: compat.h:27
BOOL ExportRegistryFile(HWND hWnd)
Definition: framewnd.c:586
UINT_PTR WPARAM
Definition: windef.h:207
HWND hStatusBar
Definition: main.cpp:35
void ResizeWnd(int cx, int cy)
Definition: childwnd.c:41
enum OPTION_FLAGS Options
Definition: stats.c:44
int32_t INT
Definition: typedefs.h:56
WPARAM wParam
Definition: combotst.c:138
HFONT hFont
Definition: main.c:53
int InfoMessageBox(HWND hWnd, UINT uType, LPCWSTR lpTitle, LPCWSTR lpMessage,...)
Definition: error.c:51
void UpdateStatusBar(void)
Definition: solitaire.cpp:148
int nSplitPos
Definition: main.h:66
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
unsigned int BOOL
Definition: ntddk_ex.h:94
long LONG
Definition: pedump.c:60
#define NMTREEVIEW
Definition: commctrl.h:3638
WINDOWPLACEMENT pos
Definition: main.h:67
int ErrorMessageBox(HWND hWnd, LPCWSTR lpTitle, DWORD dwErrorCode,...)
Definition: error.c:24
BOOL DeleteKey(HWND hwnd, HKEY hKeyRoot, LPCWSTR keyPath)
Definition: edit.c:1456
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:581
BOOL FindNext(HWND hWnd)
Definition: find.c:631
static HWND hwndParent
Definition: cryptui.c:300
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
LONG_PTR LPARAM
Definition: windef.h:208
BOOL DeleteNode(HWND hwndTV, HTREEITEM hItem)
Definition: treeview.c:102
LPCWSTR GetItemPath(HWND hwndTV, HTREEITEM hItem, HKEY *phRootKey)
Definition: treeview.c:83
BOOL ListWndNotifyProc(HWND hWnd, WPARAM wParam, LPARAM lParam, BOOL *Result)
Definition: listview.c:543
HINSTANCE hInst
Definition: main.h:75
void ShowAboutBox(HWND hWnd)
Definition: about.c:25
void DestroyMainMenu(void)
Definition: main.c:157
void DestroyListView(HWND hwndLV)
Definition: listview.c:653
WCHAR szTitle[]
Definition: magnifier.c:35
__wchar_t WCHAR
Definition: xmlstorage.h:180
HWND hWnd
Definition: main.h:78
HWND hWnd
Definition: main.h:59
#define MAX_PATH
Definition: compat.h:26
WCHAR szChildClass[]
Definition: main.c:40
ChildWnd * g_pChildWnd
Definition: childwnd.c:23
unsigned long DWORD
Definition: ntddk_ex.h:95
HWND CreateTreeView(HWND hwndParent, LPWSTR pHostName, HMENU id)
Definition: treeview.c:634
BOOL RefreshListView(HWND hwndLV, HKEY hKey, LPCWSTR keyPath)
Definition: listview.c:670
HWND hAddressBtnWnd
Definition: main.h:63
HICON hArrowIcon
Definition: main.h:64
HMENU hMenuFrame
Definition: main.c:32
LRESULT CALLBACK FrameWndProc(HWND, UINT, WPARAM, LPARAM)
Definition: framewnd.c:1304
void FindDialog(HWND hWnd)
Definition: find.c:813
HWND hFrameWnd
Definition: main.c:30
LPCWSTR GetValueName(HWND hwndLV, int iStartAt)
Definition: listview.c:55
LONG RenameKey(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpNewName)
Definition: edit.c:1489
HWND StartKeyRename(HWND hwndTV)
Definition: treeview.c:383
LPCWSTR szPath
Definition: env.c:35
HMENU hPopupMenus
Definition: main.c:33
BOOL ModifyValue(HWND hwnd, HKEY hKey, LPCWSTR valueName, BOOL EditBin)
Definition: edit.c:1072
HTREEITEM InsertNode(HWND hwndTV, HTREEITEM hItem, LPWSTR name)
Definition: treeview.c:331
void LoadSettings(void)
Definition: settings.c:53
LPCWSTR get_root_key_name(HKEY hRootKey)
Definition: childwnd.c:29
unsigned int UINT
Definition: ndis.h:50
OPTION_FLAGS
Definition: main.h:46
LPCWSTR getAppName(void)
Definition: regedit.c:61
BOOL CreateNewKey(HWND hwndTV, HTREEITEM hItem)
Definition: treeview.c:571
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
_Out_opt_ int * cx
Definition: commctrl.h:581
HWND hAddressBarWnd
Definition: main.h:62
Definition: main.h:57
Definition: name.c:38
WCHAR szFrameClass[]
Definition: main.c:39
TCHAR lpTitle[80]
Definition: ctm.c:69
BOOL SelectNode(HWND hwndTV, LPCWSTR keyPath)
Definition: treeview.c:665
void DestroyTreeView(HWND hwndTV)
Definition: treeview.c:654
BOOL RegKeyEditPermissions(HWND hWndOwner, HKEY hKey, LPCWSTR lpMachine, LPCWSTR lpKeyName)
Definition: security.c:839
BOOL CopyKeyName(HWND hWnd, HKEY hRootKey, LPCWSTR keyName)
Definition: framewnd.c:790
WCHAR * LPWSTR
Definition: xmlstorage.h:184
void SetupStatusBar(HWND hWnd, BOOL bResize)
Definition: framewnd.c:167
LONG_PTR LRESULT
Definition: windef.h:209
LONG QueryStringValue(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpValueName, LPWSTR pszBuffer, DWORD dwBufferLen)
Definition: edit.c:1554
BOOL RefreshTreeView(HWND hWndTV)
Definition: treeview.c:306
BOOL GetKeyName(LPWSTR pszDest, size_t iDestLength, HKEY hRootKey, LPCWSTR lpSubKey)
Definition: edit.c:1588
LONG RenameValue(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpDestValue, LPCWSTR lpSrcValue)
Definition: edit.c:1522
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
LPARAM lParam
Definition: combotst.c:139
BOOL OnTreeExpanding(HWND hWnd, NMTREEVIEW *pnmtv)
Definition: treeview.c:503
HWND CreateListView(HWND hwndParent, HMENU id, INT cx)
Definition: listview.c:630
int nFocusPanel
Definition: main.h:65
BOOL RefreshTreeItem(HWND hwndTV, HTREEITEM hItem)
Definition: treeview.c:136