Exemplo n.º 1
0
namespace Lua {
typedef LuaDataSource DataSource;

int DataSourceNotifyRowAdd(lua_State* L, DataSource* obj)
{
    LUACHECKOBJ(obj);
    const char* table_name = luaL_checkstring(L,1);
    int first_row_added = luaL_checkint(L,2);
    int num_rows_added = luaL_checkint(L,3);
    obj->NotifyRowAdd(table_name,first_row_added,num_rows_added);
    return 0;
}

int DataSourceNotifyRowRemove(lua_State* L, DataSource* obj)
{
    LUACHECKOBJ(obj);
    const char* table_name = luaL_checkstring(L,1);
    int first_row_removed = luaL_checkint(L,2);
    int num_rows_removed = luaL_checkint(L,3);
    obj->NotifyRowRemove(table_name,first_row_removed,num_rows_removed);
    return 0;
}

int DataSourceNotifyRowChange(lua_State* L, DataSource* obj)
{
    LUACHECKOBJ(obj);
    const char* table_name = luaL_checkstring(L,1);
    if(lua_gettop(L) < 2)
    {
        obj->NotifyRowChange(table_name);
    }
    else
    {
        int first_row_changed = luaL_checkint(L,2);
        int num_rows_changed = luaL_checkint(L,3);
        obj->NotifyRowChange(table_name,first_row_changed,num_rows_changed);
    }
    return 0;
}

int DataSourceSetAttrGetNumRows(lua_State* L)
{
    DataSource* obj = LuaType<DataSource>::check(L,1);
    LUACHECKOBJ(obj);
    if(lua_type(L,2) == LUA_TFUNCTION)
    {
        lua_pushvalue(L,2); //copy of the function, so it is for sure at the top of the stack
        obj->getNumRowsRef = lua_ref(L,true);
    }
    else
        Log::Message(Log::LT_WARNING, "Lua: Must assign DataSource.GetNumRows as a function, value received was of %s type", lua_typename(L,2));
    return 0;
}

int DataSourceSetAttrGetRow(lua_State* L)
{
    DataSource* obj = LuaType<DataSource>::check(L,1);
    LUACHECKOBJ(obj);
    if(lua_type(L,2) == LUA_TFUNCTION)
    {
        lua_pushvalue(L,2); //copy of the functions, so it is for sure at the top of the stack
        obj->getRowRef = lua_ref(L,true);
    }
    else
        Log::Message(Log::LT_WARNING, "Lua: Must assign DataSource.GetRow as a function, value received was of %s type", lua_typename(L,2));
    return 0;
}


RegType<DataSource> DataSourceMethods[] =
{
    LUAMETHOD(DataSource,NotifyRowAdd)
    LUAMETHOD(DataSource,NotifyRowRemove)
    LUAMETHOD(DataSource,NotifyRowChange)
    { NULL, NULL },
};

luaL_reg DataSourceGetters[] =
{
    { NULL, NULL },
};

luaL_reg DataSourceSetters[] =
{
    LUASETTER(DataSource,GetNumRows)
    LUASETTER(DataSource,GetRow)
    { NULL, NULL },
};

}
namespace Lua {

//methods
int ElementFormControlSelectAdd(lua_State* L, ElementFormControlSelect* obj)
{
    const char* rml = luaL_checkstring(L,1);
    const char* value = luaL_checkstring(L,2);
    int before = -1; //default
    if(lua_gettop(L) >= 3)
        before = luaL_checkinteger(L,3);

    int index = obj->Add(rml,value,before);
    lua_pushinteger(L,index);
    return 1;
}

int ElementFormControlSelectRemove(lua_State* L, ElementFormControlSelect* obj)
{
    int index = luaL_checkinteger(L,1);
    obj->Remove(index);
    return 0;
}

//getters
int ElementFormControlSelectGetAttroptions(lua_State* L)
{
    ElementFormControlSelect* obj = LuaType<ElementFormControlSelect>::check(L,1);
    LUACHECKOBJ(obj);
    SelectOptionsProxy* proxy = new SelectOptionsProxy();
    proxy->owner = obj;
    LuaType<SelectOptionsProxy>::push(L,proxy,true);
    return 1;
}

int ElementFormControlSelectGetAttrselection(lua_State* L)
{
    ElementFormControlSelect* obj = LuaType<ElementFormControlSelect>::check(L,1);
    LUACHECKOBJ(obj);
    int selection = obj->GetSelection();
    lua_pushinteger(L,selection);
    return 1;
}


//setter
int ElementFormControlSelectSetAttrselection(lua_State* L)
{
    ElementFormControlSelect* obj = LuaType<ElementFormControlSelect>::check(L,1);
    LUACHECKOBJ(obj);
    int selection = luaL_checkinteger(L,2);
    obj->SetSelection(selection);
    return 0;
}


Rocket::Core::Lua::RegType<ElementFormControlSelect> ElementFormControlSelectMethods[] =
{
    LUAMETHOD(ElementFormControlSelect,Add)
    LUAMETHOD(ElementFormControlSelect,Remove)
    { NULL, NULL },
};

luaL_Reg ElementFormControlSelectGetters[] =
{
    LUAGETTER(ElementFormControlSelect,options)
    LUAGETTER(ElementFormControlSelect,selection)
    { NULL, NULL },
};

luaL_Reg ElementFormControlSelectSetters[] =
{
    LUASETTER(ElementFormControlSelect,selection)
    { NULL, NULL },
};

}
Exemplo n.º 3
0
    {
        Log::Message(Log::LT_ERROR, "The argument to ElementInstancer.InstanceElement must be a function. You passed in a %s.", luaL_typename(L,2));
        return 0;
    }
    lei->PushFunctionsTable(L); //top of the stack is now ELEMENTINSTANCERFUNCTIONS table
    lua_pushvalue(L,2); //copy of the function
    lei->ref_InstanceElement = luaL_ref(L,-2); 
    lua_pop(L,1); //pop the ELEMENTINSTANCERFUNCTIONS table
    return 0;
}

