A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/ghaberek/libui-euphoria below:

ghaberek/libui-euphoria: Euphoria bindings for libui (https://github.com/andlabs/libui)

libui bindings for Euphoria

This wrapper should be stable but keep in mind that libui is still in alpha status.

A keen observer might notice the seemingly unorthodox C wrapper code used in ui.e. What I've done here, is use a map to provide string lookups for function names instead of using constants. This is an experiment in providing a cleaner C library wrapper. The calls to define_c_func/proc look a lot more like attributes used in C# or VB.NET. I have not compared this method to using constants, so I'm not sure if or by how much this might be slower.

constant _uiNewWindow = define_c_func( libui, "uiNewWindow", {C_POINTER,C_INT,C_INT,C_INT}, C_POINTER )
public function uiNewWindow( sequence title, atom width, atom height, atom hasMenubar )
    return c_func( _uiNewWindow, {allocate_string(title,1),width,height,hasMenubar} )
end function
define_c_func( libui, "uiNewWindow", {C_POINTER,C_INT,C_INT,C_INT}, C_POINTER )
public function uiNewWindow( sequence title, atom width, atom height, atom hasMenubar )
    return c_func( "uiNewWindow", {allocate_string(title,1),width,height,hasMenubar} )
end function

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4