Simple in-place editing integrated with component/model