Exemplo n.º 1
0
namespace Lua {


//methods
int ElementDataGridAddColumn(lua_State* L, ElementDataGrid* obj)
{
    LUACHECKOBJ(obj);
    const char* fields = luaL_checkstring(L,1);
    const char* formatter = luaL_checkstring(L,2);
    float width = (float)luaL_checknumber(L,3);
    const char* rml = luaL_checkstring(L,4);

    obj->AddColumn(fields,formatter,width,rml);
    return 0;
}

int ElementDataGridSetDataSource(lua_State* L, ElementDataGrid* obj)
{
    LUACHECKOBJ(obj);
    const char* source = luaL_checkstring(L,1);
    
    obj->SetDataSource(source);
    return 0;
}


//getter
int ElementDataGridGetAttrrows(lua_State* L)
{
    ElementDataGrid* obj = LuaType<ElementDataGrid>::check(L,1);
    LUACHECKOBJ(obj);

    lua_newtable(L);
    int tbl = lua_gettop(L);
    int numrows = obj->GetNumRows();
    ElementDataGridRow* row;
    for(int i = 0; i < numrows; i++)
    {
        row = obj->GetRow(i);
        LuaType<ElementDataGridRow>::push(L,row,false);
        lua_rawseti(L,tbl,i);
    }
    return 1;
}



Rocket::Core::Lua::RegType<ElementDataGrid> ElementDataGridMethods[] =
{
    LUAMETHOD(ElementDataGrid,AddColumn)
    LUAMETHOD(ElementDataGrid,SetDataSource)
    { NULL, NULL },
};

luaL_Reg ElementDataGridGetters[] =
{
    LUAGETTER(ElementDataGrid,rows)
    { NULL, NULL },
};

luaL_Reg ElementDataGridSetters[] =
{
    { NULL, NULL },
};


}
Exemplo n.º 2
0
namespace Lua {

//method
int EventStopPropagation(lua_State* L, Event* obj)
{
    obj->StopPropagation();
    return 0;
}

//getters
int EventGetAttrcurrent_element(lua_State* L)
{
    Event* evt = LuaType<Event>::check(L,1);
    LUACHECKOBJ(evt);
    Element* ele = evt->GetCurrentElement();
    LuaType<Element>::push(L,ele,false);
    return 1;
}

int EventGetAttrtype(lua_State* L)
{
    Event* evt = LuaType<Event>::check(L,1);
    LUACHECKOBJ(evt);
    String type = evt->GetType();
    lua_pushstring(L,type.CString());
    return 1;
}

int EventGetAttrtarget_element(lua_State* L)
{
    Event* evt = LuaType<Event>::check(L,1);
    LUACHECKOBJ(evt);
    Element* target = evt->GetTargetElement();
    LuaType<Element>::push(L,target,false);
    return 1;
}

int EventGetAttrparameters(lua_State* L)
{
    Event* evt = LuaType<Event>::check(L,1);
    LUACHECKOBJ(evt);
    const Dictionary* params = evt->GetParameters();
    int index = 0;
    String key;
    Variant* value;

    lua_newtable(L);
    int tableindex = lua_gettop(L);
    while(params->Iterate(index,key,value))
    {
        lua_pushstring(L,key.CString());
        Variant::Type type = value->GetType();
        switch(type)
        {
        case Variant::BYTE:
        case Variant::CHAR:
        case Variant::INT:
            lua_pushinteger(L,value->Get<int>());
            break;
        case Variant::FLOAT:
            lua_pushnumber(L,value->Get<float>());
            break;
        case Variant::COLOURB:
            LuaType<Colourb>::push(L,&value->Get<Colourb>(),false);
            break;
        case Variant::COLOURF:
            LuaType<Colourf>::push(L,&value->Get<Colourf>(),false);
            break;
        case Variant::STRING:
            lua_pushstring(L,value->Get<String>().CString());
            break;
        case Variant::VECTOR2:
            //according to Variant.inl, it is going to be a Vector2f
            LuaType<Vector2f>::push(L,&value->Get<Vector2f>(),false);
            break;
        case Variant::VOIDPTR:
            lua_pushlightuserdata(L,value->Get<void*>());
            break;
        default:
            lua_pushnil(L);
            break;
        }
        lua_settable(L,tableindex);
    }
    return 1;
}



//setters
/*
//Apparently, the dictionary returned is constant, and shouldn't be modified.
//I am keeping this function in case that isn't the case
int EventSetAttrparameters(lua_State* L)
{
    Event* evt = LuaType<Event>::check(L,1);
    LUACHECKOBJ(evt);
    const Dictionary* params = evt->GetParameters();
    int valtype = lua_type(L,2);
    if(valtype == LUA_TTABLE) //if the user gives a table, then go through the table and set everything
    {
        lua_pushnil(L); //becauase lua_next pops a key from the stack first, we don't want to pop the table
        while(lua_next(L,2) != 0)
        {
            //[-1] is value, [-2] is key
            int type = lua_type(L,-1);
            const char* key = luaL_checkstring(L,-2); //key HAS to be a string, or things will go bad
            switch(type)
            {
		    case LUA_TNUMBER:
                params->Set(key,(float)lua_tonumber(L,-1));
                break;
		    case LUA_TBOOLEAN: 
                params->Set(key,CHECK_BOOL(L,-1));
                break;
		    case LUA_TSTRING:
                params->Set(key,luaL_checkstring(L,-1));
                break;
            case LUA_TUSERDATA:
            case LUA_TLIGHTUSERDATA:
                params->Set(key,lua_touserdata(L,-1));
                break;
            default:
                break;
            }
        }
    }
    else if(valtype == LUA_TNIL)
    {
        params->Clear();
    }
    return 0;
}
*/


RegType<Event> EventMethods[] =
{
    LUAMETHOD(Event,StopPropagation)
    { NULL, NULL },
};

luaL_reg EventGetters[] =
{
    LUAGETTER(Event,current_element)
    LUAGETTER(Event,type)
    LUAGETTER(Event,target_element)
    LUAGETTER(Event,parameters)
    { NULL, NULL },
};

luaL_reg EventSetters[] =
{
    //LUASETTER(Event,parameters)
    { NULL, NULL },
};

/*
template<> const char* GetTClassName<Event>() { return "Event"; }
template<> RegType<Event>* GetMethodTable<Event>() { return EventMethods; }
template<> luaL_reg* GetAttrTable<Event>() { return EventGetters; }
template<> luaL_reg* SetAttrTable<Event>() { return EventSetters; }
*/
}
Exemplo n.º 3
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)
}
}
}
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.º 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
            obj->green = luaL_checkint(L,2);
        }
        obj->red = luaL_checkint(L,1);
    }
    return 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 },
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
            obj->green = (float)luaL_checknumber(L,2);
        }
        obj->red = (float)luaL_checknumber(L,1);
    }
    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)
    LUASETTER(Colourf,rgba)
    { NULL, NULL },
Exemplo n.º 13
0
    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 },
};

LUACORETYPEDEFINE(Vector2f,false)

}