[REGEDIT] Deduplication and other formatting changes (#7193)

- Deduplicates unused IDC_REGEDIT MENU vs. actually used IDR_REGEDIT_MENU
- shrinks the binary size, GCC8.4.0dbg build shrinks from 1.052.672 -> 1.049.600 bytes
- that also solves a few FIXME's, e.g. in hu-HU, pl-PL, sl-SI, sq-AL, tr-TR, uk-UA
- translates the help-popup string in th-TH.rc
- slightly tweak some headers to be a bit closer to newstyle without going all the way
- also link to LPGL2.1+ in the source files to reduce the wall-of-text, also some other whitespace tweaks in those, but no functional change
- security.c: vertical-compactness-whitespace-changes aim to get HeapAlloc closer to HeapFree
- id-ID.rc: "&Data nilai" and "&Nama nilai" does exist in 4 dialogs, Harmonize them
- pt-PT.rc: add 2 missing accels in IDD_EDIT_STRING
- edit.c: 3x ARRAY_SIZE
- the most review-worthy change in the actual .h/.c files is clb.c the change from ClbWndClass.hInstance = hinstDLL, ClbWndClass.hIcon = NULL; to ClbWndClass.hInstance = hinstDLL; ClbWndClass.hIcon = NULL;
- clb.c the stripped INT_PTR-cast for EndDialog() was Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
This commit is contained in:
Joachim Henze 2024-07-29 21:19:10 +02:00 committed by GitHub
parent d7ab15dcb4
commit 470cef7bfd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
47 changed files with 152 additions and 869 deletions

View file

@ -2,20 +2,7 @@
* Regedit About Dialog Box
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"

View file

@ -3,20 +3,7 @@
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
* Copyright (C) 2024 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -25,8 +12,8 @@
ChildWnd* g_pChildWnd;
static int last_split;
HBITMAP SizingPattern = 0;
HBRUSH SizingBrush = 0;
HBITMAP SizingPattern;
HBRUSH SizingBrush;
WCHAR Suggestions[256];
static HRESULT WINAPI DummyEnumStringsQI(LPVOID This, REFIID riid, void**ppv)
@ -181,11 +168,8 @@ static void draw_splitbar(HWND hWnd, int x)
ReleaseDC(hWnd, hdc);
}
/*******************************************************************************
* finish_splitbar [internal]
*
* make the splitbar invisible and resize the windows
* (helper for ChildWndProc)
/**
* make the splitbar invisible and resize the windows (helper for ChildWndProc)
*/
static void finish_splitbar(HWND hWnd, int x)
{
@ -291,7 +275,6 @@ static void SuggestKeys(HKEY hRootKey, LPCWSTR pszKeyPath, LPWSTR pszSuggestions
}
}
LRESULT CALLBACK AddressBarProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
WNDPROC oldwndproc;
@ -374,15 +357,11 @@ UpdateAddress(HTREEITEM hItem, HKEY hRootKey, LPCWSTR pszPath, BOOL bSelectNone)
}
}
/*******************************************************************************
*
* FUNCTION: ChildWndProc(HWND, unsigned, WORD, LONG)
*
* PURPOSE: Processes messages for the child windows.
*
* WM_COMMAND - process the application menu
* WM_DESTROY - post a quit message and return
/**
* PURPOSE: Processes messages for the child windows.
*
* WM_COMMAND - process the application menu
* WM_DESTROY - post a quit message and return
*/
LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{

View file

@ -1,29 +1,8 @@
/*
* ReactOS Column List Box
* Copyright (C) 2005 Thomas Weidenmueller
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* PROJECT: ReactOS Column List Box
* FILE: base/applications/regedit/clb/clb.c
* PURPOSE: Column List Box
* PROGRAMMER: Thomas Weidenmueller <w3seek@reactos.com>
*
* UPDATE HISTORY:
* 10/29/2005 Created
* PROJECT: ReactOS Column List Box
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Column List Box
* COPYRIGHT: Copyright 2005 Thomas Weidenmueller <w3seek@reactos.com>
*/
#include <precomp.h>
@ -94,7 +73,6 @@ ClbAddData(IN DWORD Unknown1,
return 0;
}
/*
* @unimplemented
*/
@ -108,7 +86,6 @@ ClbSetColumnWidths(IN DWORD Unknown1,
return 0;
}
/*
* @unimplemented
*/
@ -124,8 +101,7 @@ ClbWndProc(IN HWND hwnd,
DPRINT1("ClbWndProc(0x%p, 0x%x, 0x%p, 0x%p)\n", hwnd, uMsg, wParam, lParam);
PrivData = (PCLB_PRIVATEDATA)GetWindowLongPtr(hwnd,
0);
PrivData = (PCLB_PRIVATEDATA)GetWindowLongPtr(hwnd, 0);
if (PrivData == NULL && uMsg != WM_CREATE)
{
goto HandleDefMsg;
@ -146,24 +122,18 @@ ClbWndProc(IN HWND hwnd,
break;
case WM_DESTROY:
HeapFree(GetProcessHeap(),
0,
PrivData);
HeapFree(GetProcessHeap(), 0, PrivData);
break;
default:
HandleDefMsg:
Ret = DefWindowProc(hwnd,
uMsg,
wParam,
lParam);
Ret = DefWindowProc(hwnd, uMsg, wParam, lParam);
break;
}
return Ret;
}
static INT_PTR CALLBACK
ClbpStyleDlgProc(IN HWND hwndDlg,
IN UINT uMsg,
@ -181,15 +151,13 @@ ClbpStyleDlgProc(IN HWND hwndDlg,
{
case IDOK:
case IDCANCEL:
EndDialog(hwndDlg,
(INT_PTR)LOWORD(wParam));
EndDialog(hwndDlg, LOWORD(wParam));
break;
}
break;
case WM_CLOSE:
EndDialog(hwndDlg,
IDCANCEL);
EndDialog(hwndDlg, IDCANCEL);
break;
case WM_INITDIALOG:
@ -200,7 +168,6 @@ ClbpStyleDlgProc(IN HWND hwndDlg,
return Ret;
}
/*
* @implemented
*/
@ -216,36 +183,32 @@ ClbStyleW(IN HWND hWndParent,
dwInitParam);
}
/*
* @implemented
*/
BOOL
WINAPI
CustomControlInfoW(OUT LPCUSTOM_CONTROL_INFO CustomControlInfo OPTIONAL)
CustomControlInfoW(OUT LPCUSTOM_CONTROL_INFO CustomControlInfo OPTIONAL)
{
if (CustomControlInfo != NULL)
{
wcscpy(CustomControlInfo->ClassName,
ClbClassName);
wcscpy(CustomControlInfo->ClassName, ClbClassName);
CustomControlInfo->Zero1 = 0;
wcscpy(CustomControlInfo->ClassName2,
ClbClassName);
wcscpy(CustomControlInfo->ClassName2, ClbClassName);
CustomControlInfo->Unknown1 = 0x60; /* FIXME - ??? */
CustomControlInfo->Unknown2 = 0x50; /* FIXME - ??? */
CustomControlInfo->Unknown3 = 0x50A10013; /* FIXME - ??? */
CustomControlInfo->Unknown1 = 0x60; // FIXME - ???
CustomControlInfo->Unknown2 = 0x50; // FIXME - ???
CustomControlInfo->Unknown3 = 0x50A10013; // FIXME - ???
CustomControlInfo->Zero2 = 0;
CustomControlInfo->Zero3 = 0;
CustomControlInfo->StylesCount = sizeof(ClbsSupportedStyles) / sizeof(ClbsSupportedStyles[0]);
CustomControlInfo->StylesCount = _countof(ClbsSupportedStyles);
CustomControlInfo->SupportedStyles = ClbsSupportedStyles;
wcscpy(CustomControlInfo->Columns,
ClbColumns);
wcscpy(CustomControlInfo->Columns, ClbColumns);
CustomControlInfo->ClbStyleW = ClbStyleW;
@ -280,10 +243,9 @@ DllMain(IN HINSTANCE hinstDLL,
ClbWndClass.lpfnWndProc = ClbWndProc;
ClbWndClass.cbClsExtra = 0;
ClbWndClass.cbWndExtra = sizeof(PCLB_PRIVATEDATA);
ClbWndClass.hInstance = hinstDLL,
ClbWndClass.hIcon = NULL;
ClbWndClass.hCursor = LoadCursor(NULL,
(LPWSTR)IDC_ARROW);
ClbWndClass.hInstance = hinstDLL;
ClbWndClass.hIcon = NULL;
ClbWndClass.hCursor = LoadCursor(NULL, (LPWSTR)IDC_ARROW);
ClbWndClass.hbrBackground = NULL;
ClbWndClass.lpszMenuName = NULL;
ClbWndClass.lpszClassName = ClbClassName;
@ -301,8 +263,7 @@ DllMain(IN HINSTANCE hinstDLL,
break;
case DLL_PROCESS_DETACH:
UnregisterClass(ClbClassName,
hinstDLL);
UnregisterClass(ClbClassName, hinstDLL);
break;
}
return Ret;

View file

@ -2,20 +2,7 @@
* Registry editing UI functions.
*
* Copyright (C) 2003 Dimitrie O. Paun
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -163,7 +150,6 @@ INT_PTR CALLBACK modify_string_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, L
return FALSE;
}
INT_PTR CALLBACK modify_multi_string_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
WCHAR* valueData;
@ -231,7 +217,6 @@ INT_PTR CALLBACK modify_multi_string_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wPa
return FALSE;
}
LRESULT CALLBACK DwordEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
WNDPROC oldwndproc;
@ -243,7 +228,7 @@ LRESULT CALLBACK DwordEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPAR
case WM_CHAR:
if (dwordEditMode == EDIT_MODE_DEC)
{
if (isdigit((int) wParam & 0xff) || iscntrl((int) wParam & 0xff))
if (isdigit((int)wParam & 0xff) || iscntrl((int)wParam & 0xff))
{
break;
}
@ -254,7 +239,7 @@ LRESULT CALLBACK DwordEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPAR
}
else if (dwordEditMode == EDIT_MODE_HEX)
{
if (isxdigit((int) wParam & 0xff) || iscntrl((int) wParam & 0xff))
if (isxdigit((int)wParam & 0xff) || iscntrl((int)wParam & 0xff))
{
break;
}
@ -272,7 +257,6 @@ LRESULT CALLBACK DwordEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPAR
return CallWindowProcW(oldwndproc, hwnd, uMsg, wParam, lParam);
}
INT_PTR CALLBACK modify_dword_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
WNDPROC oldproc;
@ -386,7 +370,6 @@ INT_PTR CALLBACK modify_dword_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LP
return FALSE;
}
INT_PTR CALLBACK modify_binary_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
HWND hwndValue;
@ -419,7 +402,7 @@ INT_PTR CALLBACK modify_binary_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, L
case IDOK:
if ((hwndValue = GetDlgItem(hwndDlg, IDC_VALUE_DATA)))
{
len = (UINT) HexEdit_GetBufferSize(hwndValue);
len = (UINT)HexEdit_GetBufferSize(hwndValue);
if (len > 0 && binValueData)
binValueData = HeapReAlloc(GetProcessHeap(), 0, binValueData, len);
else
@ -437,7 +420,6 @@ INT_PTR CALLBACK modify_binary_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, L
return FALSE;
}
static BOOL CreateResourceColumns(HWND hwnd)
{
WCHAR szText[80];
@ -661,7 +643,6 @@ GetInterfaceType(INTERFACE_TYPE InterfaceType,
// wcscpy(pBuffer, lpInterfaceType);
}
static VOID
ParseResources(HWND hwnd)
{
@ -859,7 +840,6 @@ ParseResources(HWND hwnd)
}
}
static BOOL
OnResourceNotify(HWND hwndDlg, NMHDR *phdr)
{
@ -916,7 +896,6 @@ OnResourceNotify(HWND hwndDlg, NMHDR *phdr)
return FALSE;
}
static INT_PTR CALLBACK modify_resource_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
@ -1037,7 +1016,6 @@ OnResourceListNotify(HWND hwndDlg, NMHDR *phdr)
return FALSE;
}
static INT_PTR CALLBACK modify_resource_list_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
@ -1436,7 +1414,7 @@ static INT_PTR CALLBACK show_requirements_dma_dlgproc(HWND hwndDlg, UINT uMsg, W
{
case IDOK:
case IDCANCEL:
EndDialog(hwndDlg, IDOK);
EndDialog(hwndDlg, IDOK);
break;
}
}
@ -1593,7 +1571,7 @@ BOOL ModifyValue(HWND hwnd, HKEY hKey, LPCWSTR valueName, BOOL EditBin)
{
if (stringValueData)
{
lRet = RegSetValueExW(hKey, valueName, 0, type, (LPBYTE)stringValueData, (DWORD) (wcslen(stringValueData) + 1) * sizeof(WCHAR));
lRet = RegSetValueExW(hKey, valueName, 0, type, (LPBYTE)stringValueData, (DWORD)(wcslen(stringValueData) + 1) * sizeof(WCHAR));
}
else
{
@ -1697,7 +1675,7 @@ BOOL ModifyValue(HWND hwnd, HKEY hKey, LPCWSTR valueName, BOOL EditBin)
warning(hwnd, IDS_MULTI_SZ_EMPTY_STRING);
}
lRet = RegSetValueExW(hKey, valueName, 0, type, (LPBYTE)lines, (DWORD) buflen);
lRet = RegSetValueExW(hKey, valueName, 0, type, (LPBYTE)lines, (DWORD)buflen);
HeapFree(GetProcessHeap(), 0, lines);
}
else
@ -1898,7 +1876,7 @@ static LONG CopyKey(HKEY hDestKey, LPCWSTR lpDestSubKey, HKEY hSrcKey, LPCWSTR l
dwIndex = 0;
do
{
cbName = sizeof(szSubKey) / sizeof(szSubKey[0]);
cbName = ARRAY_SIZE(szSubKey);
lResult = RegEnumKeyExW(hSrcKey, dwIndex++, szSubKey, &cbName, NULL, NULL, NULL, &ft);
if (lResult == ERROR_SUCCESS)
{
@ -1913,8 +1891,8 @@ static LONG CopyKey(HKEY hDestKey, LPCWSTR lpDestSubKey, HKEY hSrcKey, LPCWSTR l
dwIndex = 0;
do
{
cbName = sizeof(szValueName) / sizeof(szValueName[0]);
cbData = sizeof(szValueData) / sizeof(szValueData[0]);
cbName = ARRAY_SIZE(szValueName);
cbData = ARRAY_SIZE(szValueData);
lResult = RegEnumValueW(hSrcKey, dwIndex++, szValueName, &cbName, NULL, &dwType, szValueData, &cbData);
if (lResult == ERROR_SUCCESS)
{
@ -2005,7 +1983,7 @@ LONG RenameKey(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpNewName)
{
s++;
cbNewSubKey = (s - lpSubKey + wcslen(lpNewName) + 1) * sizeof(WCHAR);
lpNewSubKey = (LPWSTR) HeapAlloc(GetProcessHeap(), 0, cbNewSubKey);
lpNewSubKey = (LPWSTR)HeapAlloc(GetProcessHeap(), 0, cbNewSubKey);
if (lpNewSubKey != NULL)
{
StringCbCopyNW(lpNewSubKey, cbNewSubKey, lpSubKey, (s - lpSubKey) * sizeof(WCHAR));
@ -2072,7 +2050,7 @@ LONG QueryStringValue(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpValueName, LPWSTR p
}
cbData = (dwBufferLen - 1) * sizeof(*pszBuffer);
lResult = RegQueryValueExW(hKey, lpValueName, NULL, &dwType, (LPBYTE) pszBuffer, &cbData);
lResult = RegQueryValueExW(hKey, lpValueName, NULL, &dwType, (LPBYTE)pszBuffer, &cbData);
if (lResult != ERROR_SUCCESS)
goto done;
if (dwType != REG_SZ)

View file

@ -3,20 +3,7 @@
*
* Copyright (C) 2010 Adam Kachwalla <geekdundee@gmail.com>
* Copyright (C) 2012 Hermès Bélusca - Maïto <hermes.belusca@sfr.fr>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"

View file

@ -1,19 +1,7 @@
/*
* Regedit find dialog
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -543,7 +531,6 @@ success:
return TRUE;
}
static DWORD GetFindFlags(void)
{
HKEY hKey;

View file

@ -2,20 +2,7 @@
* Regedit frame window
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -24,20 +11,10 @@
#include <cderr.h>
#include <objsel.h>
/********************************************************************************
* Global and Local Variables:
*/
#define FAVORITES_MENU_POSITION 3
static WCHAR s_szFavoritesRegKey[] = L"Software\\Microsoft\\Windows\\CurrentVersion\\Applets\\Regedit\\Favorites";
static BOOL bInMenuLoop = FALSE; /* Tells us if we are in the menu loop */
extern WCHAR Suggestions[256];
/*******************************************************************************
* Local module support methods
*/
static UINT ErrorBox(HWND hWnd, UINT Error)
{
@ -70,8 +47,6 @@ static void resize_frame_client(HWND hWnd)
resize_frame_rect(hWnd, &rect);
}
/********************************************************************************/
static void OnInitMenu(HWND hWnd)
{
LONG lResult;
@ -1193,7 +1168,7 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
ARRAY_SIZE(szComputerName));
if (hRet == S_OK)
{
/* FIXME - connect to the registry */
// FIXME - connect to the registry
}
FreeObjectPicker(ObjectPicker);

View file

@ -2,20 +2,7 @@
* Hex editor control
*
* Copyright (C) 2004 Thomas Weidenmueller <w3seek@reactos.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"

View file

@ -1,7 +1,5 @@
/* Превод на Български/ Bulgarian translation */
/* https://reactos.org/wiki/Bulgarian_translation */
/* LOCATION: base/applications/regedit/lang */
/* НЕДОВЪРШЕН/ INCOMPLETE */
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
@ -71,18 +69,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Файл"
BEGIN
MENUITEM "Из&ход", ID_REGISTRY_EXIT
END
POPUP "Помо&щ"
BEGIN
MENUITEM "&За", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Файл"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Soubor"
BEGIN
MENUITEM "U&končit", ID_REGISTRY_EXIT
END
POPUP "&Nápověda"
BEGIN
MENUITEM "&O editoru registru", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Registry"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Datei"
BEGIN
MENUITEM "&Beenden", ID_REGISTRY_EXIT
END
POPUP "&Hilfe"
BEGIN
MENUITEM "Inf&o", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Datei"
@ -441,7 +429,7 @@ STRINGTABLE
BEGIN
ID_EDIT_MODIFY "Ändert die Daten eines Wertes"
ID_EDIT_NEW_KEY "Fügt einen neuen Schlüssel hinzu"
ID_EDIT_NEW_STRINGVALUE "Fügt eine neue Zeichenkette hinzu "
ID_EDIT_NEW_STRINGVALUE "Fügt eine neue Zeichenkette hinzu"
ID_EDIT_NEW_BINARYVALUE "Fügt einen neuen Binärwärt hinzu"
ID_EDIT_NEW_DWORDVALUE "Fügt einen neuen DWORD-Wert hinzu"
ID_REGISTRY_IMPORTREGISTRYFILE "Importiert eine Textddatei in die Registry"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Αρχείο"
BEGIN
MENUITEM "Έ&ξοδος", ID_REGISTRY_EXIT
END
POPUP "&Βοήθεια"
BEGIN
MENUITEM "&Σχετικά", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Αρχείο"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&xit", ID_REGISTRY_EXIT
END
POPUP "&Help"
BEGIN
MENUITEM "&About", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&File"

View file

@ -1,5 +1,5 @@
/* Spanish Language resource file.
* Translated by: ?? and Ismael Ferreras Morezuelas <2014-11-07> */
* TRANSLATOR: 2014 Ismael Ferreras Morezuelas */
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
@ -69,18 +69,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Archivo"
BEGIN
MENUITEM "&Salir", ID_REGISTRY_EXIT
END
POPUP "Ay&uda"
BEGIN
MENUITEM "&Acerca de", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Archivo"
@ -705,7 +693,7 @@ FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "Buscar &siguiente", IDOK, 187, 7, 60, 14
PUSHBUTTON "Cancelar", IDCANCEL, 187, 24, 60, 14
GROUPBOX "Buscar en ", IDC_STATIC, 7, 25, 63, 51
GROUPBOX "Buscar en", IDC_STATIC, 7, 25, 63, 51
LTEXT "&Buscar:", IDC_STATIC, 7, 8, 30, 10
EDITTEXT IDC_FINDWHAT, 40, 7, 142, 13, ES_AUTOHSCROLL
CONTROL "&Claves", IDC_LOOKAT_KEYS, "Button", BS_AUTOCHECKBOX |

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Fichier"
BEGIN
MENUITEM "&Quitter", ID_REGISTRY_EXIT
END
POPUP "&Aide"
BEGIN
MENUITEM "&À propos", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Fichier"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&קובץ"
BEGIN
MENUITEM "&יציאה", ID_REGISTRY_EXIT
END
POPUP "&עזרה"
BEGIN
MENUITEM "&אודות", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&קובץ"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "&Kilépés", ID_REGISTRY_EXIT
END
POPUP "&Súgó"
BEGIN
MENUITEM "&Névjegy", ID_HELP_ABOUT //FIXME: There are 2 ID_HELP_ABOUT and their text should be synced
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&File"
@ -133,11 +121,11 @@ BEGIN
MENUITEM "&Add to Favorites", ID_FAVOURITES_ADDTOFAVOURITES, GRAYED
MENUITEM "&Remove Favorite", ID_FAVOURITES_REMOVEFAVOURITE, GRAYED
END
POPUP "&Help"
POPUP "&Súgó"
BEGIN
MENUITEM "&Help Topics\tF1", ID_HELP_HELPTOPICS
MENUITEM SEPARATOR
MENUITEM "&About Registry Editor", ID_HELP_ABOUT //FIXME: There are 2 ID_HELP_ABOUT and their text should be synced
MENUITEM "&Névjegy", ID_HELP_ABOUT
END
END

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "Be&rkas"
BEGIN
MENUITEM "&Keluar", ID_REGISTRY_EXIT
END
POPUP "&Bantuan"
BEGIN
MENUITEM "&Tentang", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "Be&rkas"
@ -213,9 +201,9 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP |
CAPTION "Edit String"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "&Nama Nilai:", IDC_STATIC, 6, 6, 134, 8
LTEXT "&Nama nilai:", IDC_STATIC, 6, 6, 134, 8
EDITTEXT IDC_VALUE_NAME, 6, 17, 240, 12, ES_AUTOHSCROLL | ES_READONLY
LTEXT "&Data Nilai:", IDC_STATIC, 6, 35, 161, 8
LTEXT "&Data nilai:", IDC_STATIC, 6, 35, 161, 8
EDITTEXT IDC_VALUE_DATA, 6, 46, 240, 12, ES_AUTOHSCROLL
DEFPUSHBUTTON "OK", IDOK, 142, 64, 50, 14
PUSHBUTTON "Batal", IDCANCEL, 196, 64, 50, 14

View file

@ -74,18 +74,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&sci", ID_REGISTRY_EXIT
END
POPUP "&Aiuto"
BEGIN
MENUITEM "&Informazioni sull'editor del Registro", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&File"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "ファイル(&F)"
BEGIN
MENUITEM "レジストリ エディタの終了(&X)", ID_REGISTRY_EXIT
END
POPUP "ヘルプ(&H)"
BEGIN
MENUITEM "バージョン情報(&A)", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "ファイル(&F)"

View file

@ -68,18 +68,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "파일(&F)"
BEGIN
MENUITEM "종료(&X)", ID_REGISTRY_EXIT
END
POPUP "도움말(&H)"
BEGIN
MENUITEM "대하여(&A)", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "파일(&F)"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Bestand"
BEGIN
MENUITEM "&Afsluiten", ID_REGISTRY_EXIT
END
POPUP "&Help"
BEGIN
MENUITEM "&Info", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Registerbestand"

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Fil"
BEGIN
MENUITEM "&Avslutt", ID_REGISTRY_EXIT
END
POPUP "&Hjelp"
BEGIN
MENUITEM "&Om", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Fil"
@ -106,7 +94,7 @@ BEGIN
MENUITEM "&Strengverdi", ID_EDIT_NEW_STRINGVALUE
MENUITEM "&Binær verdi", ID_EDIT_NEW_BINARYVALUE
MENUITEM "&DWORD-verdi", ID_EDIT_NEW_DWORDVALUE
MENUITEM "&Multistreng verdi", ID_EDIT_NEW_MULTISTRINGVALUE
MENUITEM "&Multistrengverdi", ID_EDIT_NEW_MULTISTRINGVALUE
MENUITEM "&Utvidbar strengverdi", ID_EDIT_NEW_EXPANDABLESTRINGVALUE
END
MENUITEM SEPARATOR

View file

@ -1,11 +1,9 @@
/*
* Update by Caemyr - Olaf Siejka (Jan, 2007; May, 2011)
* Use ReactOS forum PM or IRC to contact me
* https://reactos.org
* IRC: irc.freenode.net #reactos-pl;
* Updated by Saibamen - Adam Stachowicz (saibamenppl@gmail.com) (August, 2011)
* UTF-8 conversion by Caemyr (May, 2011)
* Update by wojo664 (04.08.2011)
* 2007-2011 Caemyr - Olaf Siejka
* Use ReactOS forum PM or IRC to contact me
* IRC: irc.freenode.net #reactos-pl;
* 2011 Adam Stachowicz (Saibamen) <saibamenppl@gmail.com>
* 2011 wojo664
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
@ -76,21 +74,9 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Plik" //FIXME: harmonize those strings (part1 of 2). I do recommend to use "&Plik" for both!
BEGIN
MENUITEM "Za&kończ", ID_REGISTRY_EXIT
END
POPUP "Pomo&c"
BEGIN
MENUITEM "&Informacje", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Rejestr" //FIXME: harmonize those strings (part2 of 2). I do recommend to use "&Plik" for both!
POPUP "&Plik"
BEGIN
MENUITEM "&Importuj plik rejestru...", ID_REGISTRY_IMPORTREGISTRYFILE
MENUITEM "&Eksportuj plik rejestru...", ID_REGISTRY_EXPORTREGISTRYFILE

View file

@ -66,18 +66,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Arquivo"
BEGIN
MENUITEM "Sai&r", ID_REGISTRY_EXIT
END
POPUP "A&juda"
BEGIN
MENUITEM "&Sobre", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Arquivo"
@ -95,7 +83,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&Sair", ID_REGISTRY_EXIT
END
POPUP "&Editar"
POPUP "&Editar"//FIXME: accelerator collision &E
BEGIN
MENUITEM "&Modificar", ID_EDIT_MODIFY
MENUITEM SEPARATOR
@ -120,7 +108,7 @@ BEGIN
MENUITEM "Locali&zar...\tCtrl+F", ID_EDIT_FIND
MENUITEM "Localizar pró&ximo\tF3", ID_EDIT_FINDNEXT
END
POPUP "&Exibir"
POPUP "&Exibir"//FIXME: accelerator collision &E
BEGIN
MENUITEM "Barra de &status", ID_VIEW_STATUSBAR
MENUITEM SEPARATOR

View file

@ -76,18 +76,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Ficheiro"
BEGIN
MENUITEM "Sai&r", ID_REGISTRY_EXIT
END
POPUP "Aj&uda"
BEGIN
MENUITEM "&Acerca do 'Editor de registo'", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Ficheiro"
@ -223,9 +211,9 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP |
CAPTION "Editar texto"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Nome do valor:", IDC_STATIC, 5, 5, 119, 8
LTEXT "&Nome do valor:", IDC_STATIC, 5, 5, 119, 8
EDITTEXT IDC_VALUE_NAME, 5, 15, 200, 12, ES_AUTOHSCROLL | ES_READONLY
LTEXT "Dados do valor:", IDC_STATIC, 5, 30, 119, 8
LTEXT "&Dados do valor:", IDC_STATIC, 5, 30, 119, 8
EDITTEXT IDC_VALUE_DATA, 5, 40, 200, 12, ES_AUTOHSCROLL
DEFPUSHBUTTON "OK", IDOK, 140, 60, 30, 11
PUSHBUTTON "Cancelar", IDCANCEL, 175, 60, 30, 11

View file

@ -76,18 +76,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Fișier"
BEGIN
MENUITEM "I&eșire", ID_REGISTRY_EXIT
END
POPUP "Aj&utor"
BEGIN
MENUITEM "&Despre…", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Fișier"

View file

@ -79,18 +79,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Файл"
BEGIN
MENUITEM "В&ыход", ID_REGISTRY_EXIT
END
POPUP "&Справка"
BEGIN
MENUITEM "&О программе", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Файл"

View file

@ -1,5 +1,4 @@
/* TRANSLATOR : Mário Kačmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 07-07-2008
/* TRANSLATOR: 2008 Mário Kačmár /Mario Kacmar/ aka Kario <kario@szm.sk>
*/
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
@ -70,18 +69,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Súbor"
BEGIN
MENUITEM "S&končiť", ID_REGISTRY_EXIT
END
POPUP "&Pomocník"
BEGIN
MENUITEM "Č&o je", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Súbor"
@ -241,7 +228,7 @@ END
IDD_EDIT_BIN_DATA DIALOGEX 32, 24, 252, 174
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Úprava binárnej hodnoty" //upraviť, upravenie
CAPTION "Úprava binárnej hodnoty"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Value &name:", IDC_STATIC, 6, 6, 134, 8

View file

@ -66,21 +66,9 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Datoteka" //FIXME: Harmonize those 2 strings (part 1 of 2). I do recommend to use "&Register" for both. Attention: &D would collide with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT
BEGIN
MENUITEM "Iz&hod", ID_REGISTRY_EXIT
END
POPUP "&Pomoè"
BEGIN
MENUITEM "&O", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Register" //FIXME: Harmonize those 2 strings (part 2 of 2). I do recommend to use "&Register" for both. Attention: &D would collide with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT
POPUP "&Register"
BEGIN
MENUITEM "&Uvozi registrsko datoteko...", ID_REGISTRY_IMPORTREGISTRYFILE
MENUITEM "&Izvozi registrsko datoteko...", ID_REGISTRY_EXPORTREGISTRYFILE

View file

@ -1,5 +1,4 @@
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com)
* DATE OF TR: 29-11-2013
/* TRANSLATOR: 2013 Ardit Dani (Ard1t) <ardit.dani@gmail.com>
*/
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
@ -70,18 +69,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "Dil", ID_REGISTRY_EXIT
END
POPUP "Ndihmë"
BEGIN
MENUITEM "rRETH", ID_HELP_ABOUT //FIXME: This string should be synced with the other MENUITEM "Rreth Registry Editor", ID_HELP_ABOUT (part 2 of 2). I did use MENUITEM "Rreth" for both in older releases. //FIXME: It should also have an accelerator.
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&File"
@ -97,7 +84,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&Printo...\tCtrl+P", ID_REGISTRY_PRINT, GRAYED
MENUITEM SEPARATOR
MENUITEM "Dil", ID_REGISTRY_EXIT
MENUITEM "Dil", ID_REGISTRY_EXIT//FIXME: missing accelerator
END
POPUP "Modifiko"
BEGIN
@ -137,11 +124,11 @@ BEGIN
MENUITEM "Shto tek Favoritet", ID_FAVOURITES_ADDTOFAVOURITES, GRAYED
MENUITEM "Hiq nga Favorite", ID_FAVOURITES_REMOVEFAVOURITE, GRAYED
END
POPUP "Ndihmë"
POPUP "Ndihmë"//FIXME: missing accelerator
BEGIN
MENUITEM "Ndihmë temë\tF1", ID_HELP_HELPTOPICS
MENUITEM "Ndihmë temë\tF1", ID_HELP_HELPTOPICS//FIXME: missing accelerator
MENUITEM SEPARATOR
MENUITEM "Rreth Registry Editor", ID_HELP_ABOUT //FIXME: This string should be synced with the other MENUITEM "rRETH", ID_HELP_ABOUT (part 2 of 2). I did use MENUITEM "Rreth" for both in older releases. //FIXME: It should also have an accelerator.
MENUITEM "Rreth Registry Editor", ID_HELP_ABOUT//FIXME: missing accelerator
END
END

View file

@ -66,21 +66,9 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Arkiv" //FIXME: Harmonize that string with POPUP "R&egistret" (part 1 of 2). I used "&Arkiv" for both locations for the backport.
BEGIN
MENUITEM "&Avsluta", ID_REGISTRY_EXIT
END
POPUP "&Hjälp"
BEGIN
MENUITEM "&Om", ID_HELP_ABOUT //FIXME: Harmonize that string with the 2nd ID_HELP_ABOUT (part 1 of 2). I used "&Om" for both in the backport.
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "R&egistret" //FIXME: Harmonize that string with POPUP "&Arkiv" (part 2 of 2). I used "&Arkiv" for both locations for the backport.
POPUP "&Arkiv"
BEGIN
MENUITEM "&Importera registerfil...", ID_REGISTRY_IMPORTREGISTRYFILE
MENUITEM "&Exportera registerfil...", ID_REGISTRY_EXPORTREGISTRYFILE
@ -137,7 +125,7 @@ BEGIN
BEGIN
MENUITEM "&Hjälpavsnitt\tF1", ID_HELP_HELPTOPICS
MENUITEM SEPARATOR
MENUITEM "&Om Registereditorn", ID_HELP_ABOUT //FIXME: Harmonize that string with the 2nd ID_HELP_ABOUT (part 2 of 2). I used "&Om" for both in the backport.
MENUITEM "&Om Registereditorn", ID_HELP_ABOUT
END
END

View file

@ -68,18 +68,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "แ&ฟ้ม"
BEGIN
MENUITEM "&ออกจากโปรแกรม", ID_REGISTRY_EXIT
END
POPUP "&ช่วยเหลือ"
BEGIN
MENUITEM "เ&กี่ยวกับ", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "แ&ฟ้ม"
@ -135,7 +123,7 @@ BEGIN
MENUITEM "&Add to Favorites", ID_FAVOURITES_ADDTOFAVOURITES, GRAYED
MENUITEM "&Remove Favorite", ID_FAVOURITES_REMOVEFAVOURITE, GRAYED
END
POPUP "&Help"
POPUP "&ช่วยเหลือ"
BEGIN
MENUITEM "&Help Topics\tF1", ID_HELP_HELPTOPICS
MENUITEM SEPARATOR

View file

@ -1,4 +1,4 @@
/* TRANSLATOR: 2013-2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
/* TRANSLATOR: 2013-2015 Erdem Ersoy (eersoy93) <erdemersoy@erdemersoy.net> */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@ -68,21 +68,9 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Dosya" //FIXME: 3x accelerator collision &D: with POPUP "&Düzen" and also with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT. I used "&Kütük" for the backport
BEGIN
MENUITEM "&Çıkış", ID_REGISTRY_EXIT
END
POPUP "&Yardım"
BEGIN
MENUITEM "&Hakkında", ID_HELP_ABOUT //FIXME: There are 2 ID_HELP_ABOUT in here. Sync their text! I just used "&Üzerine" for the backport
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "&Dosya" //FIXME: 3x accelerator collision &D: with POPUP "&Düzen" and also with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT. If you decide to change this then please keep it in sync with the IDC_REGEDIT MENU. I used "&Kütük" for the backport
POPUP "&Kütük"
BEGIN
MENUITEM "&Al...", ID_REGISTRY_IMPORTREGISTRYFILE
MENUITEM "&Ver...", ID_REGISTRY_EXPORTREGISTRYFILE
@ -97,7 +85,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&Çıkış", ID_REGISTRY_EXIT
END
POPUP "&Düzen" //FIXME: 3x accelerator collision &D: with POPUP "&Dosya" and also with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT.
POPUP "&Düzen" //FIXME: 2x accelerator collision &D: with "D", ID_ADDRESS_FOCUS, VIRTKEY, ALT.
BEGIN
MENUITEM "&Değiştir...", ID_EDIT_MODIFY
MENUITEM SEPARATOR
@ -139,7 +127,7 @@ BEGIN
BEGIN
MENUITEM "&Yardım Konuları\tF1", ID_HELP_HELPTOPICS
MENUITEM SEPARATOR
MENUITEM "&Kayıt Defteri Düzenleyicisi Hakkında", ID_HELP_ABOUT //FIXME: There are 2 ID_HELP_ABOUT in here. Sync their text! I just used "&Üzerine" for the backport
MENUITEM "&Kayıt Defteri Düzenleyicisi Hakkında", ID_HELP_ABOUT
END
END

View file

@ -68,21 +68,9 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "&Файл" //FIXME: Harmonize this string (part 1 of 2)
BEGIN
MENUITEM "В&ихід", ID_REGISTRY_EXIT
END
POPUP "&Довідка"
BEGIN
MENUITEM "Пр&о програму", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "Фа&йл" //FIXME: Harmonize this string (part 2 of 2)
POPUP "&Файл"
BEGIN
MENUITEM "&Імпорт...", ID_REGISTRY_IMPORTREGISTRYFILE
MENUITEM "&Експорт...", ID_REGISTRY_EXPORTREGISTRYFILE

View file

@ -76,18 +76,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "文件(&F)"
BEGIN
MENUITEM "退出(&X)", ID_REGISTRY_EXIT
END
POPUP "帮助(&H)"
BEGIN
MENUITEM "关于注册表编辑器(&A)", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "文件(&F)"

View file

@ -75,18 +75,6 @@ END
/* Menus */
IDC_REGEDIT MENU
BEGIN
POPUP "檔案(&F)"
BEGIN
MENUITEM "結束(&X)", ID_REGISTRY_EXIT
END
POPUP "說明(&H)"
BEGIN
MENUITEM "關於登錄編輯程式(&A)", ID_HELP_ABOUT
END
END
IDR_REGEDIT_MENU MENU
BEGIN
POPUP "檔案(&F)"

View file

@ -2,20 +2,7 @@
* Regedit listviews
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -24,8 +11,8 @@
#define CY_ICON 16
#define LISTVIEW_NUM_ICONS 2
int Image_String = 0;
int Image_Bin = 0;
int Image_String;
int Image_Bin;
INT iListViewSelect = -1;
typedef struct tagLINE_INFO
@ -46,7 +33,7 @@ typedef struct tagSORT_INFO
* Global and Local Variables:
*/
static INT g_iSortedColumn = 0;
static INT g_iSortedColumn;
#define MAX_LIST_COLUMNS (IDS_LIST_COLUMN_LAST - IDS_LIST_COLUMN_FIRST + 1)
static const int default_column_widths[MAX_LIST_COLUMNS] = { 35, 25, 40 }; /* in percents */
@ -665,7 +652,6 @@ void DestroyListView(HWND hwndLV)
free(((LINE_INFO*)item.lParam)->name);
HeapFree(GetProcessHeap(), 0, (void*)item.lParam);
}
}
BOOL RefreshListView(HWND hwndLV, HKEY hKey, LPCWSTR keyPath, BOOL bSelectNone)

View file

@ -2,20 +2,7 @@
* Regedit main function
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -35,7 +22,7 @@ HINSTANCE hInst;
HWND hFrameWnd;
HWND hStatusBar;
HMENU hMenuFrame;
HMENU hPopupMenus = 0;
HMENU hPopupMenus;
UINT nClipboardFormat;
LPCWSTR strClipboardFormat = L"TODO: SET CORRECT FORMAT";
@ -45,19 +32,13 @@ WCHAR szFrameClass[MAX_LOADSTRING];
WCHAR szChildClass[MAX_LOADSTRING];
/*******************************************************************************
/**
* PURPOSE: Saves instance handle and creates main window
*
*
* FUNCTION: InitInstance(HANDLE, int)
*
* PURPOSE: Saves instance handle and creates main window
*
* COMMENTS:
*
* In this function, we save the instance handle in a global variable and
* create and display the main program window.
* COMMENTS:
* In this function, we save the instance handle in a global variable and
* create and display the main program window.
*/
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
BOOL AclUiAvailable;
@ -133,11 +114,8 @@ BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, hMenuFrame, hInstance, NULL/*lpParam*/);
if (!hFrameWnd)
{
return FALSE;
}
/* Create the status bar */
hStatusBar = CreateStatusWindowW(WS_VISIBLE | WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | SBT_NOBORDERS,
@ -154,20 +132,15 @@ BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
return TRUE;
}
/******************************************************************************/
/*
* We need to destroy the main menu before destroying the main window
* to avoid a memory leak.
*/
void DestroyMainMenu()
{
DestroyMenu(hMenuFrame);
}
/******************************************************************************/
void ExitInstance(HINSTANCE hInstance)
{
UnregisterHexEditorClass(hInstance);
@ -207,9 +180,9 @@ static BOOL TranslateRegeditAccelerator(HWND hWnd, HACCEL hAccTable, PMSG msg)
}
int WINAPI wWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPWSTR lpCmdLine,
int nCmdShow)
HINSTANCE hPrevInstance,
LPWSTR lpCmdLine,
int nCmdShow)
{
MSG msg;
HACCEL hAccel;
@ -224,16 +197,13 @@ int WINAPI wWinMain(HINSTANCE hInstance,
LoadStringW(hInstance, IDC_REGEDIT, szChildClass, ARRAY_SIZE(szChildClass));
if (ProcessCmdLine(GetCommandLineW()))
{
return 0;
}
switch (GetUserDefaultUILanguage())
{
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
SetProcessDefaultLayout(LAYOUT_RTL);
break;
default:
break;
}
@ -242,9 +212,8 @@ int WINAPI wWinMain(HINSTANCE hInstance,
/* Perform application initialization */
if (!InitInstance(hInstance, nCmdShow))
{
return 0;
}
hAccel = LoadAcceleratorsW(hInstance, MAKEINTRESOURCEW(ID_ACCEL));
/* Main message loop */

View file

@ -2,20 +2,7 @@
* Regedit definitions
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#pragma once

View file

@ -2,20 +2,7 @@
* Windows regedit.exe registry editor implementation.
*
* Copyright 2002 Andriy Palamarchuk
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#ifndef __REACTOS__

View file

@ -2,20 +2,7 @@
* Regedit resources
*
* Copyright 2002 Robert Dickenson
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include <windef.h>

View file

@ -5,20 +5,7 @@
* Copyright 1999 Sylvain St-Germain
* Copyright 2002 Andriy Palamarchuk
* Copyright 2008 Alexander N. Sørnes <alex@thehandofagony.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#ifdef __REACTOS__

View file

@ -2,20 +2,7 @@
* Regedit resource definitions
*
* Copyright 2002 Robert Dickenson
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#pragma once
@ -271,7 +258,6 @@
#define IDS_SHARE_SHARED 31620
#define IDS_SHARE_UNDETERMINED 31621
#define IDD_EDIT_STRING 2000
#define IDC_VALUE_NAME 2001
#define IDC_VALUE_DATA 2002
@ -346,17 +332,17 @@
#define IDC_REQ_MEMORY_ALTERNATIVE 2059
#define IDC_REQ_MEMORY_PREFERRED 2060
#define IDD_EDIT_REQUIREMENTS_INT 2061
#define IDC_REQ_INT_TYPE 2062
#define IDD_EDIT_REQUIREMENTS_INT 2061
#define IDC_REQ_INT_TYPE 2062
#define IDC_REQ_INT_MIN 2063
#define IDC_REQ_INT_MAX 2064
#define IDC_REQ_INT_SHARE 2065
#define IDC_REQ_INT_ALTERNATIVE 2066
#define IDC_REQ_INT_PREFERRED 2067
#define IDD_EDIT_REQUIREMENTS_DMA 2068
#define IDC_REQ_DMA_MIN 2069
#define IDC_REQ_DMA_MAX 2070
#define IDD_EDIT_REQUIREMENTS_DMA 2068
#define IDC_REQ_DMA_MIN 2069
#define IDC_REQ_DMA_MAX 2070
#define IDC_REQ_DMA_SHARE 2071
#define IDC_REQ_DMA_ALTERNATIVE 2072
#define IDC_REQ_DMA_PREFERRED 2073

View file

@ -1,21 +1,8 @@
/*
* Regedit ACL Editor for Registry Keys
*
* Copyright (C) 2004 - 2006 Thomas Weidenmueller <w3seek@reactos.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* Copyright (C) 2004-2006 Thomas Weidenmueller <w3seek@reactos.com>
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
@ -89,9 +76,7 @@ CRegKeySecurity_fnRelease(PCRegKeySecurity obj)
Ret = (ULONG)InterlockedDecrement((LONG*)&obj->ref);
if (Ret == 0)
{
HeapFree(GetProcessHeap(),
0,
obj);
HeapFree(GetProcessHeap(), 0, obj);
}
return Ret;
@ -104,31 +89,23 @@ CRegKeySecurity_fnQueryInterface(PCRegKeySecurity obj,
{
PVOID pvObj = NULL;
if (IsEqualGUID(iid,
&IID_IRegKeySecurity))
if (IsEqualGUID(iid, &IID_IRegKeySecurity))
{
pvObj = (PVOID)impl_to_interface(obj,
ISecurityInformation);
pvObj = (PVOID)impl_to_interface(obj, ISecurityInformation);
}
#if REGEDIT_IMPLEMENT_ISECURITYINFORMATION2
else if (IsEqualGUID(iid,
&IID_IRegKeySecurity2))
else if (IsEqualGUID(iid, &IID_IRegKeySecurity2))
{
pvObj = (PVOID)impl_to_interface(obj,
ISecurityInformation2);
pvObj = (PVOID)impl_to_interface(obj, ISecurityInformation2);
}
#endif
else if (IsEqualGUID(iid,
&IID_IEffectivePermission))
else if (IsEqualGUID(iid, &IID_IEffectivePermission))
{
pvObj = (PVOID)impl_to_interface(obj,
IEffectivePermission);
pvObj = (PVOID)impl_to_interface(obj, IEffectivePermission);
}
else if (IsEqualGUID(iid,
&IID_ISecurityObjectTypeInfo))
else if (IsEqualGUID(iid, &IID_ISecurityObjectTypeInfo))
{
pvObj = (PVOID)impl_to_interface(obj,
ISecurityObjectTypeInfo);
pvObj = (PVOID)impl_to_interface(obj, ISecurityObjectTypeInfo);
}
if (pvObj == NULL)
@ -370,8 +347,7 @@ ISecurityInformation_fnQueryInterface(struct ISecurityInformation *this,
REFIID iid,
PVOID *pvObject)
{
if (IsEqualGUID(iid,
&IID_IUnknown))
if (IsEqualGUID(iid, &IID_IUnknown))
{
*pvObject = (PVOID)this;
ISecurityInformation_fnAddRef(this);
@ -458,8 +434,7 @@ ISecurityInformation_fnMapGeneric(struct ISecurityInformation *this,
UCHAR* pAceFlags,
ACCESS_MASK* pMask)
{
MapGenericMask(pMask,
&RegAccessMasks);
MapGenericMask(pMask, &RegAccessMasks);
*pMask &= ~SYNCHRONIZE;
return S_OK;
}
@ -484,9 +459,9 @@ ISecurityInformation_fnGetInheritTypes(struct ISecurityInformation *this,
static HRESULT STDMETHODCALLTYPE
ISecurityInformation_fnPropertySheetPageCallback(struct ISecurityInformation *this,
HWND hwnd,
UINT uMsg,
SI_PAGE_TYPE uPage)
HWND hwnd,
UINT uMsg,
SI_PAGE_TYPE uPage)
{
return S_OK;
}
@ -501,8 +476,7 @@ ISecurityInformation2_fnQueryInterface(struct ISecurityInformation2 *this,
REFIID iid,
PVOID *pvObject)
{
if (IsEqualGUID(iid,
&IID_IUnknown))
if (IsEqualGUID(iid, &IID_IUnknown))
{
*pvObject = (PVOID)this;
ISecurityInformation2_fnAddRef(this);
@ -554,8 +528,7 @@ IEffectivePermission_fnQueryInterface(struct IEffectivePermission *this,
REFIID iid,
PVOID *pvObject)
{
if (IsEqualGUID(iid,
&IID_IUnknown))
if (IsEqualGUID(iid, &IID_IUnknown))
{
*pvObject = (PVOID)this;
IEffectivePermission_fnAddRef(this);
@ -600,8 +573,7 @@ IEffectivePermission_fnGetEffectivePermission(struct IEffectivePermission *this,
*ppObjectTypeList = &DefObjTypeList;
*pcObjectTypeListLength = 1;
BuildTrusteeWithSid(&Trustee,
pUserSid);
BuildTrusteeWithSid(&Trustee, pUserSid);
if (GetSecurityDescriptorDacl(pSD,
&DaclPresent,
@ -642,8 +614,7 @@ ISecurityObjectTypeInfo_fnQueryInterface(struct ISecurityObjectTypeInfo *this,
REFIID iid,
PVOID *pvObject)
{
if (IsEqualGUID(iid,
&IID_IUnknown))
if (IsEqualGUID(iid, &IID_IUnknown))
{
*pvObject = (PVOID)this;
ISecurityObjectTypeInfo_fnAddRef(this);
@ -680,13 +651,9 @@ ISecurityObjectTypeInfo_fnGetInheritSource(struct ISecurityObjectTypeInfo *this,
LPWSTR lpBuf;
pifSize = pACL->AceCount * sizeof(INHERITED_FROM);
pif = (PINHERITED_FROM)HeapAlloc(GetProcessHeap(),
0,
pifSize);
pif = (PINHERITED_FROM)HeapAlloc(GetProcessHeap(), 0, pifSize);
if (pif == NULL)
{
return E_OUTOFMEMORY;
}
ErrorCode = GetInheritanceSourceW(obj->szRegKey,
SE_REGISTRY_KEY,
@ -698,23 +665,17 @@ ISecurityObjectTypeInfo_fnGetInheritSource(struct ISecurityObjectTypeInfo *this,
NULL,
&RegAccessMasks,
pif);
if (ErrorCode == ERROR_SUCCESS)
{
/* Calculate the size of the buffer to return */
for (i = 0;
i < pACL->AceCount;
i++)
for (i = 0; i < pACL->AceCount; i++)
{
if (pif[i].AncestorName != NULL)
{
pifSize += (wcslen(pif[i].AncestorName) + 1) * sizeof(WCHAR);
}
}
/* Allocate enough space for the array and the strings */
pif2 = (PINHERITED_FROM)LocalAlloc(LMEM_FIXED,
pifSize);
pif2 = (PINHERITED_FROM)LocalAlloc(LMEM_FIXED, pifSize);
if (pif2 == NULL)
{
ErrorCode = GetLastError();
@ -723,9 +684,7 @@ ISecurityObjectTypeInfo_fnGetInheritSource(struct ISecurityObjectTypeInfo *this,
/* copy the array and strings to the buffer */
lpBuf = (LPWSTR)((ULONG_PTR)pif2 + (pACL->AceCount * sizeof(INHERITED_FROM)));
for (i = 0;
i < pACL->AceCount;
i++)
for (i = 0; i < pACL->AceCount; i++)
{
pif2[i].GenerationGap = pif[i].GenerationGap;
if (pif[i].AncestorName != NULL)
@ -744,12 +703,8 @@ ISecurityObjectTypeInfo_fnGetInheritSource(struct ISecurityObjectTypeInfo *this,
}
Cleanup:
FreeInheritedFromArray(pif,
pACL->AceCount,
NULL);
HeapFree(GetProcessHeap(),
0,
pif);
FreeInheritedFromArray(pif, pACL->AceCount, NULL);
HeapFree(GetProcessHeap(), 0, pif);
return HRESULT_FROM_WIN32(ErrorCode);
}
@ -890,26 +845,18 @@ RegKeyEditPermissions(HWND hWndOwner,
if (lnMachine != 0)
{
wcscat(lpKeyPath,
L"\\\\");
wcscat(lpKeyPath,
lpMachine);
wcscat(lpKeyPath,
L"\\");
wcscat(lpKeyPath, L"\\\\");
wcscat(lpKeyPath, lpMachine);
wcscat(lpKeyPath, L"\\");
}
wcscat(lpKeyPath,
lphKey);
wcscat(lpKeyPath, lphKey);
if (lpKeyName != NULL && lpKeyName[0] != L'\0')
{
if (lpKeyName[0] != L'\\')
{
wcscat(lpKeyPath,
L"\\");
}
wcscat(lpKeyPath, L"\\");
wcscat(lpKeyPath,
lpKeyName);
wcscat(lpKeyPath, lpKeyName);
}
ObjectInfo.dwFlags = SI_EDIT_ALL | SI_ADVANCED | SI_CONTAINER | SI_EDIT_EFFECTIVE | SI_EDIT_PERMS |
@ -928,20 +875,14 @@ RegKeyEditPermissions(HWND hWndOwner,
}
/* display the security editor dialog */
pfnEditSecurity(hWndOwner,
impl_to_interface(RegKeySecurity,
ISecurityInformation));
pfnEditSecurity(hWndOwner, impl_to_interface(RegKeySecurity, ISecurityInformation));
/* dereference the interface, it should be destroyed here */
CRegKeySecurity_fnRelease(RegKeySecurity);
Cleanup:
if (lpKeyPath != NULL)
{
HeapFree(GetProcessHeap(),
0,
lpKeyPath);
}
HeapFree(GetProcessHeap(), 0, lpKeyPath);
return Result;
}

View file

@ -1,22 +1,9 @@
/*
* Regedit settings
*
* Copyright (C) 2012 Edijs Kolesnikovics <terminedijs@yahoo.com>
* Copyright (C) 2012 Grégori Macário Harbs <mysoft64bits at gmail dot com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* Copyright 2012 Edijs Kolesnikovics <terminedijs@yahoo.com>
* Copyright 2012 Grégori Macário Harbs <mysoft64bits@gmail.com>
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"

View file

@ -2,35 +2,20 @@
* Regedit treeview
*
* Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
*/
#include "regedit.h"
/* Global variables and constants */
/* Image_Open, Image_Closed, and Image_Root - integer variables for indexes of the images. */
/* CX_ICON and CY_ICON - width and height of an icon. */
/* NUM_ICON - number of icons to add to the image list. */
static int Image_Open = 0;
static int Image_Closed = 0;
static int Image_Root = 0;
/* Global variables and constants */
/* Image_Open, Image_Closed, and Image_Root - integer variables for indexes of the images */
static int Image_Open;
static int Image_Closed;
static int Image_Root;
static LPWSTR pathBuffer;
#define NUM_ICONS 3
#define NUM_ICONS 3 /* number of icons to add to the image list */
/* External resources in shell32.dll */
#define IDI_SHELL_FOLDER 4
@ -92,17 +77,13 @@ LPCWSTR GetItemPath(HWND hwndTV, HTREEITEM hItem, HKEY* phRootKey)
*phRootKey = NULL;
if (!pathBuffer)
{
pathBuffer = HeapAlloc(GetProcessHeap(), 0, 1024);
}
if (!pathBuffer)
{
return NULL;
}
*pathBuffer = UNICODE_NULL;
maxLen = (int) HeapSize(GetProcessHeap(), 0, pathBuffer);
maxLen = (int)HeapSize(GetProcessHeap(), 0, pathBuffer);
if (!hItem)
{
@ -444,7 +425,6 @@ static BOOL InitTreeViewItems(HWND hwndTV, LPWSTR pHostName)
return TRUE;
}
/*
* InitTreeViewImageLists - creates an image list, adds three bitmaps
* to it, and associates the image list with a tree view control.
@ -580,7 +560,6 @@ done:
return TRUE;
}
BOOL CreateNewKey(HWND hwndTV, HTREEITEM hItem)
{
WCHAR szNewKeyFormat[128];