本文整理汇总了C#中IDocument.GetService方法的典型用法代码示例。如果您正苦于以下问题:C# IDocument.GetService方法的具体用法?C# IDocument.GetService怎么用?C# IDocument.GetService使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IDocument
的用法示例。
在下文中一共展示了IDocument.GetService方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Initialize
public void Initialize(IDocument document)
{
if (changeList != null && changeList.Any())
return;
this.document = document;
this.textDocument = (TextDocument)document.GetService(typeof(TextDocument));
this.changeList = new CompressingTreeList<LineChangeInfo>((x, y) => x.Equals(y));
Stream baseFileStream = GetBaseVersion();
// TODO : update baseDocument on VCS actions
if (baseFileStream != null) {
// ReadAll() is taking care of closing the stream
baseDocument = DocumentUtilitites.LoadReadOnlyDocumentFromBuffer(new StringTextBuffer(ReadAll(baseFileStream)));
} else {
if (baseDocument == null) {
// if the file is not under subversion, the document is the opened document
var doc = new TextDocument(textDocument.Text);
baseDocument = new AvalonEditDocumentAdapter(doc, null);
}
}
SetupInitialFileState(false);
this.textDocument.LineTrackers.Add(this);
this.textDocument.UndoStack.PropertyChanged += UndoStackPropertyChanged;
}
示例2: Initialize
public void Initialize(IDocument document)
{
if (this.document == null) {
this.document = document;
this.textDocument = (TextDocument)document.GetService(typeof(TextDocument));
this.changeList = new CompressingTreeList<LineChangeInfo>((x, y) => x.Equals(y));
}
var fileName = ((ITextEditor)document.GetService(typeof(ITextEditor))).FileName;
InitializeBaseDocument();
if (watcher != null)
watcher.Dispose();
if (usedProvider != null)
watcher = usedProvider.WatchBaseVersionChanges(fileName, HandleBaseVersionChanges);
SetupInitialFileState(fileName != currentFileName);
currentFileName = fileName;
if (!this.textDocument.LineTrackers.Contains(this)) {
this.textDocument.LineTrackers.Add(this);
this.textDocument.UndoStack.PropertyChanged += UndoStackPropertyChanged;
}
}
示例3: SetUpTestFixture
public void SetUpTestFixture()
{
try {
string configFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "NCoverAddIn.Tests");
PropertyService.InitializeService(configFolder, Path.Combine(configFolder, "data"), "NCoverAddIn.Tests");
} catch (Exception) {}
document = MockTextMarkerService.CreateDocumentWithMockService();
markerStrategy = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
string code = "\t\t{\r\n" +
"\t\t\tint count = 0;\r\n" +
"\t\t}\r\n";
document.Text = code;
string xml = "<PartCoverReport>\r\n" +
"\t<File id=\"1\" url=\"c:\\Projects\\Foo\\FooTestFixture.cs\"/>\r\n" +
"\t<Assembly id=\"1\" name=\"Foo.Tests\" module=\"C:\\Projects\\Test\\bin\\Foo.Tests.DLL\" domain=\"test-domain-Foo.Tests.dll\" domainIdx=\"1\" />\r\n" +
"\t<Type name=\"Foo.Tests.FooTestFixture\" asmref=\"1\">\r\n" +
"\t\t<Method name=\"SimpleTest\">\r\n" +
"\t\t\t<pt visit=\"1\" sl=\"1\" sc=\"3\" el=\"1\" ec=\"4\" fid=\"1\" />\r\n" +
"\t\t\t<pt visit=\"1\" sl=\"2\" sc=\"4\" el=\"2\" ec=\"18\" fid=\"1\" />\r\n" +
"\t\t\t<pt visit=\"0\" sl=\"3\" sc=\"3\" el=\"3\" ec=\"4\" fid=\"1\" />\r\n" +
"\t\t</Method>\r\n" +
"\t</Type>\r\n" +
"</PartCoverReport>";
CodeCoverageResults results = new CodeCoverageResults(new StringReader(xml));
CodeCoverageMethod method = results.Modules[0].Methods[0];
CodeCoverageHighlighter highlighter = new CodeCoverageHighlighter();
highlighter.AddMarkers(document, method.SequencePoints);
// Add non-code coverage markers.
markerStrategy.Create(0, 2);
markerStrategy.Create(4, 5);
}
示例4: RemoveMarkers
/// <summary>
/// Removes all CodeCoverageMarkers from the marker strategy.
/// </summary>
public void RemoveMarkers(IDocument document)
{
ITextMarkerService markerService = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
if (markerService != null) {
markerService.RemoveAll(IsCodeCoverageTextMarker);
}
}
示例5: SetUpFixture
public void SetUpFixture()
{
try {
//string configFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "NCoverAddIn.Tests");
//PropertyService.InitializeService(configFolder, Path.Combine(configFolder, "data"), "NCoverAddIn.Tests");
} catch (Exception) {}
document = MockTextMarkerService.CreateDocumentWithMockService();
string code = "\t\t{\r\n" +
"\t\t\treturn \"<?xml version=\\\"1.0\\\"?>\\r\\n\" +\r\n" +
"\t\t\t\t\"<xs:schema xmlns:xs=\\\"http://www.w3.org/2001/XMLSchema\\\"\\r\\n\" +\r\n" +
"\t\t\t\t\"targetNamespace=\\\"http://www.w3schools.com\\\"\\r\\n\" +\r\n" +
"\t\t\t\t\"xmlns=\\\"http://www.w3schools.com\\\"\\r\\n\" +\r\n" +
"\t\t\t\t\"elementFormDefault=\\\"qualified\\\">\\r\\n\" +\r\n" +
"\t\t\t\t\"<xs:element name=\\\"note\\\">\\r\\n\" +\r\n" +
"\t\t\t\t\"</xs:element>\\r\\n\" +\r\n" +
"\t\t\t\t\"</xs:schema>\";\r\n" +
"\t\t}\r\n";
document.Text = code;
ITextMarkerService markerStrategy = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
string xml = "<CoverageSession xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\r\n" +
"\t<Modules>\r\n" +
"\t\t<Module hash=\"44-54-B6-13-97-49-45-F8-6A-74-9E-49-0C-77-87-C6-9C-54-47-7A\">\r\n" +
"\t\t\t<FullName>C:\\Projects\\Test\\Foo.Tests\\bin\\Foo.Tests.DLL</FullName>\r\n" +
"\t\t\t<ModuleName>Foo.Tests</ModuleName>\r\n" +
"\t\t\t<Files>\r\n" +
"\t\t\t\t<File uid=\"1\" fullPath=\"c:\\Projects\\Foo\\FooTestFixture.cs\" />\r\n" +
"\t\t\t</Files>\r\n" +
"\t\t\t<Classes>\r\n" +
"\t\t\t\t<Class>\r\n" +
"\t\t\t\t\t<FullName>Foo.Tests.FooTestFixture</FullName>\r\n" +
"\t\t\t\t\t<Methods>\r\n" +
"\t\t\t\t\t\t<Method visited=\"true\" cyclomaticComplexity=\"1\" sequenceCoverage=\"100\" branchCoverage=\"100\" isConstructor=\"false\" isStatic=\"false\" isGetter=\"false\" isSetter=\"false\">\r\n" +
"\t\t\t\t\t\t\t<MetadataToken>100663297</MetadataToken>\r\n" +
"\t\t\t\t\t\t\t<Name>System.Void Foo.Tests.FooTestFixture::SimpleTest()</Name>\r\n" +
"\t\t\t\t\t\t\t<FileRef uid=\"1\" />\r\n" +
"\t\t\t\t\t\t\t<SequencePoints>\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"1\" sl=\"1\" sc=\"3\" el=\"1\" ec=\"4\" />\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"1\" sl=\"2\" sc=\"4\" el=\"9\" ec=\"20\" />\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"1\" sl=\"10\" sc=\"3\" el=\"10\" ec=\"4\" />\r\n" +
"\t\t\t\t\t\t\t</SequencePoints>\r\n" +
"\t\t\t\t\t\t</Method>\r\n" +
"\t\t\t\t\t</Methods>\r\n" +
"\t\t\t\t</Class>\r\n" +
"\t\t\t</Classes>\r\n" +
"\t\t</Module>\r\n" +
"\t</Modules>\r\n" +
"</CoverageSession>";
CodeCoverageResults results = new CodeCoverageResults(new StringReader(xml));
CodeCoverageMethod method = results.Modules[0].Methods[0];
CodeCoverageHighlighter highlighter = new CodeCoverageHighlighter();
highlighter.AddMarkers(document, method.SequencePoints);
markers = new List<ITextMarker>();
foreach (ITextMarker marker in markerStrategy.TextMarkers) {
markers.Add(marker);
}
}
示例6: SetUpFixture
public void SetUpFixture()
{
try {
string configFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "NCoverAddIn.Tests");
PropertyService.InitializeService(configFolder, Path.Combine(configFolder, "data"), "NCoverAddIn.Tests");
} catch (Exception) {}
document = MockTextMarkerService.CreateDocumentWithMockService();
string code = "\t\t{\r\n" +
"\t\t\tint count = 0;\r\n" +
"\t\t}\r\n";
document.Text = code;
markerStrategy = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
string xml = "<CoverageSession xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\r\n" +
"\t<Modules>\r\n" +
"\t\t<Module hash=\"44-54-B6-13-97-49-45-F8-6A-74-9E-49-0C-77-87-C6-9C-54-47-7A\">\r\n" +
"\t\t\t<FullName>C:\\Projects\\Test\\Foo.Tests\\bin\\Foo.Tests.DLL</FullName>\r\n" +
"\t\t\t<ModuleName>Foo.Tests</ModuleName>\r\n" +
"\t\t\t<Files>\r\n" +
"\t\t\t\t<File uid=\"1\" fullPath=\"c:\\Projects\\Foo\\FooTestFixture.cs\" />\r\n" +
"\t\t\t</Files>\r\n" +
"\t\t\t<Classes>\r\n" +
"\t\t\t\t<Class>\r\n" +
"\t\t\t\t\t<FullName>Foo.Tests.FooTestFixture</FullName>\r\n" +
"\t\t\t\t\t<Methods>\r\n" +
"\t\t\t\t\t\t<Method visited=\"true\" cyclomaticComplexity=\"1\" sequenceCoverage=\"100\" branchCoverage=\"100\" isConstructor=\"false\" isStatic=\"false\" isGetter=\"false\" isSetter=\"false\">\r\n" +
"\t\t\t\t\t\t\t<MetadataToken>100663297</MetadataToken>\r\n" +
"\t\t\t\t\t\t\t<Name>System.Void Foo.Tests.FooTestFixture::SimpleTest()</Name>\r\n" +
"\t\t\t\t\t\t\t<FileRef uid=\"1\" />\r\n" +
"\t\t\t\t\t\t\t<SequencePoints>\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"1\" sl=\"1\" sc=\"3\" el=\"1\" ec=\"4\" />\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"1\" sl=\"2\" sc=\"4\" el=\"2\" ec=\"18\" />\r\n" +
"\t\t\t\t\t\t\t\t<SequencePoint vc=\"0\" sl=\"3\" sc=\"3\" el=\"3\" ec=\"4\" />\r\n" +
"\t\t\t\t\t\t\t</SequencePoints>\r\n" +
"\t\t\t\t\t\t</Method>\r\n" +
"\t\t\t\t\t</Methods>\r\n" +
"\t\t\t\t</Class>\r\n" +
"\t\t\t</Classes>\r\n" +
"\t\t</Module>\r\n" +
"\t</Modules>\r\n" +
"</CoverageSession>";
CodeCoverageResults results = new CodeCoverageResults(new StringReader(xml));
CodeCoverageMethod method = results.Modules[0].Methods[0];
CodeCoverageHighlighter highlighter = new CodeCoverageHighlighter();
highlighter.AddMarkers(document, method.SequencePoints);
foreach (ITextMarker marker in markerStrategy.TextMarkers) {
if (markerOne == null) {
markerOne = marker;
} else if (markerTwo == null) {
markerTwo = marker;
} else if (markerThree == null) {
markerThree = marker;
}
}
}
示例7: Init
public void Init()
{
document = MockTextMarkerService.CreateDocumentWithMockService();
markerService = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
document.Text =
"{\r\n" +
" int count = 0;\r\n" +
"}\r\n";
}
示例8: CreateHighlighter
public ISyntaxHighlighter CreateHighlighter(IDocument document, string fileName)
{
var def = HighlightingManager.Instance.GetDefinitionByExtension(Path.GetExtension(fileName));
var doc = document.GetService(typeof(TextDocument)) as TextDocument;
if (def == null || doc == null)
return null;
var baseHighlighter = new DocumentHighlighter(doc, def.MainRuleSet);
var highlighter = new CustomizableHighlightingColorizer.CustomizingHighlighter(CustomizedHighlightingColor.FetchCustomizations(def.Name), baseHighlighter);
return new DocumentSyntaxHighlighter(document, highlighter, def.Name);
}
示例9: Initialize
public void Initialize(IDocument document)
{
if (changeList != null && changeList.Any())
return;
this.document = document;
this.textDocument = (TextDocument)document.GetService(typeof(TextDocument));
this.changeList = new CompressingTreeList<LineChangeInfo>((x, y) => x.Equals(y));
InitializeBaseDocument();
if (usedProvider != null) {
string fileName = ((ITextEditor)document.GetService(typeof(ITextEditor))).FileName;
watcher = usedProvider.WatchBaseVersionChanges(fileName, HandleBaseVersionChanges);
}
SetupInitialFileState(false);
this.textDocument.LineTrackers.Add(this);
this.textDocument.UndoStack.PropertyChanged += UndoStackPropertyChanged;
}
示例10: AddMarker
public void AddMarker(IDocument document, CodeCoverageSequencePoint sequencePoint)
{
if (!IsValidSequencePoint(document, sequencePoint)) {
return;
}
ITextMarkerService markerService = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
if (markerService != null) {
int startOffset = document.PositionToOffset(sequencePoint.Line, sequencePoint.Column);
int endOffset = document.PositionToOffset(sequencePoint.EndLine, sequencePoint.EndColumn);
ITextMarker marker = markerService.Create(startOffset, endOffset - startOffset);
marker.Tag = typeof(CodeCoverageHighlighter);
marker.BackgroundColor = GetSequencePointColor(sequencePoint);
marker.ForegroundColor = GetSequencePointForeColor(sequencePoint);
}
}
示例11: XPathNodeTextMarker
public XPathNodeTextMarker(IDocument document)
{
this.document = document;
markerService = document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
}