RegType<ElementInstancer> ElementInstancerMethods[] =
{
    { NULL, NULL },
};

luaL_reg ElementInstancerGetters[] =
{
    { NULL, NULL },
};

luaL_reg ElementInstancerSetters[] =
{
    LUASETTER(ElementInstancer,InstanceElement)
    { NULL, NULL },
};

LUACORETYPEDEFINE(ElementInstancer,true)
}
}
}
Exemplo n.º 4
0
int ElementTextSetAttrtext(lua_State* L)
{
    ElementText* obj = LuaType<ElementText>::check(L, 1);
    LUACHECKOBJ(obj);
    const char* text = luaL_checkstring(L,2);
    obj->SetText(text);
    return 0;
}

RegType<ElementText> ElementTextMethods[] =
{
    { NULL, NULL },
};

luaL_reg ElementTextGetters[] =
{
    LUAGETTER(ElementText,text)
    { NULL, NULL },
};

luaL_reg ElementTextSetters[] =
{
    LUASETTER(ElementText,text)
    { NULL, NULL },
};

LUACORETYPEDEFINE(ElementText,true)
}
}
}
Exemplo n.º 5
0
namespace Lua {

//methods
int ElementTabSetSetPanel(lua_State* L, ElementTabSet* obj)
{
    LUACHECKOBJ(obj);
    int index = luaL_checkint(L,1);
    const char* rml = luaL_checkstring(L,2);

    obj->SetPanel(index,rml);
    return 0;
}

int ElementTabSetSetTab(lua_State* L, ElementTabSet* obj)
{
    LUACHECKOBJ(obj);
    int index = luaL_checkint(L,1);
    const char* rml = luaL_checkstring(L,2);

    obj->SetTab(index,rml);
    return 0;
}


//getters
int ElementTabSetGetAttractive_tab(lua_State* L)
{
    ElementTabSet* obj = LuaType<ElementTabSet>::check(L,1);
    LUACHECKOBJ(obj);
    int tab = obj->GetActiveTab();
    lua_pushinteger(L,tab);
    return 1;
}

int ElementTabSetGetAttrnum_tabs(lua_State* L)
{
    ElementTabSet* obj = LuaType<ElementTabSet>::check(L,1);
    LUACHECKOBJ(obj);
    int num = obj->GetNumTabs();
    lua_pushinteger(L,num);
    return 1;
}


//setter
int ElementTabSetSetAttractive_tab(lua_State* L)
{
    ElementTabSet* obj = LuaType<ElementTabSet>::check(L,1);
    LUACHECKOBJ(obj);
    int tab = luaL_checkint(L,2);
    obj->SetActiveTab(tab);
    return 0;
}


Rocket::Core::Lua::RegType<ElementTabSet> ElementTabSetMethods[] =
{
    LUAMETHOD(ElementTabSet,SetPanel)
    LUAMETHOD(ElementTabSet,SetTab)
    { NULL, NULL },
};

luaL_reg ElementTabSetGetters[] =
{
    LUAGETTER(ElementTabSet,active_tab)
    LUAGETTER(ElementTabSet,num_tabs)
    { NULL, NULL },
};

luaL_reg ElementTabSetSetters[] =
{
    LUASETTER(ElementTabSet,active_tab)
    { NULL, NULL },
};



}
Exemplo n.º 6
0

