mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 18:52:57 +00:00
Make it UNICODE-safe.
svn path=/trunk/; revision=29713
This commit is contained in:
parent
47fe787a9e
commit
698fbca4a1
5 changed files with 31 additions and 26 deletions
|
@ -72,12 +72,12 @@ LanguagesEnumProc(LPTSTR lpLanguage)
|
||||||
{
|
{
|
||||||
LCID Lcid;
|
LCID Lcid;
|
||||||
TCHAR Lang[1024];
|
TCHAR Lang[1024];
|
||||||
int Index;
|
INT Index;
|
||||||
|
|
||||||
Lcid = wcstoul(lpLanguage, NULL, 16);
|
Lcid = _tcstoul(lpLanguage, NULL, 16);
|
||||||
|
|
||||||
GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, Lang, sizeof(Lang));
|
GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, Lang, sizeof(Lang));
|
||||||
Index = (int) SendMessage(hLanguageList,
|
Index = (INT)SendMessage(hLanguageList,
|
||||||
CB_ADDSTRING,
|
CB_ADDSTRING,
|
||||||
0,
|
0,
|
||||||
(LPARAM)Lang);
|
(LPARAM)Lang);
|
||||||
|
@ -96,13 +96,14 @@ VOID
|
||||||
CreateLanguagesList(HWND hWnd)
|
CreateLanguagesList(HWND hWnd)
|
||||||
{
|
{
|
||||||
TCHAR LangSel[256];
|
TCHAR LangSel[256];
|
||||||
|
|
||||||
hLanguageList = hWnd;
|
hLanguageList = hWnd;
|
||||||
EnumSystemLocales(LanguagesEnumProc, LCID_INSTALLED);
|
EnumSystemLocales(LanguagesEnumProc, LCID_INSTALLED);
|
||||||
|
|
||||||
LoadString(hApplet,
|
LoadString(hApplet,
|
||||||
IDS_SELECTED_LANGUAGE,
|
IDS_SELECTED_LANGUAGE,
|
||||||
LangSel,
|
LangSel,
|
||||||
sizeof(LangSel) / sizeof(TCHAR));
|
256);
|
||||||
|
|
||||||
SendMessage(hLanguageList,
|
SendMessage(hLanguageList,
|
||||||
CB_SELECTSTRING,
|
CB_SELECTSTRING,
|
||||||
|
@ -119,7 +120,7 @@ SelectCurrentLayout(HWND hWnd)
|
||||||
LoadString(hApplet,
|
LoadString(hApplet,
|
||||||
IDS_SELECTED_LAYOUT,
|
IDS_SELECTED_LAYOUT,
|
||||||
Layout,
|
Layout,
|
||||||
sizeof(Layout) / sizeof(TCHAR));
|
256);
|
||||||
SendMessage(hWnd,
|
SendMessage(hWnd,
|
||||||
CB_SELECTSTRING,
|
CB_SELECTSTRING,
|
||||||
(WPARAM) -1,
|
(WPARAM) -1,
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
|
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
|
||||||
<module name="input" type="win32dll" extension=".dll" baseaddress="${BASEADDRESS_INPUT}" installbase="system32" installname="input.dll">
|
<module name="input" type="win32dll" extension=".dll" baseaddress="${BASEADDRESS_INPUT}" installbase="system32" installname="input.dll" unicode="yes">
|
||||||
<importlibrary definition="input.def" />
|
<importlibrary definition="input.def" />
|
||||||
<include base="input">.</include>
|
<include base="input">.</include>
|
||||||
<define name="UNICODE" />
|
|
||||||
<define name="_UNICODE" />
|
|
||||||
<define name="__USE_W32API" />
|
<define name="__USE_W32API" />
|
||||||
<define name="_WIN32_IE">0x600</define>
|
<define name="_WIN32_IE">0x600</define>
|
||||||
<define name="_WIN32_WINNT">0x501</define>
|
<define name="_WIN32_WINNT">0x501</define>
|
||||||
|
|
|
@ -21,6 +21,4 @@ IDI_MIC_ICO ICON "resources/microphone.ico"
|
||||||
IDI_KEY_SHORT_ICO ICON "resources/keyboard-shortcuts.ico"
|
IDI_KEY_SHORT_ICO ICON "resources/keyboard-shortcuts.ico"
|
||||||
IDI_INFO_ICO ICON "resources/information.ico"
|
IDI_INFO_ICO ICON "resources/information.ico"
|
||||||
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
|
||||||
|
|
||||||
#include "rsrc.rc"
|
#include "rsrc.rc"
|
||||||
|
|
|
@ -43,7 +43,7 @@ VOID
|
||||||
CreateKeyboardLayoutList(HWND hWnd)
|
CreateKeyboardLayoutList(HWND hWnd)
|
||||||
{
|
{
|
||||||
TCHAR Layout[256];
|
TCHAR Layout[256];
|
||||||
int Index;
|
INT Index;
|
||||||
UINT loIndex;
|
UINT loIndex;
|
||||||
|
|
||||||
for (loIndex = BEGIN_LAYOUT; loIndex <= END_LAYOUT; loIndex++)
|
for (loIndex = BEGIN_LAYOUT; loIndex <= END_LAYOUT; loIndex++)
|
||||||
|
@ -51,12 +51,12 @@ CreateKeyboardLayoutList(HWND hWnd)
|
||||||
LoadString(hApplet,
|
LoadString(hApplet,
|
||||||
loIndex,
|
loIndex,
|
||||||
Layout,
|
Layout,
|
||||||
sizeof(Layout) / sizeof(TCHAR));
|
256);
|
||||||
|
|
||||||
if (strlen((char*)Layout) > 0)
|
if (_tcslen(Layout) > 0)
|
||||||
{
|
{
|
||||||
Index = (int) SendMessage(hWnd,
|
Index = (int) SendMessage(hWnd,
|
||||||
CB_INSERTSTRING,
|
CB_ADDSTRING,
|
||||||
0,
|
0,
|
||||||
(LPARAM)Layout);
|
(LPARAM)Layout);
|
||||||
|
|
||||||
|
|
|
@ -46,10 +46,14 @@ BOOL
|
||||||
CreateDefaultLangList(HWND hWnd)
|
CreateDefaultLangList(HWND hWnd)
|
||||||
{
|
{
|
||||||
HKEY hKey;
|
HKEY hKey;
|
||||||
char szPreload[BUFSIZE],szCount[BUFSIZE],Lang[BUFSIZE];
|
TCHAR szPreload[BUFSIZE];
|
||||||
DWORD dwBufLen = BUFSIZE, dwBufCLen = BUFSIZE, cValues;
|
TCHAR szCount[BUFSIZE];
|
||||||
|
TCHAR Lang[BUFSIZE];
|
||||||
|
DWORD dwBufLen;
|
||||||
|
DWORD dwBufCLen;
|
||||||
|
DWORD cValues;
|
||||||
LONG lRet;
|
LONG lRet;
|
||||||
int Count;
|
INT Count;
|
||||||
LCID Lcid;
|
LCID Lcid;
|
||||||
|
|
||||||
if(RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Keyboard Layout\\Preload"), 0, KEY_QUERY_VALUE, &hKey) != ERROR_SUCCESS)
|
if(RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Keyboard Layout\\Preload"), 0, KEY_QUERY_VALUE, &hKey) != ERROR_SUCCESS)
|
||||||
|
@ -63,13 +67,17 @@ CreateDefaultLangList(HWND hWnd)
|
||||||
{
|
{
|
||||||
for (Count = 0; Count < cValues; Count++)
|
for (Count = 0; Count < cValues; Count++)
|
||||||
{
|
{
|
||||||
szCount[0] = '\0';
|
szCount[0] = TEXT('\0');
|
||||||
|
|
||||||
|
dwBufCLen = BUFSIZE;
|
||||||
lRet = RegEnumValue(hKey,Count,(LPTSTR)szCount,&dwBufCLen,NULL,NULL,NULL,NULL);
|
lRet = RegEnumValue(hKey,Count,(LPTSTR)szCount,&dwBufCLen,NULL,NULL,NULL,NULL);
|
||||||
|
|
||||||
sprintf(szCount,"%d",Count + 1);
|
_stprintf(szCount,TEXT("%d"),Count + 1);
|
||||||
|
|
||||||
|
dwBufLen = BUFSIZE;
|
||||||
RegQueryValueEx(hKey,(LPTSTR)szCount,NULL,NULL,(LPBYTE)szPreload,&dwBufLen);
|
RegQueryValueEx(hKey,(LPTSTR)szCount,NULL,NULL,(LPBYTE)szPreload,&dwBufLen);
|
||||||
|
|
||||||
Lcid = wcstoul((LPTSTR)szPreload, NULL, 16);
|
Lcid = _tcstoul(szPreload, NULL, 16);
|
||||||
GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, (LPTSTR)Lang, sizeof(Lang));
|
GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, (LPTSTR)Lang, sizeof(Lang));
|
||||||
|
|
||||||
SendMessage(hWnd,
|
SendMessage(hWnd,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue