add setNeedRender