You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While fiddling with another issue I stumbled over SDLVideo.mod ...
In there flags are defined as "ULong" and functions do all these shl 32 required to make it "Uint32" again.
common.bmx:
Rem
bbdoc: fullscreen window
End Rem
Const SDL_WINDOW_FULLSCREEN:UInt = $00000001:ULong Shl 32
Rem
bbdoc: window usable with OpenGL context
End Rem
Const SDL_WINDOW_OPENGL:ULong = $00000002:ULong Shl 32
...
sdlvideo.bmx:
Function Create:TSDLWindow(title:String, x:Int, y:Int, w:Int, h:Int, flags:ULong)
Return _create(bmx_sdl_video_CreateWindow(title, x, y, w, h, UInt(flags Shr 32)))
End Function
As NG supports "UInt" (which is 32bit - so Uint32 in C ?) shouldn't we be able to get rid of all these conversions and directly use the same UInt-values as the SDL lib does.
Is there a specific reason to use ULong? Is it to transport some other flag in the variable too?
And when changing it, one could consider adding:
'for now sdl.mod/sdlvideo.mod does not expose it...
Extern
Function SDL_GetWindowFlags:UInt(handle:Byte Ptr)
End Extern
too ... as this would allow to retrieve the current "fullscreen state" (and other things) - instead of having to store it in an machine state system.
The text was updated successfully, but these errors were encountered:
Hey,
While fiddling with another issue I stumbled over SDLVideo.mod ...
In there flags are defined as "ULong" and functions do all these
shl 32
required to make it "Uint32" again.common.bmx:
sdlvideo.bmx:
As NG supports "UInt" (which is 32bit - so Uint32 in C ?) shouldn't we be able to get rid of all these conversions and directly use the same UInt-values as the SDL lib does.
Is there a specific reason to use ULong? Is it to transport some other flag in the variable too?
And when changing it, one could consider adding:
too ... as this would allow to retrieve the current "fullscreen state" (and other things) - instead of having to store it in an machine state system.
The text was updated successfully, but these errors were encountered: