本文整理汇总了C#中CSharpCompletionTextEditorExtension.Initialize方法的典型用法代码示例。如果您正苦于以下问题:C# CSharpCompletionTextEditorExtension.Initialize方法的具体用法?C# CSharpCompletionTextEditorExtension.Initialize怎么用?C# CSharpCompletionTextEditorExtension.Initialize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSharpCompletionTextEditorExtension
的用法示例。
在下文中一共展示了CSharpCompletionTextEditorExtension.Initialize方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Setup
static Document Setup (string input)
{
TestWorkbenchWindow tww = new TestWorkbenchWindow ();
var content = new TestViewContent ();
tww.ViewContent = content;
content.ContentName = "a.cs";
content.GetTextEditorData ().Document.MimeType = "text/x-csharp";
Document doc = new Document (tww);
var text = input;
int endPos = text.IndexOf ('$');
if (endPos >= 0)
text = text.Substring (0, endPos) + text.Substring (endPos + 1);
content.Text = text;
content.CursorPosition = System.Math.Max (0, endPos);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc);
content.Contents.Add (compExt);
doc.UpdateParseDocument ();
return doc;
}
示例2: Setup
static Document Setup (string input)
{
var tww = new TestWorkbenchWindow ();
var content = new TestViewContent ();
var project = new DotNetAssemblyProject ("C#");
project.Name = "test";
project.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
project.References.Add (new ProjectReference (ReferenceType.Package, "System.Core"));
project.FileName = "test.csproj";
TypeSystemService.LoadProject (project);
TypeSystemService.GetProjectContentWrapper (project).ReconnectAssemblyReferences ();
content.Project = project;
tww.ViewContent = content;
content.ContentName = "a.cs";
content.GetTextEditorData ().Document.MimeType = "text/x-csharp";
var doc = new Document (tww);
var text = input;
int endPos = text.IndexOf ('$');
if (endPos >= 0)
text = text.Substring (0, endPos) + text.Substring (endPos + 1);
content.Text = text;
content.CursorPosition = Math.Max (0, endPos);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc);
content.Contents.Add (compExt);
doc.UpdateParseDocument ();
return doc;
}
示例3: Setup
static CSharpTextEditorIndentation Setup (string input, out TestViewContent content)
{
TestWorkbenchWindow tww = new TestWorkbenchWindow ();
content = new TestViewContent ();
content.Data.Options.IndentStyle = IndentStyle.Auto;
tww.ViewContent = content;
content.ContentName = "a.cs";
content.GetTextEditorData ().Document.MimeType = "text/x-csharp";
Document doc = new Document (tww);
var text = input;
int endPos = text.IndexOf ('$');
if (endPos >= 0)
text = text.Substring (0, endPos) + text.Substring (endPos + 1);
content.Text = text;
content.CursorPosition = System.Math.Max (0, endPos);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc);
content.Contents.Add (compExt);
var ext = new CSharpTextEditorIndentation ();
CSharpTextEditorIndentation.OnTheFlyFormatting = true;
ext.Initialize (doc);
content.Contents.Add (ext);
doc.UpdateParseDocument ();
return ext;
}
示例4: Setup
static async Task<Tuple<CSharpCompletionTextEditorExtension,TestViewContent>> Setup (string input)
{
TestWorkbenchWindow tww = new TestWorkbenchWindow ();
TestViewContent content = new TestViewContent ();
tww.ViewContent = content;
content.ContentName = "/a.cs";
content.Data.MimeType = "text/x-csharp";
var doc = new MonoDevelop.Ide.Gui.Document (tww);
var text = input;
int endPos = text.IndexOf ('$');
if (endPos >= 0)
text = text.Substring (0, endPos) + text.Substring (endPos + 1);
content.Text = text;
content.CursorPosition = System.Math.Max (0, endPos);
var project = Services.ProjectService.CreateProject ("C#");
project.Name = "test";
project.FileName = "test.csproj";
project.Files.Add (new ProjectFile (content.ContentName, BuildAction.Compile));
project.Policies.Set (PolicyService.InvariantPolicies.Get<CSharpFormattingPolicy> (), CSharpFormatter.MimeType);
var solution = new MonoDevelop.Projects.Solution ();
solution.AddConfiguration ("", true);
solution.DefaultSolutionFolder.AddItem (project);
using (var monitor = new ProgressMonitor ())
await TypeSystemService.Load (solution, monitor);
content.Project = project;
doc.SetProject (project);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc.Editor, doc);
content.Contents.Add (compExt);
await doc.UpdateParseDocument ();
TypeSystemService.Unload (solution);
return Tuple.Create (compExt, content);
}
示例5: Simulate
static async Task Simulate (string input, Action<TestViewContent, CSharpTextEditorIndentation> act)
{
TestWorkbenchWindow tww = new TestWorkbenchWindow ();
var content = new TestViewContent ();
content.Data.Options = new CustomEditorOptions {
IndentStyle = IndentStyle.Auto
};
tww.ViewContent = content;
content.ContentName = "/a.cs";
content.Data.MimeType = "text/x-csharp";
var doc = new Document (tww);
var sb = new StringBuilder ();
int cursorPosition = 0, selectionStart = -1, selectionEnd = -1;
for (int i = 0; i < input.Length; i++) {
var ch = input [i];
switch (ch) {
case '$':
cursorPosition = sb.Length;
break;
case '<':
if (i + 1 < input.Length) {
if (input [i + 1] == '-') {
selectionStart = sb.Length;
i++;
break;
}
}
goto default;
case '-':
if (i + 1 < input.Length) {
var next = input [i + 1];
if (next == '>') {
selectionEnd = sb.Length;
i++;
break;
}
}
goto default;
default:
sb.Append (ch);
break;
}
}
content.Text = sb.ToString ();
content.CursorPosition = cursorPosition;
var project = Services.ProjectService.CreateProject ("C#");
project.Name = "test";
project.FileName = "test.csproj";
project.Files.Add (new ProjectFile (content.ContentName, BuildAction.Compile));
project.Policies.Set (Projects.Policies.PolicyService.InvariantPolicies.Get<CSharpFormattingPolicy> (), CSharpFormatter.MimeType);
var solution = new MonoDevelop.Projects.Solution ();
solution.AddConfiguration ("", true);
solution.DefaultSolutionFolder.AddItem (project);
using (var monitor = new ProgressMonitor ())
await TypeSystemService.Load (solution, monitor);
content.Project = project;
doc.SetProject (project);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc.Editor, doc);
content.Contents.Add (compExt);
var ext = new CSharpTextEditorIndentation ();
CSharpTextEditorIndentation.OnTheFlyFormatting = true;
ext.Initialize (doc.Editor, doc);
content.Contents.Add (ext);
await doc.UpdateParseDocument ();
if (selectionStart >= 0 && selectionEnd >= 0)
content.GetTextEditorData ().SetSelection (selectionStart, selectionEnd);
try {
act (content, ext);
} finally {
TypeSystemService.Unload (solution);
}
}
示例6: Setup
static CSharpTextEditorIndentation Setup(string input, out TestViewContent content)
{
TestWorkbenchWindow tww = new TestWorkbenchWindow ();
content = new TestViewContent ();
content.Data.Options.IndentStyle = IndentStyle.Auto;
tww.ViewContent = content;
content.ContentName = "a.cs";
content.GetTextEditorData ().Document.MimeType = "text/x-csharp";
Document doc = new Document (tww);
var sb = new StringBuilder ();
int cursorPosition = 0, selectionStart = -1, selectionEnd = -1;
for (int i = 0; i < input.Length; i++) {
var ch = input [i];
switch (ch) {
case '$':
cursorPosition = sb.Length;
break;
case '<':
if (i + 1 < input.Length) {
if (input [i + 1] == '-') {
selectionStart = sb.Length;
i++;
break;
}
}
goto default;
case '-':
if (i + 1 < input.Length) {
var next = input [i + 1];
if (next == '>') {
selectionEnd = sb.Length;
i++;
break;
}
}
goto default;
default:
sb.Append (ch);
break;
}
}
content.Text = sb.ToString ();
content.CursorPosition = cursorPosition;
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc);
content.Contents.Add (compExt);
var ext = new CSharpTextEditorIndentation ();
CSharpTextEditorIndentation.OnTheFlyFormatting = true;
ext.Initialize (doc);
content.Contents.Add (ext);
doc.UpdateParseDocument ();
if (selectionStart >= 0 && selectionEnd >= 0)
content.GetTextEditorData ().SetSelection (selectionStart, selectionEnd);
return ext;
}
示例7: CreateDocument
async Task<Document> CreateDocument (string input)
{
var text = input;
int endPos = text.IndexOf ('$');
if (endPos >= 0)
text = text.Substring (0, endPos) + text.Substring (endPos + 1);
var project = Services.ProjectService.CreateDotNetProject ("C#");
project.Name = "test";
project.References.Add (MonoDevelop.Projects.ProjectReference.CreateAssemblyReference ("mscorlib"));
project.References.Add (MonoDevelop.Projects.ProjectReference.CreateAssemblyReference ("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
project.References.Add (MonoDevelop.Projects.ProjectReference.CreateAssemblyReference ("System.Core"));
project.FileName = "test.csproj";
project.Files.Add (new ProjectFile ("/a.cs", BuildAction.Compile));
solution = new MonoDevelop.Projects.Solution ();
solution.AddConfiguration ("", true);
solution.DefaultSolutionFolder.AddItem (project);
using (var monitor = new ProgressMonitor ())
await TypeSystemService.Load (solution, monitor);
var tww = new TestWorkbenchWindow ();
var content = new TestViewContent ();
tww.ViewContent = content;
content.ContentName = "/a.cs";
content.Data.MimeType = "text/x-csharp";
content.Project = project;
content.Text = text;
content.CursorPosition = Math.Max (0, endPos);
var doc = new Document (tww);
doc.SetProject (project);
var compExt = new CSharpCompletionTextEditorExtension ();
compExt.Initialize (doc.Editor, doc);
content.Contents.Add (compExt);
await doc.UpdateParseDocument ();
return doc;
}