diff options
Diffstat (limited to 'src/lua')
-rw-r--r-- | src/lua/embed/scripts/boot.lua.h | 8 | ||||
-rw-r--r-- | src/lua/modules/audio/je_lua_audio.cpp | 6 | ||||
-rw-r--r-- | src/lua/modules/audio/je_lua_source.cpp | 16 | ||||
-rw-r--r-- | src/lua/modules/bit/je_lua_bit.cpp | 1 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_canvas.cpp | 10 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_graphics.cpp | 256 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_page.cpp | 2 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_text.cpp | 28 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_texture.cpp | 8 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_texture_font.cpp | 80 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_ttf.cpp | 34 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_ttf_data.cpp | 6 | ||||
-rw-r--r-- | src/lua/modules/net/je_lua_buffer.cpp | 18 | ||||
-rw-r--r-- | src/lua/modules/net/je_lua_net.cpp | 2 | ||||
-rw-r--r-- | src/lua/modules/net/je_lua_socket.cpp | 22 | ||||
-rw-r--r-- | src/lua/modules/thread/je_lua_thread.cpp | 30 | ||||
-rw-r--r-- | src/lua/modules/thread/je_lua_thread.h | 10 |
17 files changed, 268 insertions, 269 deletions
diff --git a/src/lua/embed/scripts/boot.lua.h b/src/lua/embed/scripts/boot.lua.h index a42f7d4..4b97b69 100644 --- a/src/lua/embed/scripts/boot.lua.h +++ b/src/lua/embed/scripts/boot.lua.h @@ -18,7 +18,7 @@ jin.config.vsync = jin.config.vsync or true jin.config.title = jin.config.title or ("jin v" .. jin.version) jin.config.resizable = jin.config.resizable or false jin.config.fullscreen = jin.config.fullscreen or false -jin.config.fps = jin.config.fps or 60 +jin.config.fps = jin.config.fps or 60 jin.config.icon = jin.config.icon or "" ------------------------------------------------------------------------- @@ -49,9 +49,9 @@ function jin.core.run() end step() dt = jin.time.getDelta() - call(jin.core.onUpdate, dt) - jin.graphics.clear() - call(jin.core.onDraw) + call(jin.core.onUpdate, dt) + jin.graphics.clear() + call(jin.core.onDraw) jin.graphics.present() jin.time.sleep(0.001) end diff --git a/src/lua/modules/audio/je_lua_audio.cpp b/src/lua/modules/audio/je_lua_audio.cpp index 7bfc206..f5ef31f 100644 --- a/src/lua/modules/audio/je_lua_audio.cpp +++ b/src/lua/modules/audio/je_lua_audio.cpp @@ -12,8 +12,8 @@ namespace JinEngine namespace Lua { - typedef SDLAudio Audio; - typedef SDLSource Source; + typedef SDLAudio Audio; + typedef SDLSource Source; struct { @@ -28,7 +28,7 @@ namespace JinEngine luax_pushboolean(L, true); return 1; } - Audio::Setting setting; + Audio::Setting setting; setting.samplerate = 44100; setting.samples = 44100; Audio* audio = Audio::get(); diff --git a/src/lua/modules/audio/je_lua_source.cpp b/src/lua/modules/audio/je_lua_source.cpp index 7bb28d9..8c9e247 100644 --- a/src/lua/modules/audio/je_lua_source.cpp +++ b/src/lua/modules/audio/je_lua_source.cpp @@ -48,14 +48,14 @@ namespace JinEngine LUA_IMPLEMENT int l_resume(lua_State* L) { - Source* source = checkSource(L); - source->resume(); + Source* source = checkSource(L); + source->resume(); return 0; } LUA_IMPLEMENT int l_isStop(lua_State* L) { - Source* source = checkSource(L); + Source* source = checkSource(L); bool isStop = source->isStopped(); luax_pushboolean(L, isStop); return 1; @@ -63,7 +63,7 @@ namespace JinEngine LUA_IMPLEMENT int l_isPaused(lua_State* L) { - Source* source = checkSource(L); + Source* source = checkSource(L); bool isPaused = source->isPaused(); luax_pushboolean(L, isPaused); return 1; @@ -71,17 +71,17 @@ namespace JinEngine LUA_IMPLEMENT int l_setVolume(lua_State* L) { - Source* source = checkSource(L); + Source* source = checkSource(L); float volume = luax_checknumber(L, 2); - source->setVolume(volume); + source->setVolume(volume); return 0; } LUA_IMPLEMENT int l_setLoop(lua_State* L) { - Source* source = checkSource(L); + Source* source = checkSource(L); bool loop = luax_checkbool(L, 2); - source->setLoop(loop); + source->setLoop(loop); return 0; } diff --git a/src/lua/modules/bit/je_lua_bit.cpp b/src/lua/modules/bit/je_lua_bit.cpp index 6d5a8fd..9484743 100644 --- a/src/lua/modules/bit/je_lua_bit.cpp +++ b/src/lua/modules/bit/je_lua_bit.cpp @@ -63,7 +63,6 @@ namespace JinEngine luax_pushboolean(L, (a & b) == b); return 1; } - LUA_EXPORT int luaopen_bit(lua_State* L) { diff --git a/src/lua/modules/graphics/je_lua_canvas.cpp b/src/lua/modules/graphics/je_lua_canvas.cpp index 0e884f8..97b3c96 100644 --- a/src/lua/modules/graphics/je_lua_canvas.cpp +++ b/src/lua/modules/graphics/je_lua_canvas.cpp @@ -15,26 +15,26 @@ namespace JinEngine LUA_IMPLEMENT inline Canvas* checkCanvas(lua_State* L) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Canvas); - return luaObj->getObject<Canvas>(); - } + return luaObj->getObject<Canvas>(); + } LUA_IMPLEMENT int l_getWidth(lua_State* L) { - Canvas* canvas = checkCanvas(L); + Canvas* canvas = checkCanvas(L); luax_pushnumber(L, canvas->getWidth()); return 1; } LUA_IMPLEMENT int l_getHeight(lua_State* L) { - Canvas* canvas = checkCanvas(L); + Canvas* canvas = checkCanvas(L); luax_pushnumber(L, canvas->getHeight()); return 1; } LUA_IMPLEMENT int l_getSize(lua_State* L) { - Canvas* canvas = checkCanvas(L); + Canvas* canvas = checkCanvas(L); luax_pushnumber(L, canvas->getWidth()); luax_pushnumber(L, canvas->getHeight()); return 2; diff --git a/src/lua/modules/graphics/je_lua_graphics.cpp b/src/lua/modules/graphics/je_lua_graphics.cpp index 2eeb1d6..fba77d7 100644 --- a/src/lua/modules/graphics/je_lua_graphics.cpp +++ b/src/lua/modules/graphics/je_lua_graphics.cpp @@ -41,7 +41,7 @@ namespace JinEngine static struct { Color curRenderColor; - Color curClearColor; + Color curClearColor; Font* defaultFont = nullptr; bool initialized = false; } context; @@ -283,25 +283,25 @@ namespace JinEngine return 0; } - LUA_IMPLEMENT int l_setClearColor(lua_State* L) - { - if (luax_gettop(L) == 0) - { - glClearColor(0, 0, 0, 1); - return 0; - } + LUA_IMPLEMENT int l_setClearColor(lua_State* L) + { + if (luax_gettop(L) == 0) + { + glClearColor(0, 0, 0, 1); + return 0; + } - context.curClearColor.r = luax_checknumber(L, 1); - context.curClearColor.g = luax_checknumber(L, 2); - context.curClearColor.b = luax_checknumber(L, 3); - context.curClearColor.a = luax_checknumber(L, 4); + context.curClearColor.r = luax_checknumber(L, 1); + context.curClearColor.g = luax_checknumber(L, 2); + context.curClearColor.b = luax_checknumber(L, 3); + context.curClearColor.a = luax_checknumber(L, 4); gl.setClearColor(context.curClearColor.r, - context.curClearColor.g, - context.curClearColor.b, - context.curClearColor.a); - return 0; - } + context.curClearColor.g, + context.curClearColor.b, + context.curClearColor.a); + return 0; + } LUA_IMPLEMENT int l_present(lua_State* L) { @@ -309,80 +309,80 @@ namespace JinEngine return 0; } - LUA_IMPLEMENT void l_draw_texture(lua_State* L) - { - if (!luax_istype(L, 1, Jin_Lua_Texture)) - return; - int x = luax_optnumber(L, 2, 0); - int y = luax_optnumber(L, 3, 0); - float sx = luax_optnumber(L, 4, 1); - float sy = luax_optnumber(L, 5, 1); - float r = luax_optnumber(L, 6, 0); + LUA_IMPLEMENT void l_draw_texture(lua_State* L) + { + if (!luax_istype(L, 1, Jin_Lua_Texture)) + return; + int x = luax_optnumber(L, 2, 0); + int y = luax_optnumber(L, 3, 0); + float sx = luax_optnumber(L, 4, 1); + float sy = luax_optnumber(L, 5, 1); + float r = luax_optnumber(L, 6, 0); float ox = luax_optnumber(L, 7, 0); float oy = luax_optnumber(L, 8, 0); - LuaObject* luaObj = (LuaObject*)luax_toudata(L, 1); - Texture* tex = luaObj->getObject<Texture>(); - tex->render(x, y, sx, sy, r, ox, oy); - } - - LUA_IMPLEMENT void l_draw_canvas(lua_State* L) - { - if (!luax_istype(L, 1, Jin_Lua_Canvas)) - return; - int x = luax_optnumber(L, 2, 0); - int y = luax_optnumber(L, 3, 0); - float sx = luax_optnumber(L, 4, 1); - float sy = luax_optnumber(L, 5, 1); - float r = luax_optnumber(L, 6, 0); + LuaObject* luaObj = (LuaObject*)luax_toudata(L, 1); + Texture* tex = luaObj->getObject<Texture>(); + tex->render(x, y, sx, sy, r, ox, oy); + } + + LUA_IMPLEMENT void l_draw_canvas(lua_State* L) + { + if (!luax_istype(L, 1, Jin_Lua_Canvas)) + return; + int x = luax_optnumber(L, 2, 0); + int y = luax_optnumber(L, 3, 0); + float sx = luax_optnumber(L, 4, 1); + float sy = luax_optnumber(L, 5, 1); + float r = luax_optnumber(L, 6, 0); float ox = luax_optnumber(L, 7, 0); float oy = luax_optnumber(L, 8, 0); - LuaObject* luaObj = (LuaObject*)luax_toudata(L, 1); - Canvas* canvas = luaObj->getObject<Canvas>(); + LuaObject* luaObj = (LuaObject*)luax_toudata(L, 1); + Canvas* canvas = luaObj->getObject<Canvas>(); canvas->render(x, y, sx, sy, r, ox, oy); - } - - /* jin.graphics.draw(text, font, x, y) */ - LUA_IMPLEMENT void l_draw_text(lua_State* L) - { - if (!luax_istype(L, 1, Jin_Lua_Text)) - return; - LuaObject* p = (LuaObject*)luax_toudata(L, 1); - Text* text = p->getObject<Text>(); - int x = luax_optnumber(L, 3, 0); - int y = luax_optnumber(L, 4, 0); - int spacing = luax_optnumber(L, 6, 0); + } + + /* jin.graphics.draw(text, font, x, y) */ + LUA_IMPLEMENT void l_draw_text(lua_State* L) + { + if (!luax_istype(L, 1, Jin_Lua_Text)) + return; + LuaObject* p = (LuaObject*)luax_toudata(L, 1); + Text* text = p->getObject<Text>(); + int x = luax_optnumber(L, 3, 0); + int y = luax_optnumber(L, 4, 0); + int spacing = luax_optnumber(L, 6, 0); Font* font = nullptr; LuaObject* p2 = (LuaObject*)luax_toudata(L, 2); - if (luax_istype(L, 2, Jin_Lua_TextureFont)) - { - TextureFont* tf = p2->getObject<TextureFont>(); + if (luax_istype(L, 2, Jin_Lua_TextureFont)) + { + TextureFont* tf = p2->getObject<TextureFont>(); font = tf; - } - else if (luax_istype(L, 2, Jin_Lua_TTF)) - { - TTF* ttf = p2->getObject<TTF>(); + } + else if (luax_istype(L, 2, Jin_Lua_TTF)) + { + TTF* ttf = p2->getObject<TTF>(); font = ttf; - } + } else { font = context.defaultFont; } int lineheight = luax_optnumber(L, 5, font->getFontSize()); font->render(*text, x, y, lineheight, spacing); - } - - /* jin.graphics.draw(page, x, y) */ - LUA_IMPLEMENT void l_draw_page(lua_State* L) - { - if (!luax_istype(L, 1, Jin_Lua_Page)) - return; - int x = luax_optnumber(L, 2, 0); - int y = luax_optnumber(L, 3, 0); - LuaObject* p = (LuaObject*)luax_toudata(L, 1); - Page* page = p->getObject<Page>(); - Font* font = page->font; - font->render(page, x, y); - } + } + + /* jin.graphics.draw(page, x, y) */ + LUA_IMPLEMENT void l_draw_page(lua_State* L) + { + if (!luax_istype(L, 1, Jin_Lua_Page)) + return; + int x = luax_optnumber(L, 2, 0); + int y = luax_optnumber(L, 3, 0); + LuaObject* p = (LuaObject*)luax_toudata(L, 1); + Page* page = p->getObject<Page>(); + Font* font = page->font; + font->render(page, x, y); + } LUA_IMPLEMENT void l_draw_sprite(lua_State* L) { @@ -513,7 +513,7 @@ namespace JinEngine return 0; } LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Canvas); - Canvas* canvas = luaObj->getObject<Canvas>(); + Canvas* canvas = luaObj->getObject<Canvas>(); gl.bindCanvas(canvas); return 0; } @@ -688,28 +688,28 @@ namespace JinEngine return 1; } - /* newText(str[, encode]) */ - LUA_IMPLEMENT int l_newText(lua_State* L) - { - Encode encode = Encode::UTF8; - if (luax_gettop(L) == 2) - { - const char* e = luax_checkstring(L, 2); - if (strcmp(e, "UTF8") == 0) encode = Encode::UTF8; - //else if (strcmp(e, "UTF16") == 0) encode = Encode::UTF16; - else if (strcmp(e, "ASCII") == 0) encode = Encode::ASCII; - else - { - luax_error(L, "wrong text encode %s", e); - return 0; - } - } - unsigned length; - const char* data = luax_checklstring(L, 1, &length); - Text* text = new Text(encode, data, length); - LuaObject* luaObj = luax_newinstance(L, Jin_Lua_Text, new Shared(text)); - return 1; - } + /* newText(str[, encode]) */ + LUA_IMPLEMENT int l_newText(lua_State* L) + { + Encode encode = Encode::UTF8; + if (luax_gettop(L) == 2) + { + const char* e = luax_checkstring(L, 2); + if (strcmp(e, "UTF8") == 0) encode = Encode::UTF8; + //else if (strcmp(e, "UTF16") == 0) encode = Encode::UTF16; + else if (strcmp(e, "ASCII") == 0) encode = Encode::ASCII; + else + { + luax_error(L, "wrong text encode %s", e); + return 0; + } + } + unsigned length; + const char* data = luax_checklstring(L, 1, &length); + Text* text = new Text(encode, data, length); + LuaObject* luaObj = luax_newinstance(L, Jin_Lua_Text, new Shared(text)); + return 1; + } // newSprite(Texture tex, Quad quad, Origin origin) // newSprite(Texture tex, Quad quad, Number ox, Number oy) @@ -843,11 +843,11 @@ namespace JinEngine return 1; } - /* newTextureFont(bitmap, text, color | cellw, cellh) */ + /* newTextureFont(bitmap, text, color | cellw, cellh) */ LUA_IMPLEMENT int l_newTextureFont(lua_State* L) - { - LuaObject* p = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Bitmap); - Bitmap* bitmap = p->getObject<Bitmap>(); + { + LuaObject* p = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Bitmap); + Bitmap* bitmap = p->getObject<Bitmap>(); Text* text; if (luax_istype(L, 2, Jin_Lua_Text)) { @@ -865,21 +865,21 @@ namespace JinEngine luax_typerror(L, 2, "Text or string"); return 1; } - float cellh = luax_checknumber(L, 4); - TextureFont* textureFont = nullptr; - if (luax_istable(L, 3)) - { - unsigned int r = luax_rawgetnumber(L, 3, 1); - unsigned int g = luax_rawgetnumber(L, 3, 2); - unsigned int b = luax_rawgetnumber(L, 3, 3); - unsigned int a = luax_rawgetnumber(L, 3, 4); - textureFont = new TextureFont(bitmap, *text, Color(r, g, b, a), cellh); - } - else if (luax_isnumber(L, 3)) - { - float cellw = luax_checknumber(L, 3); - textureFont = new TextureFont(bitmap, *text, cellw, cellh); - } + float cellh = luax_checknumber(L, 4); + TextureFont* textureFont = nullptr; + if (luax_istable(L, 3)) + { + unsigned int r = luax_rawgetnumber(L, 3, 1); + unsigned int g = luax_rawgetnumber(L, 3, 2); + unsigned int b = luax_rawgetnumber(L, 3, 3); + unsigned int a = luax_rawgetnumber(L, 3, 4); + textureFont = new TextureFont(bitmap, *text, Color(r, g, b, a), cellh); + } + else if (luax_isnumber(L, 3)) + { + float cellw = luax_checknumber(L, 3); + textureFont = new TextureFont(bitmap, *text, cellw, cellh); + } else { luax_error(L, "bad arguments #3 to 'newTextureFont', need to be table or number"); @@ -890,9 +890,9 @@ namespace JinEngine // Delete temporary text. delete text; } - LuaObject* luaObj = luax_newinstance(L, Jin_Lua_TextureFont, new Shared(textureFont)); - return 1; - } + LuaObject* luaObj = luax_newinstance(L, Jin_Lua_TextureFont, new Shared(textureFont)); + return 1; + } LUA_IMPLEMENT int l_newParticleSystem(lua_State* L) { @@ -901,8 +901,8 @@ namespace JinEngine } /* setFont(font) */ - LUA_IMPLEMENT int l_setFont(lua_State* L) - { + LUA_IMPLEMENT int l_setFont(lua_State* L) + { if (luax_istype(L, 1, Jin_Lua_TTF)) { LuaObject* p = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TTF); @@ -915,8 +915,8 @@ namespace JinEngine TextureFont* tf = p->getObject<TextureFont>(); gl.setFont(tf); } - return 0; - } + return 0; + } LUA_IMPLEMENT int l_unsetFont(lua_State* L) { @@ -971,9 +971,9 @@ namespace JinEngine luaopen_Texture(L); luaopen_Canvas(L); luaopen_TTFData(L); - luaopen_TTF(L); - luaopen_Text(L); - luaopen_TextureFont(L); + luaopen_TTF(L); + luaopen_Text(L); + luaopen_TextureFont(L); luaopen_Page(L); luaopen_Shader(L); luaopen_Sprite(L); diff --git a/src/lua/modules/graphics/je_lua_page.cpp b/src/lua/modules/graphics/je_lua_page.cpp index 6407256..5a312e2 100644 --- a/src/lua/modules/graphics/je_lua_page.cpp +++ b/src/lua/modules/graphics/je_lua_page.cpp @@ -24,7 +24,7 @@ namespace JinEngine LUA_IMPLEMENT int l_gc(lua_State* L) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Page); - luaObj->release(); + luaObj->release(); return 0; } diff --git a/src/lua/modules/graphics/je_lua_text.cpp b/src/lua/modules/graphics/je_lua_text.cpp index eb23879..0afbceb 100644 --- a/src/lua/modules/graphics/je_lua_text.cpp +++ b/src/lua/modules/graphics/je_lua_text.cpp @@ -11,21 +11,21 @@ namespace JinEngine const char* Jin_Lua_Text = "Text"; - LUA_IMPLEMENT int l_gc(lua_State* L) - { - LuaObject* p = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Text); - p->release(); - return 0; - } + LUA_IMPLEMENT int l_gc(lua_State* L) + { + LuaObject* p = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Text); + p->release(); + return 0; + } - LUA_EXPORT void luaopen_Text(lua_State* L) - { - luaL_Reg methods[] = { - { "__gc", l_gc }, - { 0, 0 } - }; - luax_newtype(L, Jin_Lua_Text, methods); - } + LUA_EXPORT void luaopen_Text(lua_State* L) + { + luaL_Reg methods[] = { + { "__gc", l_gc }, + { 0, 0 } + }; + luax_newtype(L, Jin_Lua_Text, methods); + } } // namespace Lua } // namespace JinEngine
\ No newline at end of file diff --git a/src/lua/modules/graphics/je_lua_texture.cpp b/src/lua/modules/graphics/je_lua_texture.cpp index 7bac237..b03b999 100644 --- a/src/lua/modules/graphics/je_lua_texture.cpp +++ b/src/lua/modules/graphics/je_lua_texture.cpp @@ -15,26 +15,26 @@ namespace JinEngine LUA_IMPLEMENT inline Texture* checkTexture(lua_State* L) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Texture); - return luaObj->getObject<Texture>(); + return luaObj->getObject<Texture>(); } LUA_IMPLEMENT int l_getWidth(lua_State* L) { - Texture* shared = checkTexture(L); + Texture* shared = checkTexture(L); luax_pushnumber(L, shared->getWidth()); return 1; } LUA_IMPLEMENT int l_getHeight(lua_State *L) { - Texture* shared = checkTexture(L); + Texture* shared = checkTexture(L); luax_pushnumber(L, shared->getHeight()); return 1; } LUA_IMPLEMENT int l_getSize(lua_State* L) { - Texture* shared = checkTexture(L); + Texture* shared = checkTexture(L); luax_pushnumber(L, shared->getWidth()); luax_pushnumber(L, shared->getHeight()); return 2; diff --git a/src/lua/modules/graphics/je_lua_texture_font.cpp b/src/lua/modules/graphics/je_lua_texture_font.cpp index 9c9d52c..6cbf7ca 100644 --- a/src/lua/modules/graphics/je_lua_texture_font.cpp +++ b/src/lua/modules/graphics/je_lua_texture_font.cpp @@ -15,49 +15,49 @@ namespace JinEngine const char* Jin_Lua_TextureFont = "TextureFont"; - LUA_IMPLEMENT int l_gc(lua_State* L) - { - LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TextureFont); - luaObj->release(); - return 0; - } - - /* typeset(Text | string, lineheight, spacing) */ - LUA_IMPLEMENT int l_typeset(lua_State* L) - { - LuaObject* luaTexFont = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TextureFont); - TextureFont* tf = luaTexFont->getObject<TextureFont>(); - int lineheight = luax_checkinteger(L, 3); - int spacing = luax_optnumber(L, 4, 0); - Page* page = nullptr; - if (luax_isstring(L, 2)) - { - unsigned length; - const char* str = luax_checklstring(L, 2, &length); - Text text(Encode::UTF8, str, length); - page = tf->typeset(text, lineheight, spacing); - } - else if (luax_istype(L, 2, Jin_Lua_Text)) - { - LuaObject* p2 = (LuaObject*)luax_checktype(L, 2, Jin_Lua_Text); - Text* text = p2->getObject<Text>(); - page = tf->typeset(*text, lineheight, spacing); - } + LUA_IMPLEMENT int l_gc(lua_State* L) + { + LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TextureFont); + luaObj->release(); + return 0; + } + + /* typeset(Text | string, lineheight, spacing) */ + LUA_IMPLEMENT int l_typeset(lua_State* L) + { + LuaObject* luaTexFont = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TextureFont); + TextureFont* tf = luaTexFont->getObject<TextureFont>(); + int lineheight = luax_checkinteger(L, 3); + int spacing = luax_optnumber(L, 4, 0); + Page* page = nullptr; + if (luax_isstring(L, 2)) + { + unsigned length; + const char* str = luax_checklstring(L, 2, &length); + Text text(Encode::UTF8, str, length); + page = tf->typeset(text, lineheight, spacing); + } + else if (luax_istype(L, 2, Jin_Lua_Text)) + { + LuaObject* p2 = (LuaObject*)luax_checktype(L, 2, Jin_Lua_Text); + Text* text = p2->getObject<Text>(); + page = tf->typeset(*text, lineheight, spacing); + } Shared* shrPage = new Shared(page); LuaObject* luaPage = luax_newinstance(L, Jin_Lua_Page, shrPage); luaPage->setDependency((int)PageDependency::DEP_TEXTURE_FONT, luaTexFont); - return 1; - } - - LUA_EXPORT void luaopen_TextureFont(lua_State* L) - { - luaL_Reg methods[] = { - { "__gc", l_gc }, - { "typeset", l_typeset }, - { 0, 0 } - }; - luax_newtype(L, Jin_Lua_TextureFont, methods); - } + return 1; + } + + LUA_EXPORT void luaopen_TextureFont(lua_State* L) + { + luaL_Reg methods[] = { + { "__gc", l_gc }, + { "typeset", l_typeset }, + { 0, 0 } + }; + luax_newtype(L, Jin_Lua_TextureFont, methods); + } } // namespace Lua } // namespace JinEngine
\ No newline at end of file diff --git a/src/lua/modules/graphics/je_lua_ttf.cpp b/src/lua/modules/graphics/je_lua_ttf.cpp index caa1e53..ead46de 100644 --- a/src/lua/modules/graphics/je_lua_ttf.cpp +++ b/src/lua/modules/graphics/je_lua_ttf.cpp @@ -22,28 +22,28 @@ namespace JinEngine return 0; } - /* typeset(Text | string, lineheight, spacing) */ + /* typeset(Text | string, lineheight, spacing) */ LUA_IMPLEMENT int l_typeset(lua_State* L) { LuaObject* luaTTF = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TTF); - TTF* ttf = luaTTF->getObject<TTF>(); + TTF* ttf = luaTTF->getObject<TTF>(); int lineheight = luax_optnumber(L, 3, ttf->getFontSize()); int spacing = luax_optnumber(L, 4, 0); - Page* page = nullptr; - if (luax_isstring(L, 2)) - { - unsigned length; - const char* str = luax_checklstring(L, 2, &length); - Text text(Encode::UTF8, str, length); - page = ttf->typeset(text, lineheight, spacing); - } - else if (luax_istype(L, 2, Jin_Lua_Text)) - { - LuaObject* luaText = (LuaObject*)luax_checktype(L, 2, Jin_Lua_Text); - Text* text = luaText->getObject<Text>(); - page = ttf->typeset(*text, lineheight, spacing); - } - Shared* refPage = new Shared(page); + Page* page = nullptr; + if (luax_isstring(L, 2)) + { + unsigned length; + const char* str = luax_checklstring(L, 2, &length); + Text text(Encode::UTF8, str, length); + page = ttf->typeset(text, lineheight, spacing); + } + else if (luax_istype(L, 2, Jin_Lua_Text)) + { + LuaObject* luaText = (LuaObject*)luax_checktype(L, 2, Jin_Lua_Text); + Text* text = luaText->getObject<Text>(); + page = ttf->typeset(*text, lineheight, spacing); + } + Shared* refPage = new Shared(page); LuaObject* luaPage = luax_newinstance(L, Jin_Lua_Page, refPage); luaPage->setDependency((int)PageDependency::DEP_TTF, luaTTF); return 1; diff --git a/src/lua/modules/graphics/je_lua_ttf_data.cpp b/src/lua/modules/graphics/je_lua_ttf_data.cpp index 4a95ab2..e251ac8 100644 --- a/src/lua/modules/graphics/je_lua_ttf_data.cpp +++ b/src/lua/modules/graphics/je_lua_ttf_data.cpp @@ -19,9 +19,9 @@ namespace JinEngine { LuaObject* luaTTFData = (LuaObject*)luax_checktype(L, 1, Jin_Lua_TTFData); int fontsize = luax_checkinteger(L, 2); - TTFData* fontData = luaTTFData->getObject<TTFData>(); - TTF* font = fontData->createTTF(fontsize); - Shared* shrTTF = new Shared(font); + TTFData* fontData = luaTTFData->getObject<TTFData>(); + TTF* font = fontData->createTTF(fontsize); + Shared* shrTTF = new Shared(font); LuaObject* luaTTF = luax_newinstance(L, Jin_Lua_TTF, shrTTF); luaTTF->setDependency((int)TTFDependency::DEP_TTFDATA, luaTTFData); return 1; diff --git a/src/lua/modules/net/je_lua_buffer.cpp b/src/lua/modules/net/je_lua_buffer.cpp index dcfdf01..10e7143 100644 --- a/src/lua/modules/net/je_lua_buffer.cpp +++ b/src/lua/modules/net/je_lua_buffer.cpp @@ -15,13 +15,13 @@ namespace JinEngine static inline Net::Buffer* checkNetBuffer(lua_State* L) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Buffer); - return luaObj->getObject<Net::Buffer>(); + return luaObj->getObject<Net::Buffer>(); } // net.Buffer:append(value) -> value_length LUA_IMPLEMENT int l_append(lua_State* L) { - Buffer* buffer = checkNetBuffer(L); + Buffer* buffer = checkNetBuffer(L); const int vp = 2; if (luax_isintegerstrict(L, vp)) { @@ -35,7 +35,7 @@ namespace JinEngine { float n = luax_checknumber(L, vp); int size = sizeof(n); - buffer->append(&n, size); + buffer->append(&n, size); luax_pushinteger(L, size); return 1; } @@ -43,7 +43,7 @@ namespace JinEngine { bool n = luax_checkbool(L, vp); int size = sizeof(n); - buffer->append(&n, size); + buffer->append(&n, size); luax_pushinteger(L, size); return 1; } @@ -51,7 +51,7 @@ namespace JinEngine { const char* str = luax_checkstring(L, vp); int size = strlen(str) + 1; - buffer->append(str, size); + buffer->append(str, size); luax_pushinteger(L, size); return 1; } @@ -65,7 +65,7 @@ namespace JinEngine // net.Buffer:grabString(offset) -> string, length LUA_IMPLEMENT int l_grabString(lua_State* L) { - Buffer* buffer = checkNetBuffer(L); + Buffer* buffer = checkNetBuffer(L); int offset = luax_checkinteger(L, 2); unsigned int len; char* data = buffer->grabString(&len, offset); @@ -79,7 +79,7 @@ namespace JinEngine // net.Buffer:grabInteger(offset) -> integer, length LUA_IMPLEMENT int l_grabInteger(lua_State* L) { - Buffer* buffer = checkNetBuffer(L); + Buffer* buffer = checkNetBuffer(L); int offset = luax_checkinteger(L, 2); int len; int integer = buffer->grabInteger(&len, offset); @@ -90,7 +90,7 @@ namespace JinEngine LUA_IMPLEMENT int l_grabFloat(lua_State* L) { - Buffer* buffer = checkNetBuffer(L); + Buffer* buffer = checkNetBuffer(L); int offset = luax_checkinteger(L, 2); int len; float floatv = buffer->grabFloat(&len, offset); @@ -101,7 +101,7 @@ namespace JinEngine LUA_IMPLEMENT int l_grabBoolean(lua_State* L) { - Buffer* buffer = checkNetBuffer(L); + Buffer* buffer = checkNetBuffer(L); int offset = luax_checkinteger(L, 2); int len; bool boolean = buffer->grabBoolean(&len, offset); diff --git a/src/lua/modules/net/je_lua_net.cpp b/src/lua/modules/net/je_lua_net.cpp index 6ff5221..fad6fc5 100644 --- a/src/lua/modules/net/je_lua_net.cpp +++ b/src/lua/modules/net/je_lua_net.cpp @@ -11,7 +11,7 @@ namespace JinEngine { using namespace JinEngine::Lua::Net; - using namespace JinEngine::Net; + using namespace JinEngine::Net; LUA_IMPLEMENT int l_initNetwork(lua_State* L) { diff --git a/src/lua/modules/net/je_lua_socket.cpp b/src/lua/modules/net/je_lua_socket.cpp index 1d87175..d6cfe91 100644 --- a/src/lua/modules/net/je_lua_socket.cpp +++ b/src/lua/modules/net/je_lua_socket.cpp @@ -18,19 +18,19 @@ namespace JinEngine LUA_IMPLEMENT inline Socket* checkSocket(lua_State* L, int pos = 1) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, pos, Jin_Lua_Socket); - return luaObj->getObject<Socket>(); + return luaObj->getObject<Socket>(); } LUA_IMPLEMENT inline Buffer* checkNetBuffer(lua_State* L, int pos = 1) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, pos, Jin_Lua_Buffer); - return luaObj->getObject<Buffer>(); + return luaObj->getObject<Buffer>(); } // return net.Socket LUA_IMPLEMENT int l_accept(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); Socket* client = socket->accept(); LuaObject* luaObj = luax_newinstance(L, Jin_Lua_Socket, new Shared(client)); return 1; @@ -39,7 +39,7 @@ namespace JinEngine // return net.Buffer LUA_IMPLEMENT int l_receive(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); char buffer[BUFFER_SIZE] = {0}; int size = socket->receive(buffer, BUFFER_SIZE); Net::Buffer* netBuffer = new Net::Buffer(buffer, size); @@ -50,7 +50,7 @@ namespace JinEngine // Socket:receiveFrom(address, port) LUA_IMPLEMENT int l_receiveFrom(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); int address = luax_checkinteger(L, 2); int port = luax_checkinteger(L, 3); char buffer[BUFFER_SIZE]; @@ -63,8 +63,8 @@ namespace JinEngine // Socket:send(net.Buffer) -> data_length LUA_IMPLEMENT int l_send(lua_State* L) { - Socket* socket = checkSocket(L); - Buffer* buffer = checkNetBuffer(L, 2); + Socket* socket = checkSocket(L); + Buffer* buffer = checkNetBuffer(L, 2); int len = socket->send(buffer->buffer, buffer->size); luax_pushinteger(L, len); return 1; @@ -73,24 +73,24 @@ namespace JinEngine // Socket:sendTo(address, port, net.Buffer) LUA_IMPLEMENT int l_sendTo(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); int address = luax_checkinteger(L, 2); int port = luax_checkinteger(L, 3); - Buffer* buffer = checkNetBuffer(L, 4); + Buffer* buffer = checkNetBuffer(L, 4); socket->sendTo(buffer->buffer, buffer->size, address, port); return 0; } LUA_IMPLEMENT int l_close(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); socket->close(); return 0; } LUA_IMPLEMENT int l_configBlocking(lua_State* L) { - Socket* socket = checkSocket(L); + Socket* socket = checkSocket(L); bool blocking = luax_checkbool(L, 2); socket->configureBlocking(blocking); return 0; diff --git a/src/lua/modules/thread/je_lua_thread.cpp b/src/lua/modules/thread/je_lua_thread.cpp index 9e785ff..a9d7f3b 100644 --- a/src/lua/modules/thread/je_lua_thread.cpp +++ b/src/lua/modules/thread/je_lua_thread.cpp @@ -17,12 +17,12 @@ namespace JinEngine static inline Thread* checkThread(lua_State* L) { LuaObject* luaObj = (LuaObject*)luax_checktype(L, 1, Jin_Lua_Thread); - return luaObj->getObject<Thread>(); + return luaObj->getObject<Thread>(); } LUA_IMPLEMENT int threadRunner(void* t) { - Shared* shared = (Shared*)t; + Shared* shared = (Shared*)t; Thread* thread = shared->getObject<Thread>(); lua_State* L = lua_open(); luax_openlibs(L); @@ -44,7 +44,7 @@ namespace JinEngine LUA_IMPLEMENT int l_start(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); bool result = shared->start(&shared); luax_pushboolean(L, result); return 1; @@ -52,14 +52,14 @@ namespace JinEngine LUA_IMPLEMENT int l_wait(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); shared->wait(); return 0; } LUA_IMPLEMENT int l_send(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); int slot = luax_checkinteger(L, 2); const int vp = 3; if (luax_isnumberstrict(L, vp)) @@ -70,29 +70,29 @@ namespace JinEngine else if (luax_isbooleanstrict(L, vp)) { bool bol = luax_checkbool(L, vp); - shared->send(slot, bol); + shared->send(slot, bol); } else if (luax_isstringstrict(L, vp)) { const char* str = luax_checkstring(L, vp); - shared->send(slot, str); + shared->send(slot, str); } else if (luax_isuserdata(L, vp)) { LuaObject* luaObj = (LuaObject*)luax_touserdata(L, vp); - shared->send(slot, luaObj); + shared->send(slot, luaObj); }/* else if (luax_islightuserdata(L, vp)) { void* p = luax_tolightuserdata(L, vp); - shared->send(slot, p); + shared->send(slot, p); }*/ return 0; } LUA_IMPLEMENT int l_receive(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); int slot = luax_checkinteger(L, 2); bool result = shared->receive(slot); luax_pushboolean(L, result); @@ -101,7 +101,7 @@ namespace JinEngine LUA_IMPLEMENT int l_fetch(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); int slot = luax_checkinteger(L, 2); Thread::Variant v = shared->fetch(slot); switch (v.type) @@ -134,7 +134,7 @@ namespace JinEngine LUA_IMPLEMENT int l_demand(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); int slot = luax_checkinteger(L, 2); Thread::Variant v = shared->demand(slot); switch (v.type) @@ -167,7 +167,7 @@ namespace JinEngine LUA_IMPLEMENT int l_remove(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); int slot = luax_checkinteger(L, 2); shared->remove(slot); return 0; @@ -175,7 +175,7 @@ namespace JinEngine LUA_IMPLEMENT int l_getName(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); const char* name = shared->getName(); luax_pushstring(L, name); return 1; @@ -183,7 +183,7 @@ namespace JinEngine LUA_IMPLEMENT int l_isRunning(lua_State* L) { - Thread* shared = checkThread(L); + Thread* shared = checkThread(L); bool running = shared->isRunning(); luax_pushboolean(L, running); return 1; diff --git a/src/lua/modules/thread/je_lua_thread.h b/src/lua/modules/thread/je_lua_thread.h index 9978d35..acb4c49 100644 --- a/src/lua/modules/thread/je_lua_thread.h +++ b/src/lua/modules/thread/je_lua_thread.h @@ -21,10 +21,10 @@ namespace JinEngine thread = new JinEngine::Threads::Thread(_name, runner); } - ~Thread() - { - delete thread; - } + ~Thread() + { + delete thread; + } bool start(void* p) { @@ -84,7 +84,7 @@ namespace JinEngine const std::string name; const std::string code; - private: + private: JinEngine::Threads::Thread* thread; }; |