add extend method to widget

pull/214/head
Qingping Hou 11 years ago
parent 82e4863827
commit b49a338121

@ -43,10 +43,24 @@ rather than class variables.
--]]
Widget = EventListener:new()
function Widget:new(o)
--[[
Use this method to define a class that's inherited from current class.
It only setup the metabale (or prototype chain) and will not initiatie
a real instance, i.e. call self:init()
--]]
function Widget:extend(o)
local o = o or {}
setmetatable(o, self)
self.__index = self
return o
end
--[[
Use this method to initiatie a instance of a class, don't use it for class
definition.
--]]
function Widget:new(o)
o = self:extend(o)
-- Both o._init and o.init are called on object create. But o._init is used
-- for base widget initialization (basic component used to build other
-- widgets). While o.init is for higher level widgets, for example Menu

Loading…
Cancel
Save