Extend Widget class pattern