[CHARMAP]Code improvements (#436)

* [CHARMAP][GETUNAME] Code improvements

Based on the code from nls2txt,
switches the linking from dynamic to static, also simplifies the code.
This commit is contained in:
Baruch Rutman 2018-05-17 18:18:57 +03:00 committed by Ged Murphy
parent 0c683c264c
commit bf34d6bf8b
3 changed files with 7 additions and 28 deletions

View file

@ -10,6 +10,6 @@ list(APPEND SOURCE
add_rc_deps(charmap.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/charmap.ico) add_rc_deps(charmap.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/charmap.ico)
add_executable(charmap ${SOURCE} charmap.rc) add_executable(charmap ${SOURCE} charmap.rc)
set_module_type(charmap win32gui UNICODE) set_module_type(charmap win32gui UNICODE)
add_importlibs(charmap advapi32 user32 gdi32 comctl32 msvcrt kernel32) add_importlibs(charmap getuname advapi32 user32 gdi32 comctl32 msvcrt kernel32)
add_pch(charmap precomp.h SOURCE) add_pch(charmap precomp.h SOURCE)
add_cd_file(TARGET charmap DESTINATION reactos/system32 FOR all) add_cd_file(TARGET charmap DESTINATION reactos/system32 FOR all)

View file

@ -25,10 +25,6 @@ HICON hSmIcon;
HICON hBgIcon; HICON hBgIcon;
SETTINGS Settings; SETTINGS Settings;
/* GetUName prototype */
typedef int (WINAPI * GETUNAME)(WORD wCharCode, LPWSTR lpbuf);
GETUNAME GetUName;
/* Font-enumeration callback */ /* Font-enumeration callback */
static static
int int
@ -165,7 +161,7 @@ CopyCharacters(HWND hDlg)
// Test if the whose text is unselected // Test if the whose text is unselected
if(dwStart == dwEnd) { if(dwStart == dwEnd) {
// Select the whole text // Select the whole text
SendMessageW(hText, EM_SETSEL, 0, -1); SendMessageW(hText, EM_SETSEL, 0, -1);
@ -268,12 +264,9 @@ UpdateStatusBar(WCHAR wch)
WCHAR buff[MAX_PATH]; WCHAR buff[MAX_PATH];
WCHAR szDesc[MAX_PATH]; WCHAR szDesc[MAX_PATH];
if (GetUName) GetUName(wch, szDesc);
{ wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
GetUName(wch, szDesc); SendMessageW(hStatusWnd, SB_SETTEXT, 0, (LPARAM)buff);
wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
SendMessageW(hStatusWnd, SB_SETTEXT, 0, (LPARAM)buff);
}
} }
static static
@ -593,7 +586,6 @@ wWinMain(HINSTANCE hInst,
INT Ret = 1; INT Ret = 1;
HMODULE hRichEd20; HMODULE hRichEd20;
MSG Msg; MSG Msg;
HINSTANCE hGetUName = NULL;
hInstance = hInst; hInstance = hInst;
@ -612,18 +604,6 @@ wWinMain(HINSTANCE hInst,
iccx.dwICC = ICC_TAB_CLASSES; iccx.dwICC = ICC_TAB_CLASSES;
InitCommonControlsEx(&iccx); InitCommonControlsEx(&iccx);
/* Loading the GetUName function */
hGetUName = LoadLibraryW(L"getuname.dll");
if (hGetUName != NULL)
{
GetUName = (GETUNAME) GetProcAddress(hGetUName, "GetUName");
if (GetUName == NULL)
{
FreeLibrary(hGetUName);
hGetUName = NULL;
}
}
if (RegisterMapClasses(hInstance)) if (RegisterMapClasses(hInstance))
{ {
hRichEd20 = LoadLibraryW(L"RICHED20.DLL"); hRichEd20 = LoadLibraryW(L"RICHED20.DLL");
@ -649,8 +629,5 @@ wWinMain(HINSTANCE hInst,
UnregisterMapClasses(hInstance); UnregisterMapClasses(hInstance);
} }
if (hGetUName != NULL)
FreeLibrary(hGetUName);
return Ret; return Ret;
} }

View file

@ -73,6 +73,8 @@ VOID ShowAboutDlg(HWND hWndParent);
BOOL RegisterMapClasses(HINSTANCE hInstance); BOOL RegisterMapClasses(HINSTANCE hInstance);
VOID UnregisterMapClasses(HINSTANCE hInstance); VOID UnregisterMapClasses(HINSTANCE hInstance);
int WINAPI GetUName(IN WORD wCharCode, OUT LPWSTR lpBuf);
/* charmap.c */ /* charmap.c */
VOID UpdateStatusBar(WCHAR wch); VOID UpdateStatusBar(WCHAR wch);
extern VOID ChangeMapFont(HWND hDlg); extern VOID ChangeMapFont(HWND hDlg);