Adding lua image support.

This commit is contained in:
emb
2015-11-17 07:02:31 -06:00
parent acd63979b7
commit a10fb44e63
90 changed files with 35413 additions and 2177 deletions

View File

@@ -1,11 +1,16 @@
#include "LuaImage.h"
#include "../Utility/Log.h"
#include "../Graphics/Component/Image.h"
ComponentFactory *factory;
void LuaImage::initialize(ComponentFactory &f)
{
factory = &f;
}
int LuaImage::create(lua_State *l)
{
Image *i = new Image();
Image *i = factory->createImage();
lua_pushinteger(l, (int)i);
@@ -44,7 +49,6 @@ int LuaImage::loadType(lua_State *l)
return 2;
}
int LuaImage::isLoaded(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
@@ -62,13 +66,16 @@ int LuaImage::unload(lua_State *l)
return 0;
}
#endif
int LuaImage::getOriginalWidth(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
lua_pushnumber(l, i->getOriginalWidth());
int w = 0;
int h = 0;
i->getOriginalDimensions(w, h);
lua_pushnumber(l, w);
return 1;
}
@@ -77,24 +84,29 @@ int LuaImage::getOriginalWidth(lua_State *l)
int LuaImage::getOriginalHeight(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int w = 0;
int h = 0;
i->getOriginalDimensions(w, h);
lua_pushnumber(l, h);
lua_pushnumber(l, i->getOriginalHeight());
return 1;
return 1;
}
int LuaImage::getOriginalDimensions(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
lua_pushnumber(l, i->getOriginalWidth());
lua_pushnumber(l, i->getOriginalHeight());
int w = 0;
int h = 0;
i->getOriginalDimensions(w, h);
lua_pushnumber(l, w);
lua_pushnumber(l, h);
return 2;
}
int LuaImage::getX(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
@@ -125,7 +137,6 @@ int LuaImage::getPosition(lua_State *l)
return 2;
}
int LuaImage::getWidth(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
@@ -156,7 +167,6 @@ int LuaImage::getDimensions(lua_State *l)
return 2;
}
int LuaImage::getRotate(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
@@ -176,32 +186,11 @@ int LuaImage::getAlpha(lua_State *l)
return 1;
}
int LuaImage::getVisible(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
lua_pushboolean(l, i->info.visible);
return 1;
}
int LuaImage::getHidden(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
lua_pushboolean(l, !i->info.visible);
return 1;
}
int LuaImage::getLayer(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
lua_pushnumberl, !i->info.layer);
lua_pushnumber(l, !i->info.layer);
return 1;
}
@@ -209,7 +198,7 @@ int LuaImage::getLayer(lua_State *l)
int LuaImage::setX(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int val = luaL_checknumber(l, 2);
int val = (int)luaL_checknumber(l, 2);
i->info.x = val;
@@ -220,7 +209,7 @@ int LuaImage::setX(lua_State *l)
int LuaImage::setY(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int val = luaL_checknumber(l, 2);
int val = (int)luaL_checknumber(l, 2);
i->info.y = val;
@@ -231,8 +220,8 @@ int LuaImage::setY(lua_State *l)
int LuaImage::setPosition(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int x = luaL_checknumber(l, 2);
int y = luaL_checknumber(l, 3);
int x = (int)luaL_checknumber(l, 2);
int y = (int)luaL_checknumber(l, 3);
i->info.x = x;
i->info.y = y;
@@ -244,7 +233,7 @@ int LuaImage::setPosition(lua_State *l)
int LuaImage::setWidth(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int val = luaL_checknumber(l, 2);
int val = (int)luaL_checknumber(l, 2);
i->info.width = val;
@@ -255,7 +244,7 @@ int LuaImage::setWidth(lua_State *l)
int LuaImage::setHeight(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int val = luaL_checknumber(l, 2);
int val = (int)luaL_checknumber(l, 2);
i->info.height = val;
@@ -266,8 +255,8 @@ int LuaImage::setHeight(lua_State *l)
int LuaImage::setDimensions(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int w = luaL_checknumber(l, 2);
int h = luaL_checknumber(l, 3);
int w = (int)luaL_checknumber(l, 2);
int h = (int)luaL_checknumber(l, 3);
i->info.width = w;
i->info.height = h;
@@ -279,7 +268,7 @@ int LuaImage::setDimensions(lua_State *l)
int LuaImage::setRotate(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
float val = luaL_checknumber(l, 2);
float val = (float)luaL_checknumber(l, 2);
i->info.rotate = val;
@@ -290,44 +279,19 @@ int LuaImage::setRotate(lua_State *l)
int LuaImage::setAlpha(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
float val = luaL_checknumber(l, 2);
float val = (float)luaL_checknumber(l, 2);
i->info.alpha = val;
return 0;
}
int LuaImage::setVisible(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
bool val = luaL_checkboolean(l, 2);
i->info.visible = val;
return 0;
}
int LuaImage::setHidden(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
bool val = luaL_checkboolean(l, 2);
i->info.visible = !val;
return 0;
}
int LuaImage::setLayer(lua_State *l)
{
Image *i = (Image *)luaL_checkinteger(l, 1);
int val = luaL_checknumber(l, 2);
int val = (int)luaL_checknumber(l, 2);
i->info.layer = val;
return 0;
}
#endif