mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 08:15:41 +00:00
ported ConvertDefaultLocale() from wine
svn path=/trunk/; revision=6107
This commit is contained in:
parent
de2bded76d
commit
52c1dddf12
2 changed files with 74 additions and 13 deletions
|
@ -260,6 +260,35 @@ typedef unsigned int WPARAM;
|
|||
/*
|
||||
Enumerations
|
||||
*/
|
||||
|
||||
|
||||
#define GEOID_NOT_AVAILABLE (-1)
|
||||
/*
|
||||
GEO information types for clients to query
|
||||
*/
|
||||
|
||||
enum SYSGEOTYPE {
|
||||
GEO_NATION = 0x01,
|
||||
GEO_LATITUDE = 0x02,
|
||||
GEO_LONGITUDE = 0x03,
|
||||
GEO_ISO2 = 0x04,
|
||||
GEO_ISO3 = 0x05,
|
||||
GEO_RFC1766 = 0x06,
|
||||
GEO_LCID = 0x07,
|
||||
GEO_FRIENDLYNAME = 0x08,
|
||||
GEO_OFFICIALNAME = 0x09,
|
||||
GEO_TIMEZONES = 0x0A,
|
||||
GEO_OFFICIALLANGUAGES = 0x0B,
|
||||
};
|
||||
|
||||
/*
|
||||
More GEOCLASS defines will be listed here
|
||||
*/
|
||||
|
||||
enum SYSGEOCLASS {
|
||||
GEOCLASS_NATION = 16,
|
||||
GEOCLASS_REGION = 14,
|
||||
};
|
||||
|
||||
|
||||
#define RASCS_DONE 0x2000
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: lang.c,v 1.1 2003/09/20 23:37:56 weiden Exp $
|
||||
/* $Id: lang.c,v 1.2 2003/09/21 01:47:02 weiden Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT : ReactOS user mode libraries
|
||||
|
@ -12,10 +12,13 @@
|
|||
#define NDEBUG
|
||||
#include <kernel32/kernel32.h>
|
||||
|
||||
|
||||
static LCID SystemLocale = MAKELCID(LANG_ENGLISH, SORT_DEFAULT);
|
||||
|
||||
//#define _OLE2NLS_IN_BUILD_
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
* @implemented
|
||||
*/
|
||||
LCID
|
||||
STDCALL
|
||||
|
@ -23,8 +26,20 @@ ConvertDefaultLocale (
|
|||
LCID Locale
|
||||
)
|
||||
{
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return 0;
|
||||
switch(Locale)
|
||||
{
|
||||
case LOCALE_SYSTEM_DEFAULT:
|
||||
return GetSystemDefaultLCID();
|
||||
|
||||
case LOCALE_USER_DEFAULT:
|
||||
return GetUserDefaultLCID();
|
||||
|
||||
/*case LOCALE_NEUTRAL:
|
||||
return MAKELCID(LANG_NEUTRAL, SUBLANG_NEUTRAL);*/
|
||||
}
|
||||
|
||||
/* ported from wine, is that right? */
|
||||
return MAKELANGID(PRIMARYLANGID(Locale), SUBLANG_NEUTRAL);
|
||||
}
|
||||
|
||||
|
||||
|
@ -228,8 +243,30 @@ EnumSystemGeoID(
|
|||
GEOID ParentGeoId,
|
||||
GEO_ENUMPROC lpGeoEnumProc)
|
||||
{
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return 0;
|
||||
if(!lpGeoEnumProc)
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
switch(GeoClass)
|
||||
{
|
||||
case GEOCLASS_NATION:
|
||||
/*RtlEnterCriticalSection(&DllLock);
|
||||
|
||||
FIXME - Get GEO IDs calling Csr
|
||||
|
||||
RtlLeaveCriticalSection(&DllLock);*/
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
break;
|
||||
|
||||
default:
|
||||
SetLastError(ERROR_INVALID_FLAGS);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
@ -676,18 +713,13 @@ GetSystemDefaultLangID (VOID)
|
|||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
* @implemented
|
||||
*/
|
||||
LCID
|
||||
STDCALL
|
||||
GetSystemDefaultLCID (VOID)
|
||||
{
|
||||
/* FIXME: ??? */
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return MAKELCID(
|
||||
LANG_ENGLISH,
|
||||
SORT_DEFAULT
|
||||
);
|
||||
return SystemLocale;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue