made header widget extedn AbstractWidget instead of ArrayWidget