代码拉取完成,页面将自动刷新
unit LuaPen;
{$mode delphi}
interface
uses
Classes, SysUtils, Graphics,lua, lualib, lauxlib,LuaHandler;
procedure initializeLuaPen;
implementation
uses luaclass, LuaObject;
function pen_getColor(L: PLua_State): integer; cdecl;
var
pen: TPen;
begin
pen:=luaclass_getClassObject(L);
lua_pushinteger(L, pen.Color);
result:=1;
end;
function pen_setColor(L: PLua_State): integer; cdecl;
var
pen: TPen;
begin
pen:=luaclass_getClassObject(L);
if lua_gettop(L)>=1 then
pen.color:=lua_tointeger(L, -1);
result:=1;
end;
function pen_getWidth(L: PLua_State): integer; cdecl;
var
pen: TPen;
begin
pen:=luaclass_getClassObject(L);
lua_pushinteger(L, pen.Width);
result:=1;
end;
function pen_setWidth(L: PLua_State): integer; cdecl;
var
pen: TPen;
begin
pen:=luaclass_getClassObject(L);
if lua_gettop(L)>=1 then
pen.Width:=lua_tointeger(L, -1);
result:=1;
end;
procedure pen_addMetaData(L: PLua_state; metatable: integer; userdata: integer );
begin
object_addMetaData(L, metatable, userdata);
luaclass_addClassFunctionToTable(L, metatable, userdata, 'getColor', pen_getColor);
luaclass_addClassFunctionToTable(L, metatable, userdata, 'setColor', pen_setColor);
luaclass_addClassFunctionToTable(L, metatable, userdata, 'getWidth', pen_getWidth);
luaclass_addClassFunctionToTable(L, metatable, userdata, 'setWidth', pen_setWidth);
Luaclass_addPropertyToTable(L, metatable, userdata, 'Color', pen_getColor, pen_setColor);
Luaclass_addPropertyToTable(L, metatable, userdata, 'Width', pen_getWidth, pen_setWidth);
end;
procedure initializeLuaPen;
begin
lua_register(LuaVM, 'pen_getColor', pen_getColor);
lua_register(LuaVM, 'pen_setColor', pen_setColor);
lua_register(LuaVM, 'pen_getWidth', pen_getWidth);
lua_register(LuaVM, 'pen_setWidth', pen_setWidth);
end;
initialization
luaclass_register(TPen, pen_addMetaData);
end.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。