extend widgetImpl