iup-stack/iup/srclua5/ctrl/glcanvas.lua

52 lines
1.1 KiB
Lua
Raw Normal View History

2023-02-20 16:44:45 +00:00
------------------------------------------------------------------------------
-- GLCanvas class
------------------------------------------------------------------------------
local ctrl = {
nick = "glcanvas",
parent = iup.WIDGET,
creation = "-",
funcname = "GLCanvas",
include = "iupgl.h",
subdir = "ctrl",
callback = {
action = "ff", -- must repeat this callback because of its non-exclusive name
swapbuffers_cb = "",
},
extrafuncs = 1,
extracode = [[
int iupglbackgroundboxlua_open(lua_State * L);
int iupgllua_open(lua_State * L)
{
if (iuplua_opencall_internal(L))
IupGLCanvasOpen();
iuplua_get_env(L);
iupglcanvaslua_open(L);
iupglbackgroundboxlua_open(L);
return 0;
}
/* obligatory to use require"iupluagl" */
int luaopen_iupluagl(lua_State* L)
{
return iupgllua_open(L);
}
]]
}
-- Defined in C
ctrl.SwapBuffers = iup.GLSwapBuffers
ctrl.IsCurrent = iup.GLIsCurrent
ctrl.MakeCurrent = iup.GLMakeCurrent
ctrl.Palette = iup.GLPalette
ctrl.UseFont = iup.GLUseFont
function ctrl.createElement(class, param)
return iup.GLCanvas()
end
iup.RegisterWidget(ctrl)
iup.SetClass(ctrl, "iupWidget")