func doBeginAdd(_data) if(not isset(G_SCENE)) gvar(G_SCENE) end G_SCENE = gscene if(isndef(AddMode)) println('while(' + gscene + '->items().count()) {') block.inclvl() println('QGraphicsItem *' + item + ' = ' + gscene + '->items()[0];') println(gscene + '->removeItem(' + item + ');') println('delete ' + item + ';') block.declvl() println('}') end event(onBeginAdd, _data) end func init() lng.decl_priv_var(gscene, 'QGraphicsScene*') fvar(old) old = block.select(BLK_INIT) println(gscene, ' = new QGraphicsScene(this);') block.select(old) if(not linked(doBeginAdd)) doBeginAdd('') end end func Scene() return(gscene) end