implement setting a Delegate