diff options
Diffstat (limited to 'contrib/luacurses/src/luacurses.c')
-rw-r--r-- | contrib/luacurses/src/luacurses.c | 137 |
1 files changed, 0 insertions, 137 deletions
diff --git a/contrib/luacurses/src/luacurses.c b/contrib/luacurses/src/luacurses.c deleted file mode 100644 index 0cbd2fe6a..000000000 --- a/contrib/luacurses/src/luacurses.c +++ /dev/null @@ -1,137 +0,0 @@ - -#include <stdlib.h> - -#include <lua.h> -#include <lualib.h> -#include <lauxlib.h> - -#include <curses.h> -#include "luacurses.h" - -SCREEN* luacurses_toscreen(lua_State* L, int index) -{ - SCREEN** pscreen = (SCREEN**) luaL_checkudata(L, index, MKLUALIB_META_CURSES_SCREEN); - if (!pscreen) luaL_argerror(L, index, "bad screen"); - if (!*pscreen) luaL_error(L, "attempt to use invalid screen"); - return *pscreen; -} - -SCREEN** luacurses_newscreen(lua_State* L) -{ - SCREEN** pscreen = (SCREEN**) lua_newuserdata(L, sizeof(SCREEN*)); - *pscreen = 0; - luaL_getmetatable(L, MKLUALIB_META_CURSES_SCREEN); - lua_setmetatable(L, -2); - return pscreen; -} - -void luacurses_regscreen(lua_State* L, const char* name, SCREEN* userdata) -{ - lua_pushstring(L, name); - SCREEN** pscreen = luacurses_newscreen(L); - *pscreen = userdata; - lua_settable(L, -3); -} - -WINDOW* luacurses_towindow(lua_State* L, int index) -{ - WINDOW** pwindow = (WINDOW**) luaL_checkudata(L, index, MKLUALIB_META_CURSES_WINDOW); - if (!pwindow) luaL_argerror(L, index, "bad window"); - if (!*pwindow) luaL_error(L, "attempt to use invalid window"); - return *pwindow; -} - -WINDOW** luacurses_newwindow(lua_State* L) -{ - WINDOW** pwindow = (WINDOW**) lua_newuserdata(L, sizeof(WINDOW*)); - *pwindow = 0; - luaL_getmetatable(L, MKLUALIB_META_CURSES_WINDOW); - lua_setmetatable(L, -2); - return pwindow; -} - -void luacurses_regwindow(lua_State* L, const char* name, WINDOW* userdata) -{ - lua_pushstring(L, name); - WINDOW** pwindow = luacurses_newwindow(L); - *pwindow = userdata; - lua_settable(L, -3); -} - -FILE* tofile(lua_State* L, int index) -{ - FILE** pf = (FILE**) luaL_checkudata(L, index, MKLUALIB_META_CURSES_FILE); - if (!pf) luaL_argerror(L, index, "bad file"); - if (!*pf) luaL_error(L, "attempt to use invalid file"); - return *pf; -} - -FILE** newfile(lua_State* L) -{ - FILE** pf = (FILE**) lua_newuserdata(L, sizeof(FILE*)); - *pf = 0; - luaL_getmetatable(L, MKLUALIB_META_CURSES_FILE); - lua_setmetatable(L, -2); - return pf; -} - -void luacurses_regfile(lua_State* L, const char* name, FILE* f) -{ - lua_pushstring(L, name); - FILE** pf = newfile(L); - *pf = f; - lua_settable(L, -3); -} - -char* luacurses_wgetnstr(WINDOW* w, int n) -{ - char* s = (char*) malloc(n + 1); - wgetnstr(w, s, n); - return s; -} - -char* luacurses_window_tostring(WINDOW* w) -{ - char* buf = (char*) malloc(64); - sprintf(buf, "window %p", w); - return buf; -} - -char* luacurses_screen_tostring(SCREEN* s) -{ - char* buf = (char*) malloc(64); - sprintf(buf, "screen %p", s); - return buf; -} - -bool luacurses_getmouse(short* id, int* x, int* y, int* z, mmask_t* bstate) -{ - MEVENT e; - int res = getmouse(&e); - - *id = e.id; - *x = e.x; - *y = e.y; - *z = e.z; - *bstate = e.bstate; - return (res == OK); -} - -bool luacurses_ungetmouse (short id, int x, int y, int z, mmask_t bstate) -{ - MEVENT e; - e.id = id; - e.x = x; - e.y = y; - e.z = z; - e.bstate = bstate; - return (ungetmouse(&e) == OK); -} - -mmask_t luacurses_addmousemask(mmask_t m) -{ - mmask_t old; - mousemask(m, &old); - return mousemask(old | m, 0); -} - |