Fix callback type, add SetMethod()