Rewrote BaseView as decorator pattern