updated view widget to extends base widget instead of abstractView class