sig
type t
type window_style =
[ `close | `default_style | `fullscreen | `resize | `titlebar ]
type video_mode = { width : int; height : int; bitsPerPixel : int; }
type context_settings = {
depthBits : int;
stencilBits : int;
antialiasingLevel : int;
majorVersion : int;
minorVersion : int;
}
val mode :
width:int -> height:int -> ?bpp:int -> unit -> SFWindow.video_mode
val settings :
?depth:int ->
?stencil:int ->
?antialiasing:int ->
?version:int * int -> unit -> SFWindow.context_settings
external create :
mode:SFWindow.video_mode ->
title:string ->
style:SFWindow.window_style list ->
settings:SFWindow.context_settings -> SFWindow.t = "caml_sfWindow_create"
external createFromHandle :
handle:nativeint -> settings:SFWindow.context_settings -> SFWindow.t
= "caml_sfWindow_createFromHandle"
val make :
?style:SFWindow.window_style list ->
?bpp:int ->
?depth:int ->
?stencil:int ->
?antialiasing:int ->
?version:int * int -> int * int -> string -> SFWindow.t
external isOpen : SFWindow.t -> bool = "caml_sfWindow_isOpen"
external close : SFWindow.t -> unit = "caml_sfWindow_close"
external display : SFWindow.t -> unit = "caml_sfWindow_display"
external destroy : SFWindow.t -> unit = "caml_sfWindow_destroy"
external pollEvent : SFWindow.t -> SFEvent.t option
= "caml_sfWindow_pollEvent"
external waitEvent : SFWindow.t -> SFEvent.t = "caml_sfWindow_waitEvent"
external getSize : SFWindow.t -> int * int = "caml_sfWindow_getSize"
external getWidth : SFWindow.t -> int = "caml_sfWindow_getWidth"
external getHeight : SFWindow.t -> int = "caml_sfWindow_getHeight"
external setSize : SFWindow.t -> size:int * int -> unit
= "caml_sfWindow_setSize"
external setSize2 : SFWindow.t -> width:int -> height:int -> unit
= "caml_sfWindow_setSize2"
external setPosition : SFWindow.t -> pos:int * int -> unit
= "caml_sfWindow_setPosition"
external setPosition2 : SFWindow.t -> left:int -> top:int -> unit
= "caml_sfWindow_setPosition2"
external getPosition : SFWindow.t -> int * int
= "caml_sfWindow_getPosition"
external setTitle : SFWindow.t -> title:string -> unit
= "caml_sfWindow_setTitle"
external setActive : SFWindow.t -> active:bool -> bool
= "caml_sfWindow_setActive"
external setVisible : SFWindow.t -> visible:bool -> unit
= "caml_sfWindow_setVisible"
external setMouseCursorVisible : SFWindow.t -> visible:bool -> unit
= "caml_sfWindow_setMouseCursorVisible"
external setKeyRepeatEnabled : SFWindow.t -> enabled:bool -> unit
= "caml_sfWindow_setKeyRepeatEnabled"
external setJoystickThreshold : SFWindow.t -> threshold:float -> unit
= "caml_sfWindow_setJoystickThreshold"
external setFramerateLimit : SFWindow.t -> limit:int -> unit
= "caml_sfWindow_setFramerateLimit"
external setVerticalSyncEnabled : SFWindow.t -> enabled:bool -> unit
= "caml_sfWindow_setVerticalSyncEnabled"
external getMousePosition : relativeTo:SFWindow.t -> int * int
= "caml_sfWindow_getMousePosition"
external setMousePosition : relativeTo:SFWindow.t -> int * int -> unit
= "caml_sfWindow_setMousePosition"
end