protected override IEnumerable <object> OnGetContents(Type type) { if (type == typeof(ITextBuffer)) { yield return(data.TextView.TextBuffer); yield break; } foreach (var c in data.GetContents(type)) { yield return(c); } foreach (var content in base.OnGetContents(type)) { yield return(content); } foreach (var content in contents) { if (type.IsInstanceOfType(content)) { yield return(content); } } }