properly implemented Dispose and moved IconTypeToString to GetEnumDescription. Added testinput widget