internal static void Register(Document document, IMonoDevelopHostDocument hostDocument) { if (document.TryGetText(out SourceText sourceText)) { ITextBuffer textBuffer = sourceText.Container.TryGetTextBuffer(); textBuffer?.Properties.AddProperty(typeof(IMonoDevelopHostDocument), hostDocument); } }
internal static IMonoDevelopHostDocument FromDocument(Document document) { IMonoDevelopHostDocument containedDocument = null; if (document.TryGetText(out SourceText sourceText)) { ITextBuffer textBuffer = sourceText.Container.TryGetTextBuffer(); containedDocument = textBuffer?.Properties.GetProperty <IMonoDevelopHostDocument> (typeof(IMonoDevelopHostDocument)); } return(containedDocument); }
internal static IMonoDevelopHostDocument FromDocument(TextDocument document) { IMonoDevelopHostDocument containedDocument = null; if (document.TryGetText(out SourceText sourceText)) { ITextBuffer textBuffer = sourceText.Container.TryGetTextBuffer(); var properties = textBuffer?.Properties; if (properties == null) { return(null); } if (properties.ContainsProperty(typeof(IMonoDevelopHostDocument))) { containedDocument = properties.GetProperty <IMonoDevelopHostDocument> (typeof(IMonoDevelopHostDocument)); } } return(containedDocument); }
internal static void Register(ITextBuffer textBuffer, IMonoDevelopHostDocument hostDocument) { textBuffer?.Properties.AddProperty(typeof(IMonoDevelopHostDocument), hostDocument); }