RegType<Colourb> ColourbMethods[] =
{
    { NULL, NULL },
};

luaL_reg ColourbGetters[] =
{
    LUAGETTER(Colourb,red)
    LUAGETTER(Colourb,green)
    LUAGETTER(Colourb,blue)
    LUAGETTER(Colourb,alpha)
    LUAGETTER(Colourb,rgba)
    { NULL, NULL },
};

luaL_reg ColourbSetters[] =
{
    LUASETTER(Colourb,red)
    LUASETTER(Colourb,green)
    LUASETTER(Colourb,blue)
    LUASETTER(Colourb,alpha)
    LUASETTER(Colourb,rgba)
    { NULL, NULL },
};

LUACORETYPEDEFINE(Colourb,false)
}
}
}
Exemplo n.º 7
0
namespace Lua {


//getters
int ElementDataGridRowGetAttrrow_expanded(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushboolean(L,obj->IsRowExpanded());
    return 1;
}

int ElementDataGridRowGetAttrparent_relative_index(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushinteger(L,obj->GetParentRelativeIndex());
    return 1;
}

int ElementDataGridRowGetAttrtable_relative_index(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushinteger(L,obj->GetTableRelativeIndex());
    return 1;
}

int ElementDataGridRowGetAttrparent_row(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    LuaType<ElementDataGridRow>::push(L,obj->GetParentRow(),false);
    return 1;
}

int ElementDataGridRowGetAttrparent_grid(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    LuaType<ElementDataGrid>::push(L,obj->GetParentGrid(),false);
    return 1;
}


//setter
int ElementDataGridRowSetAttrrow_expanded(lua_State* L)
{
    ElementDataGridRow* obj = LuaType<ElementDataGridRow>::check(L,1);
    LUACHECKOBJ(obj);
    bool expanded = CHECK_BOOL(L,2);
    if(expanded)
        obj->ExpandRow();
    else
        obj->CollapseRow();
    return 0;
}



Rocket::Core::Lua::RegType<ElementDataGridRow> ElementDataGridRowMethods[] =
{
    { NULL, NULL },
};

luaL_Reg ElementDataGridRowGetters[] =
{
    LUAGETTER(ElementDataGridRow,row_expanded)
    LUAGETTER(ElementDataGridRow,parent_relative_index)
    LUAGETTER(ElementDataGridRow,table_relative_index)
    LUAGETTER(ElementDataGridRow,parent_row)
    LUAGETTER(ElementDataGridRow,parent_grid)
    { NULL, NULL },
};

luaL_Reg ElementDataGridRowSetters[] =
{
    LUASETTER(ElementDataGridRow,row_expanded)
    { NULL, NULL },
};

}
Exemplo n.º 8
0
namespace Lua {

//metamethods


int Colourfnew(lua_State* L)
{
    float red = (float)luaL_checknumber(L,1);
    float green = (float)luaL_checknumber(L,2);
    float blue =  (float)luaL_checknumber(L,3);
    float alpha = (float)luaL_checknumber(L,4);

    Colourf* col = new Colourf(red,green,blue,alpha);

    LuaType<Colourf>::push(L,col,true);
    return 1;
}

int Colourf__eq(lua_State* L)
{
    Colourf* lhs = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(lhs);
    Colourf* rhs = LuaType<Colourf>::check(L,2);
    LUACHECKOBJ(rhs);

    lua_pushboolean(L, (*lhs) == (*rhs) ? 1 : 0);
    return 1;
}


//getters
int ColourfGetAttrred(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushnumber(L,obj->red);
    return 1;
}

int ColourfGetAttrgreen(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushnumber(L,obj->green);
    return 1;
}

int ColourfGetAttrblue(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushnumber(L,obj->blue);
    return 1;
}

int ColourfGetAttralpha(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushnumber(L,obj->alpha);
    return 1;
}

int ColourfGetAttrrgba(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    lua_pushnumber(L,obj->red);
    lua_pushnumber(L,obj->green);
    lua_pushnumber(L,obj->blue);
    lua_pushnumber(L,obj->alpha);
    return 4;
}


//setters
int ColourfSetAttrred(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    float red = (float)luaL_checknumber(L,2);
    obj->red = red;
    return 0;
}

int ColourfSetAttrgreen(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    float green = (float)luaL_checknumber(L,2);
    obj->green = green;
    return 0;
}

int ColourfSetAttrblue(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    float blue = (float)luaL_checknumber(L,2);
    obj->blue;
    return 0;
}

int ColourfSetAttralpha(lua_State* L)
{
    Colourf* obj = LuaType<Colourf>::check(L,1);
    LUACHECKOBJ(obj);
    float alpha = (float)luaL_checknumber(L,2);
    obj->alpha;
    return 0;
}


RegType<Colourf> ColourfMethods[] =
{
    { NULL, NULL },
};

luaL_reg ColourfGetters[] =
{
    LUAGETTER(Colourf,red)
    LUAGETTER(Colourf,green)
    LUAGETTER(Colourf,blue)
    LUAGETTER(Colourf,alpha)
    LUAGETTER(Colourf,rgba)
    { NULL, NULL },
};

luaL_reg ColourfSetters[] =
{
    LUASETTER(Colourf,red)
    LUASETTER(Colourf,green)
    LUASETTER(Colourf,blue)
    LUASETTER(Colourf,alpha)
    { NULL, NULL },
};




}
Exemplo n.º 9
0
namespace Lua {



int Vector2fnew(lua_State* L)
{
    float x = (float)luaL_checknumber(L,1);
    float y = (float)luaL_checknumber(L,2);

    Vector2f* vect = new Vector2f(x,y);

    LuaType<Vector2f>::push(L,vect,true); //true means it will be deleted when it is garbage collected
    return 1;
}

int Vector2f__mul(lua_State* L)
{
    Vector2f* lhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(lhs);
    float rhs = (float)luaL_checknumber(L,2);

    Vector2f* res = new Vector2f(*lhs);
    (*res) *= rhs;

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2f__div(lua_State* L)
{
    Vector2f* lhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(lhs);
    float rhs = (float)luaL_checknumber(L,2);

    Vector2f* res = new Vector2f(*lhs);
    (*res) /= rhs;

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2f__add(lua_State* L)
{
    Vector2f* lhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(lhs);
    Vector2f* rhs = LuaType<Vector2f>::check(L,2);
    LUACHECKOBJ(rhs);

    Vector2f* res = new Vector2f(*lhs);
    (*res) += (*rhs);

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2f__sub(lua_State* L)
{
    Vector2f* lhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(lhs);
    Vector2f* rhs = LuaType<Vector2f>::check(L,2);
    LUACHECKOBJ(rhs);

    Vector2f* res = new Vector2f(*lhs);
    (*res) -= (*rhs);

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2f__eq(lua_State* L)
{
    Vector2f* lhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(lhs);
    Vector2f* rhs = LuaType<Vector2f>::check(L,2);
    LUACHECKOBJ(rhs);

    lua_pushboolean(L, (*lhs) == (*rhs) ? 1 : 0);
    return 1;
}


int Vector2fDotProduct(lua_State* L, Vector2f* obj)
{
    Vector2f* rhs = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(rhs);
    
    float res = obj->DotProduct(*rhs);

    lua_pushnumber(L,res);
    return 1;
}

int Vector2fNormalise(lua_State* L, Vector2f* obj)
{
    Vector2f* res = new Vector2f();
    (*res) = obj->Normalise();

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2fRotate(lua_State* L, Vector2f* obj)
{
    float num = (float)luaL_checknumber(L,1);

    Vector2f* res = new Vector2f();
    (*res) = obj->Rotate(num);

    LuaType<Vector2f>::push(L,res,true);
    return 1;
}

int Vector2fGetAttrx(lua_State*L)
{
    Vector2f* self = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(self);

    lua_pushnumber(L,self->x);
    return 1;
}

int Vector2fGetAttry(lua_State*L)
{
    Vector2f* self = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(self);

    lua_pushnumber(L,self->y);
    return 1;
}

int Vector2fGetAttrmagnitude(lua_State*L)
{
    Vector2f* self = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(self);

    lua_pushnumber(L,self->Magnitude());
    return 1;
}

int Vector2fSetAttrx(lua_State*L)
{
    Vector2f* self = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(self);
    float value = (float)luaL_checknumber(L,2);

    self->x = value;
    return 0;
}

int Vector2fSetAttry(lua_State*L)
{
    Vector2f* self = LuaType<Vector2f>::check(L,1);
    LUACHECKOBJ(self);
    float value = (float)luaL_checknumber(L,2);

    self->y = value;
    return 0;
}



RegType<Vector2f> Vector2fMethods[] = 
{
    LUAMETHOD(Vector2f,DotProduct)
    LUAMETHOD(Vector2f,Normalise)
    LUAMETHOD(Vector2f,Rotate)
    { NULL, NULL },
};

luaL_reg Vector2fGetters[]= 
{
    LUAGETTER(Vector2f,x)
    LUAGETTER(Vector2f,y)
    LUAGETTER(Vector2f,magnitude)
    { NULL, NULL },
};

luaL_reg Vector2fSetters[]= 
{
    LUASETTER(Vector2f,x)
    LUASETTER(Vector2f,y)
    { NULL, NULL },
};

}
Exemplo n.º 10
0

RegType<Document> DocumentMethods[] =
{
    LUAMETHOD(Document,PullToFront)
    LUAMETHOD(Document,PushToBack)
    LUAMETHOD(Document,Show)
    LUAMETHOD(Document,Hide)
    LUAMETHOD(Document,Close)
    LUAMETHOD(Document,CreateElement)
    LUAMETHOD(Document,CreateTextNode)
    { NULL, NULL },
};

luaL_Reg DocumentGetters[] =
{
    LUAGETTER(Document,title)
    LUAGETTER(Document,context)
    { NULL, NULL },
};

luaL_Reg DocumentSetters[] =
{
    LUASETTER(Document,title)
    { NULL, NULL },
};

LUACORETYPEDEFINE(Document,true)
}
}
}
Exemplo n.º 11
0
namespace Lua {
//getters
int ElementFormControlGetAttrdisabled(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    lua_pushboolean(L,efc->IsDisabled());
    return 1;
}

int ElementFormControlGetAttrname(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    lua_pushstring(L,efc->GetName().CString());
    return 1;
}

int ElementFormControlGetAttrvalue(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    lua_pushstring(L,efc->GetValue().CString());
    return 1;
}


//setters
int ElementFormControlSetAttrdisabled(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    efc->SetDisabled(CHECK_BOOL(L,2));
    return 0;
}

int ElementFormControlSetAttrname(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    const char* name = luaL_checkstring(L,2);
    efc->SetName(name);
    return 0;
}

int ElementFormControlSetAttrvalue(lua_State* L)
{
    ElementFormControl* efc = LuaType<ElementFormControl>::check(L,1);
    LUACHECKOBJ(efc);
    const char* value = luaL_checkstring(L,2);
    efc->SetValue(value);
    return 0;
}


RegType<ElementFormControl> ElementFormControlMethods[] = 
{
    { NULL, NULL },
};

luaL_reg ElementFormControlGetters[] = 
{
    LUAGETTER(ElementFormControl,disabled)
    LUAGETTER(ElementFormControl,name)
    LUAGETTER(ElementFormControl,value)
    { NULL, NULL },
};

luaL_reg ElementFormControlSetters[] = 
{
    LUASETTER(ElementFormControl,disabled)
    LUASETTER(ElementFormControl,name)
    LUASETTER(ElementFormControl,value)
    { NULL, NULL },
};


}
Exemplo n.º 12
0
{
    { NULL, NULL },
};

luaL_Reg ColourfGetters[] =
{
    LUAGETTER(Colourf,red)
    LUAGETTER(Colourf,green)
    LUAGETTER(Colourf,blue)
    LUAGETTER(Colourf,alpha)
    LUAGETTER(Colourf,rgba)
    { NULL, NULL },
};

luaL_Reg ColourfSetters[] =
{
    LUASETTER(Colourf,red)
    LUASETTER(Colourf,green)
    LUASETTER(Colourf,blue)
    LUASETTER(Colourf,alpha)
    LUASETTER(Colourf,rgba)
    { NULL, NULL },
};

LUACORETYPEDEFINE(Colourf,false)


}
}
}
Exemplo n.º 13
0


RegType<Vector2f> Vector2fMethods[] = 
{
    LUAMETHOD(Vector2f,DotProduct)
    LUAMETHOD(Vector2f,Normalise)
    LUAMETHOD(Vector2f,Rotate)
    { NULL, NULL },
};

luaL_Reg Vector2fGetters[]= 
{
    LUAGETTER(Vector2f,x)
    LUAGETTER(Vector2f,y)
    LUAGETTER(Vector2f,magnitude)
    { NULL, NULL },
};

luaL_Reg Vector2fSetters[]= 
{
    LUASETTER(Vector2f,x)
    LUASETTER(Vector2f,y)
    { NULL, NULL },
};

LUACORETYPEDEFINE(Vector2f,false)

}
}
}