Available functions
MiniFB.mfb_close
MiniFB.mfb_get_key_buffer
MiniFB.mfb_get_key_name
MiniFB.mfb_get_mouse_button_buffer
MiniFB.mfb_get_mouse_scroll_x
MiniFB.mfb_get_mouse_scroll_y
MiniFB.mfb_get_mouse_x
MiniFB.mfb_get_mouse_y
MiniFB.mfb_get_user_data
MiniFB.mfb_get_window_height
MiniFB.mfb_get_window_width
MiniFB.mfb_is_window_active
MiniFB.mfb_open
MiniFB.mfb_open_ex
MiniFB.mfb_rgb
MiniFB.mfb_set_active_callback
MiniFB.mfb_set_char_input_callback
MiniFB.mfb_set_keyboard_callback
MiniFB.mfb_set_mouse_button_callback
MiniFB.mfb_set_mouse_move_callback
MiniFB.mfb_set_mouse_scroll_callback
MiniFB.mfb_set_resize_callback
MiniFB.mfb_set_target_fps
MiniFB.mfb_set_user_data
MiniFB.mfb_set_viewport
MiniFB.mfb_timer_create
MiniFB.mfb_timer_delta
MiniFB.mfb_timer_destroy
MiniFB.mfb_timer_get_frequency
MiniFB.mfb_timer_get_resolution
MiniFB.mfb_timer_now
MiniFB.mfb_timer_reset
MiniFB.mfb_update
MiniFB.mfb_update_events
MiniFB.mfb_wait_sync
MiniFB.mfb_open
— Functionmfb_open(title, width, height)
Create a window that is used to display the buffer sent into the mfb_update function, returns 0 if fails
MiniFB.mfb_open_ex
— Functionmfb_open_ex(title, width, height, flags)
Create a window, with flags
MiniFB.mfb_update
— Functionmfb_update(window, buffer)
Update the display. Input buffer is assumed to be a 32-bit buffer of the size given in the open call. Will return a negative status if something went wrong or the user want to exit. Also updates the window event
MiniFB.mfb_update_events
— Functionmfb_update(window)
Only updates the window events. Either mfb_update
or mfb_update_events
must be called in a loop to clear the event queue.
MiniFB.mfb_close
— Functionmfb_close(window)
Close the window
MiniFB.mfb_set_user_data
— Functionmfb_set_user_data(window , user_data::Ptr{Cvoid})
Set a per-window user data. Data is supplied as a pointer. The data at the end of that pointer should be prevented from garbage collection.
Example
x=Ref(2)
mfb_set_user_data(w, x)
See also: mfb_get_user_data
MiniFB.mfb_get_user_data
— Functionmfb_get_user_data(window)::Ptr{Cvoid}
Retrive the user data associated with this window. The return value is a void pointer that should be derferenced
Example
g=mfb_get_user_data(w)
unsafe_load(convert(Ptr{Int}, g)) # 2
See also: mfb_set_user_data
MiniFB.mfb_set_viewport
— Functionmfb_set_viewport(window, offset_x, offset_y, width, height)
Set viewport (useful when resize)
MiniFB.mfb_set_active_callback
— Functionmfb_set_active_callback(window, mfb_active_func callback)
MiniFB.mfb_set_resize_callback
— Functionmfb_set_resize_callback(window, mfb_resize_func callback)
MiniFB.mfb_set_keyboard_callback
— Functionmfb_set_keyboard_callback(window, mfb_keyboard_func callback)
MiniFB.mfb_set_char_input_callback
— Functionmfb_set_char_input_callback(window, mfb_char_input_func callback)
MiniFB.mfb_set_mouse_button_callback
— Functionmfb_set_mouse_button_callback(window, mfb_mouse_button_func callback)
MiniFB.mfb_set_mouse_move_callback
— Functionmfb_set_mouse_move_callback(window, mfb_mouse_move_func callback)
MiniFB.mfb_set_mouse_scroll_callback
— Functionmfb_set_mouse_scroll_callback(window, mfb_mouse_scroll_func callback)
MiniFB.mfb_get_key_name
— Functionmfb_get_key_name(mfb_key key)
MiniFB.mfb_is_window_active
— Functionmfb_is_window_active(window)
MiniFB.mfb_get_window_width
— Functionmfb_get_window_width(window)
MiniFB.mfb_get_window_height
— Functionmfb_get_window_height(window)
MiniFB.mfb_get_mouse_x
— Functionmfb_get_mouse_x(window)
Last mouse pos X
MiniFB.mfb_get_mouse_y
— Functionmfb_get_mouse_y(window)
Last mouse pos Y
MiniFB.mfb_get_mouse_scroll_x
— Functionmfb_get_mouse_scroll_x(window)
Mouse wheel X as a sum. When you call this function it resets.
MiniFB.mfb_get_mouse_scroll_y
— Functionmfb_get_mouse_scroll_y(window)
Mouse wheel Y as a sum. When you call this function it resets.
MiniFB.mfb_get_mouse_button_buffer
— Functionmfb_get_mouse_button_buffer(window)
One byte for every button. Press (1), Release 0. (up to 8 buttons)
MiniFB.mfb_get_key_buffer
— Functionmfb_get_key_buffer(window)
One byte for every key. Press (1), Release 0.
MiniFB.mfb_set_target_fps
— Functionmfb_set_target_fps(fps)
MiniFB.mfb_wait_sync
— Functionmfb_wait_sync(window)
MiniFB.mfb_timer_create
— Functionmfb_timer_create()
Create a timer. Returns an opaque pointer that should be stored, and passed to subsequent timer related calls.
MiniFB.mfb_timer_destroy
— Functionmfb_timer_destroy(tmr)
MiniFB.mfb_timer_reset
— Functionmfb_timer_reset(tmr)
MiniFB.mfb_timer_now
— Functionmfb_timer_now(tmr)
MiniFB.mfb_timer_delta
— Functionmfb_timer_delta(tmr)
MiniFB.mfb_timer_get_frequency
— Functionmfb_timer_get_frequency()
MiniFB.mfb_timer_get_resolution
— Functionmfb_timer_get_resolution()
MiniFB.mfb_rgb
— Functionmfb_rgb(r, g, b)::UInt32
convert 8 bit color channels to a single 32 bit buffer. Input should be integers 0-255
mfb_rgb(c::Colorant)::UInt32
convert a color object from Colors.jl into a 32 bit buffer.
Callback signatures
These are the callback signatures used by the C library when signalling events. The Julia function should be written accordingly, and wrapped with a @cfunction
before passing on to the library. See the Image Viewer example for more detail.
active
active(window::Ptr{Cvoid}, isActive::Uint8)
resize
resize(window::Ptr{Cvoid}, width::Cint, height::Cint)
keyboard
keyboard(window::Ptr{Cvoid}, key::mfb_key, mod::mfb_key_mod, isPressed::Uint8)
char_input
char_input(window::Ptr{Cvoid}, charCode:Cuint)
mouse_btn
mouse_btn(window::Ptr{Cvoid}, button::mfb_mouse_button, mod::mfb_key_mod, isPressed::Uint8)
mouse_move
mouse_move(window::Ptr{Cvoid}, x::Cint, y::Cint)
mouse_scroll
mouse_scroll(window::Ptr{Cvoid}, mod::mfb_key_mod, deltaX::Cfloat, deltaY::Cfloat)