Change usage of i32 to c_int where appropriate

This commit is contained in:
gingerBill
2026-01-02 10:02:23 +00:00
parent 747ecc6911
commit 111ed21e7e
8 changed files with 72 additions and 64 deletions

View File

@@ -228,7 +228,7 @@ foreign advapi32 {
}
PTOKEN_INFORMATION_CLASS :: ^TOKEN_INFORMATION_CLASS
TOKEN_INFORMATION_CLASS :: enum i32 {
TOKEN_INFORMATION_CLASS :: enum c_int {
TokenUser = 1,
TokenGroups,
TokenPrivileges,
@@ -282,7 +282,7 @@ TOKEN_INFORMATION_CLASS :: enum i32 {
}
PSID_NAME_USE :: ^SID_NAME_USE
SID_NAME_USE :: enum i32 {
SID_NAME_USE :: enum c_int {
SidTypeUser = 1,
SidTypeGroup,
SidTypeDomain,

View File

@@ -157,14 +157,14 @@ ILP_DOWNLEVEL :: 1
IMAGELISTDRAWPARAMS :: struct {
cbSize: DWORD,
himl: HIMAGELIST,
i: i32,
i: c_int,
hdcDst: HDC,
x: i32,
y: i32,
cx: i32,
cy: i32,
xBitmap: i32,
yBitmap: i32,
x: c_int,
y: c_int,
cx: c_int,
cy: c_int,
xBitmap: c_int,
yBitmap: c_int,
rgbBk: COLORREF,
rgbFg: COLORREF,
fStyle: UINT,
@@ -178,62 +178,62 @@ LPIMAGELISTDRAWPARAMS :: ^IMAGELISTDRAWPARAMS
IMAGEINFO :: struct {
hbmImage: HBITMAP,
hbmMask: HBITMAP,
Unused1: i32,
Unused2: i32,
Unused1: c_int,
Unused2: c_int,
rcImage: RECT,
}
LPIMAGEINFO :: ^IMAGEINFO
@(default_calling_convention="system")
foreign Comctl32 {
ImageList_Create :: proc(cx, cy: i32, flags: UINT, cInitial, cGrow: i32) -> HIMAGELIST ---
ImageList_Create :: proc(cx, cy: c_int, flags: UINT, cInitial, cGrow: c_int) -> HIMAGELIST ---
ImageList_Destroy :: proc(himl: HIMAGELIST) -> BOOL ---
ImageList_GetImageCount :: proc(himl: HIMAGELIST) -> i32 ---
ImageList_GetImageCount :: proc(himl: HIMAGELIST) -> c_int ---
ImageList_SetImageCount :: proc(himl: HIMAGELIST, uNewCount: UINT) -> BOOL ---
ImageList_Add :: proc(himl: HIMAGELIST, hbmImage, hbmMask: HBITMAP) -> i32 ---
ImageList_ReplaceIcon :: proc(himl: HIMAGELIST, i: i32, hicon: HICON) -> i32 ---
ImageList_Add :: proc(himl: HIMAGELIST, hbmImage, hbmMask: HBITMAP) -> c_int ---
ImageList_ReplaceIcon :: proc(himl: HIMAGELIST, i: c_int, hicon: HICON) -> c_int ---
ImageList_SetBkColor :: proc(himl: HIMAGELIST, clrBk: COLORREF) -> COLORREF ---
ImageList_GetBkColor :: proc(himl: HIMAGELIST) -> COLORREF ---
ImageList_SetOverlayImage :: proc(himl: HIMAGELIST, iImage: i32, iOverlay: i32) -> BOOL ---
ImageList_Draw :: proc(himl: HIMAGELIST, i: i32, hdcDst: HDC, x, y: i32, fStyle: UINT) -> BOOL ---
ImageList_Replace :: proc(himl: HIMAGELIST, i: i32, hbmImage, hbmMask: HBITMAP) -> BOOL ---
ImageList_AddMasked :: proc(himl: HIMAGELIST, hbmImage: HBITMAP, crMask: COLORREF) -> i32 ---
ImageList_DrawEx :: proc(himl: HIMAGELIST, i: i32, hdcDst: HDC, x, y, dx, dy: i32, rgbBk, rgbFg: COLORREF, fStyle: UINT) -> BOOL ---
ImageList_SetOverlayImage :: proc(himl: HIMAGELIST, iImage: c_int, iOverlay: c_int) -> BOOL ---
ImageList_Draw :: proc(himl: HIMAGELIST, i: c_int, hdcDst: HDC, x, y: c_int, fStyle: UINT) -> BOOL ---
ImageList_Replace :: proc(himl: HIMAGELIST, i: c_int, hbmImage, hbmMask: HBITMAP) -> BOOL ---
ImageList_AddMasked :: proc(himl: HIMAGELIST, hbmImage: HBITMAP, crMask: COLORREF) -> c_int ---
ImageList_DrawEx :: proc(himl: HIMAGELIST, i: c_int, hdcDst: HDC, x, y, dx, dy: c_int, rgbBk, rgbFg: COLORREF, fStyle: UINT) -> BOOL ---
ImageList_DrawIndirect :: proc(pimldp: ^IMAGELISTDRAWPARAMS) -> BOOL ---
ImageList_Remove :: proc(himl: HIMAGELIST, i: i32) -> BOOL ---
ImageList_GetIcon :: proc(himl: HIMAGELIST, i: i32, flags: UINT) -> HICON ---
ImageList_LoadImageW :: proc(hi: HINSTANCE, lpbmp: LPCWSTR, cx, cgrow: i32, crMask: COLORREF, uType, uFlags: UINT) -> HIMAGELIST ---
ImageList_Copy :: proc(himlDst: HIMAGELIST, iDst: i32, himlSrc: HIMAGELIST, iSrc: i32, uFlags: UINT) -> BOOL ---
ImageList_BeginDrag :: proc(himlTrack: HIMAGELIST, iTrack, dxHotspot, dyHotspot: i32) -> BOOL ---
ImageList_Remove :: proc(himl: HIMAGELIST, i: c_int) -> BOOL ---
ImageList_GetIcon :: proc(himl: HIMAGELIST, i: c_int, flags: UINT) -> HICON ---
ImageList_LoadImageW :: proc(hi: HINSTANCE, lpbmp: LPCWSTR, cx, cgrow: c_int, crMask: COLORREF, uType, uFlags: UINT) -> HIMAGELIST ---
ImageList_Copy :: proc(himlDst: HIMAGELIST, iDst: c_int, himlSrc: HIMAGELIST, iSrc: c_int, uFlags: UINT) -> BOOL ---
ImageList_BeginDrag :: proc(himlTrack: HIMAGELIST, iTrack, dxHotspot, dyHotspot: c_int) -> BOOL ---
ImageList_EndDrag :: proc() ---
ImageList_DragEnter :: proc(hwndLock: HWND, x, y: i32) -> BOOL ---
ImageList_DragEnter :: proc(hwndLock: HWND, x, y: c_int) -> BOOL ---
ImageList_DragLeave :: proc(hwndLock: HWND) -> BOOL ---
ImageList_DragMove :: proc(x, y: i32) -> BOOL ---
ImageList_SetDragCursorImage :: proc(himlDrag: HIMAGELIST, iDrag, dxHotspot, dyHotspot: i32) -> BOOL ---
ImageList_DragMove :: proc(x, y: c_int) -> BOOL ---
ImageList_SetDragCursorImage :: proc(himlDrag: HIMAGELIST, iDrag, dxHotspot, dyHotspot: c_int) -> BOOL ---
ImageList_DragShowNolock :: proc(fShow: BOOL) -> BOOL ---
ImageList_GetDragImage :: proc(ppt, pptHotspot: ^POINT) -> HIMAGELIST ---
ImageList_Read :: proc(pstm: ^IStream) -> HIMAGELIST ---
ImageList_Write :: proc(himl: HIMAGELIST, pstm: ^IStream) -> BOOL ---
ImageList_ReadEx :: proc(dwFlags: DWORD, pstm: ^IStream, riid: REFIID, ppv: PVOID) -> HRESULT ---
ImageList_WriteEx :: proc(himl: HIMAGELIST, dwFlags: DWORD, pstm: ^IStream) -> HRESULT ---
ImageList_GetIconSize :: proc(himl: HIMAGELIST, cx, cy: ^i32) -> BOOL ---
ImageList_SetIconSize :: proc(himl: HIMAGELIST, cx, cy: i32) -> BOOL ---
ImageList_GetImageInfo :: proc(himl: HIMAGELIST, i: i32, pImageInfo: ^IMAGEINFO) -> BOOL ---
ImageList_Merge :: proc(himl1: HIMAGELIST, i1: i32, himl2: HIMAGELIST, i2: i32, dx, dy: i32) -> HIMAGELIST ---
ImageList_GetIconSize :: proc(himl: HIMAGELIST, cx, cy: ^c_int) -> BOOL ---
ImageList_SetIconSize :: proc(himl: HIMAGELIST, cx, cy: c_int) -> BOOL ---
ImageList_GetImageInfo :: proc(himl: HIMAGELIST, i: c_int, pImageInfo: ^IMAGEINFO) -> BOOL ---
ImageList_Merge :: proc(himl1: HIMAGELIST, i1: c_int, himl2: HIMAGELIST, i2: c_int, dx, dy: c_int) -> HIMAGELIST ---
ImageList_Duplicate :: proc(himl: HIMAGELIST) -> HIMAGELIST ---
HIMAGELIST_QueryInterface :: proc(himl: HIMAGELIST, riid: REFIID, ppv: rawptr) -> HRESULT ---
}
ImageList_AddIcon :: #force_inline proc "system" (himl: HIMAGELIST, hicon: HICON) -> i32 {
ImageList_AddIcon :: #force_inline proc "system" (himl: HIMAGELIST, hicon: HICON) -> c_int {
return ImageList_ReplaceIcon(himl, -1, hicon)
}
ImageList_RemoveAll :: #force_inline proc "system" (himl: HIMAGELIST) -> BOOL {
return ImageList_Remove(himl, -1)
}
ImageList_ExtractIcon :: #force_inline proc "system" (hi: HINSTANCE, himl: HIMAGELIST, i: i32) -> HICON {
ImageList_ExtractIcon :: #force_inline proc "system" (hi: HINSTANCE, himl: HIMAGELIST, i: c_int) -> HICON {
return ImageList_GetIcon(himl, i, 0)
}
ImageList_LoadBitmap :: #force_inline proc "system" (hi: HINSTANCE, lpbmp: LPCWSTR, cx, cGrow: i32, crMask: COLORREF) -> HIMAGELIST {
ImageList_LoadBitmap :: #force_inline proc "system" (hi: HINSTANCE, lpbmp: LPCWSTR, cx, cGrow: c_int, crMask: COLORREF) -> HIMAGELIST {
return ImageList_LoadImageW(hi, lpbmp, cx, cGrow, crMask, IMAGE_BITMAP, 0)
}

View File

@@ -12,3 +12,6 @@ foreign icu {
ucal_getWindowsTimeZoneID :: proc(id: wstring, len: i32, winid: wstring, winidCapacity: i32, status: ^UError) -> i32 ---
ucal_getDefaultTimeZone :: proc(result: wstring, cap: i32, status: ^UError) -> i32 ---
}
// NOTE(bill): all of these types actually do use `i32` and not `c_int`

View File

@@ -141,7 +141,7 @@ IP_ADAPTER_DNS_SERVER_ADDRESS_XP :: struct {
Address: SOCKET_ADDRESS,
}
IF_OPER_STATUS :: enum i32 {
IF_OPER_STATUS :: enum c_int {
Up = 1,
Down = 2,
Testing = 3,
@@ -160,17 +160,17 @@ NET_LUID_LH :: struct #raw_union {
SOCKET_ADDRESS :: struct {
lpSockaddr: ^SOCKADDR,
iSockaddrLength: i32,
iSockaddrLength: INT,
}
NET_IF_CONNECTION_TYPE :: enum i32 {
NET_IF_CONNECTION_TYPE :: enum c_int {
NET_IF_CONNECTION_DEDICATED = 1,
NET_IF_CONNECTION_PASSIVE = 2,
NET_IF_CONNECTION_DEMAND = 3,
NET_IF_CONNECTION_MAXIMUM = 4,
}
TUNNEL_TYPE :: enum i32 {
TUNNEL_TYPE :: enum c_int {
TUNNEL_TYPE_NONE = 0,
TUNNEL_TYPE_OTHER = 1,
TUNNEL_TYPE_DIRECT = 2,
@@ -179,7 +179,7 @@ TUNNEL_TYPE :: enum i32 {
TUNNEL_TYPE_TEREDO = 14,
TUNNEL_TYPE_IPHTTPS = 15,
}
NL_PREFIX_ORIGIN :: enum i32 {
NL_PREFIX_ORIGIN :: enum c_int {
IpPrefixOriginOther = 0,
IpPrefixOriginManual = 1,
IpPrefixOriginWellKnown = 2,
@@ -188,7 +188,7 @@ NL_PREFIX_ORIGIN :: enum i32 {
IpPrefixOriginUnchanged = 16,
}
NL_SUFFIX_ORIGIN :: enum i32 {
NL_SUFFIX_ORIGIN :: enum c_int {
NlsoOther = 0,
NlsoManual = 1,
NlsoWellKnown = 2,
@@ -204,7 +204,7 @@ NL_SUFFIX_ORIGIN :: enum i32 {
IpSuffixOriginUnchanged = 16,
}
NL_DAD_STATE :: enum i32 {
NL_DAD_STATE :: enum c_int {
NldsInvalid = 0,
NldsTentative = 1,
NldsDuplicate = 2,

View File

@@ -274,7 +274,7 @@ PROTECTED_SACL_SECURITY_INFORMATION :: 0x40000000
UNPROTECTED_DACL_SECURITY_INFORMATION :: 0x20000000
UNPROTECTED_SACL_SECURITY_INFORMATION :: 0x10000000
GET_FILEEX_INFO_LEVELS :: distinct i32
GET_FILEEX_INFO_LEVELS :: distinct c_int
GetFileExInfoStandard: GET_FILEEX_INFO_LEVELS : 0
GetFileExMaxInfoLevel: GET_FILEEX_INFO_LEVELS : 1

View File

@@ -859,21 +859,21 @@ FKF_CLICKON :: 0x40
NONCLIENTMETRICSW :: struct {
cbSize: UINT,
iBorderWidth: i32,
iScrollWidth: i32,
iScrollHeight: i32,
iCaptionWidth: i32,
iCaptionHeight: i32,
iBorderWidth: c_int,
iScrollWidth: c_int,
iScrollHeight: c_int,
iCaptionWidth: c_int,
iCaptionHeight: c_int,
lfCaptionFont: LOGFONTW,
iSmCaptionWidth: i32,
iSmCaptionHeight: i32,
iSmCaptionWidth: c_int,
iSmCaptionHeight: c_int,
lfSmCaptionFont: LOGFONTW,
iMenuWidth: i32,
iMenuHeight: i32,
iMenuWidth: c_int,
iMenuHeight: c_int,
lfMenuFont: LOGFONTW,
lfStatusFont: LOGFONTW,
lfMessageFont: LOGFONTW,
iPaddedBorderWidth: i32,
iPaddedBorderWidth: c_int,
}
LPNONCLIENTMETRICSW :: ^NONCLIENTMETRICSW

View File

@@ -82,14 +82,14 @@ utf8_to_utf16_alloc :: proc(s: string, allocator := context.temp_allocator) -> [
b := transmute([]byte)s
cstr := raw_data(b)
n := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, cstr, i32(len(s)), nil, 0)
n := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, cstr, c_int(len(s)), nil, 0)
if n == 0 {
return nil
}
text := make([]u16, n+1, allocator)
n1 := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, cstr, i32(len(s)), raw_data(text), n)
n1 := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, cstr, c_int(len(s)), raw_data(text), n)
if n1 == 0 {
delete(text, allocator)
return nil
@@ -103,14 +103,14 @@ utf8_to_utf16_alloc :: proc(s: string, allocator := context.temp_allocator) -> [
}
utf8_to_utf16_buf :: proc(buf: []u16, s: string) -> []u16 {
n1 := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, raw_data(s), i32(len(s)), nil, 0)
n1 := MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, raw_data(s), c_int(len(s)), nil, 0)
if n1 == 0 {
return nil
} else if int(n1) > len(buf) {
return nil
}
n1 = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, raw_data(s), i32(len(s)), raw_data(buf[:]), n1)
n1 = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, raw_data(s), c_int(len(s)), raw_data(buf[:]), n1)
if n1 == 0 {
return nil
} else if int(n1) > len(buf) {
@@ -143,7 +143,7 @@ wstring_to_utf8_alloc :: proc(s: wstring, N: int, allocator := context.temp_allo
return
}
n := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, i32(N) if N > 0 else -1, nil, 0, nil, nil)
n := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, c_int(N) if N > 0 else -1, nil, 0, nil, nil)
if n == 0 {
return
}
@@ -155,7 +155,7 @@ wstring_to_utf8_alloc :: proc(s: wstring, N: int, allocator := context.temp_allo
// will not be null terminated.
text := make([]byte, n) or_return
n1 := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, i32(N), raw_data(text), n, nil, nil)
n1 := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, c_int(N), raw_data(text), n, nil, nil)
if n1 == 0 {
delete(text, allocator)
return
@@ -171,14 +171,14 @@ wstring_to_utf8_alloc :: proc(s: wstring, N: int, allocator := context.temp_allo
}
wstring_to_utf8_buf :: proc(buf: []u8, s: wstring, N := -1) -> (res: string) {
n := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, i32(N), nil, 0, nil, nil)
n := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, c_int(N), nil, 0, nil, nil)
if n == 0 {
return
} else if int(n) > len(buf) {
return
}
n2 := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, i32(N), raw_data(buf), n, nil, nil)
n2 := WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, s, c_int(N), raw_data(buf), n, nil, nil)
if n2 == 0 {
return
} else if int(n2) > len(buf) {

View File

@@ -3,11 +3,16 @@ package sys_windows
foreign import uxtheme "system:UxTheme.lib"
MARGINS :: distinct [4]i32
MARGINS :: struct {
cxLeftWidth: c_int,
cxRightWidth: c_int,
cyTopHeight: c_int,
cyBottomHeight: c_int,
}
PMARGINS :: ^MARGINS
@(default_calling_convention="system")
foreign uxtheme {
IsThemeActive :: proc() -> BOOL ---
SetWindowTheme :: proc(hWnd: HWND, pszSubAppName, pszSubIdList: LPCWSTR) -> HRESULT ---
IsThemeActive :: proc() -> BOOL ---
SetWindowTheme :: proc(hWnd: HWND, pszSubAppName, pszSubIdList: LPCWSTR) -> HRESULT ---
}