Changed COLORREF from int to DWORD (32 bit long), so that it works also on 64bit Windows
This commit is contained in:
parent
fa961f16d0
commit
a2692f984d
1 changed files with 5 additions and 5 deletions
|
|
@ -137,7 +137,7 @@ type # WinDef.h -- Basic Windows Type Definitions
|
|||
|
||||
HFILE* = HANDLE
|
||||
HCURSOR* = HANDLE # = HICON
|
||||
COLORREF* = int
|
||||
COLORREF* = DWORD
|
||||
LPCOLORREF* = ptr COLORREF
|
||||
|
||||
POINT* {.final, pure.} = object
|
||||
|
|
@ -238,7 +238,7 @@ type
|
|||
CALTYPE* = int
|
||||
CALID* = int
|
||||
CCHAR* = char
|
||||
TCOLORREF* = int
|
||||
TCOLORREF* = COLORREF
|
||||
WINT* = int32
|
||||
PINTEGER* = ptr int32
|
||||
PBOOL* = ptr WINBOOL
|
||||
|
|
@ -22758,12 +22758,12 @@ proc LocalDiscard*(hlocMem: HLOCAL): HLOCAL =
|
|||
|
||||
# WinGDI.h
|
||||
|
||||
proc GetGValue*(rgb: int32): int8 =
|
||||
result = toU8(rgb shr 8'i32)
|
||||
discard """proc GetGValue*(rgb: int32): int8 =
|
||||
result = toU8(rgb shr 8'i32)"""
|
||||
proc RGB*(r, g, b: int): COLORREF =
|
||||
result = toU32(r) or (toU32(g) shl 8) or (toU32(b) shl 16)
|
||||
proc RGB*(r, g, b: range[0 .. 255]): COLORREF =
|
||||
result = r or g shl 8 or b shl 16
|
||||
result = toU32(r) or (toU32(g) shl 8) or (toU32(b) shl 16)
|
||||
|
||||
proc PALETTERGB*(r, g, b: range[0..255]): COLORREF =
|
||||
result = 0x02000000 or RGB(r, g, b)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue