aboutsummaryrefslogtreecommitdiff
path: root/core/sys/windows/winnls.odin
blob: 9c2c219ef35a51dbeb515b590b8912e0382407e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#+build windows
package sys_windows

LCTYPE :: distinct DWORD

LOCALE_NAME_MAX_LENGTH     :: 85
LOCALE_NAME_USER_DEFAULT   :: 0
LOCALE_NAME_INVARIANT      : wstring = ""
LOCALE_NAME_SYSTEM_DEFAULT : wstring = "!x-sys-default-locale"

// String Length Maximums.
// 5 ranges, 2 bytes ea., 0 term.
MAX_LEADBYTES   :: 12
// single or double byte
MAX_DEFAULTCHAR :: 2

CPINFOEXW :: struct{
	// Maximum length, in bytes, of a character in the code page.
	MaxCharSize:        UINT,
	// The default is usually the "?" character for the code page.
	DefaultChar:        [MAX_DEFAULTCHAR]BYTE,
	// A fixed-length array of lead byte ranges, for which the number of lead byte ranges is variable.
	LeadByte:           [MAX_LEADBYTES]BYTE,
	// The default is usually the "?" character or the katakana middle dot character.
	UnicodeDefaultChar: WCHAR,
	// Code page value. This value reflects the code page passed to the GetCPInfoEx function.
	CodePage:           CODEPAGE,
	// Full name of the code page.
	CodePageName:       [MAX_PATH]WCHAR,
}
LPCPINFOEXW :: ^CPINFOEXW