Browse Source

fix #249 - SD5 WinForms Designer does not load event handlers.

add missing documentation to DocumentPrinter.cs
pull/315/head
Siegfried Pammer 12 years ago
parent
commit
d22ee70132
  1. 9
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Utils/DocumentPrinter.cs
  2. 11
      src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CodeDomConvertVisitor.cs

9
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Utils/DocumentPrinter.cs

@ -21,6 +21,9 @@ namespace ICSharpCode.AvalonEdit.Utils @@ -21,6 +21,9 @@ namespace ICSharpCode.AvalonEdit.Utils
/// </summary>
public static class DocumentPrinter
{
/// <summary>
/// Converts a readonly TextDocument to a Block and applies the provided highlighting definition.
/// </summary>
public static Block ConvertTextDocumentToBlock(ReadOnlyDocument document, IHighlightingDefinition highlightingDefinition)
{
IHighlighter highlighter;
@ -31,6 +34,9 @@ namespace ICSharpCode.AvalonEdit.Utils @@ -31,6 +34,9 @@ namespace ICSharpCode.AvalonEdit.Utils
return ConvertTextDocumentToBlock(document, highlighter);
}
/// <summary>
/// Converts a readonly TextDocument to a Block and applies the provided highlighter.
/// </summary>
public static Block ConvertTextDocumentToBlock(IDocument document, IHighlighter highlighter)
{
if (document == null)
@ -61,6 +67,9 @@ namespace ICSharpCode.AvalonEdit.Utils @@ -61,6 +67,9 @@ namespace ICSharpCode.AvalonEdit.Utils
return p;
}
/// <summary>
/// Creates a flow document from the editor's contents.
/// </summary>
public static FlowDocument CreateFlowDocumentForEditor(TextEditor editor)
{
IHighlighter highlighter = editor.TextArea.GetService(typeof(IHighlighter)) as IHighlighter;

11
src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CodeDomConvertVisitor.cs

@ -27,6 +27,7 @@ using ICSharpCode.NRefactory.CSharp.TypeSystem; @@ -27,6 +27,7 @@ using ICSharpCode.NRefactory.CSharp.TypeSystem;
using ICSharpCode.NRefactory.PatternMatching;
using ICSharpCode.NRefactory.Semantics;
using ICSharpCode.NRefactory.TypeSystem;
using Mono.CSharp;
namespace ICSharpCode.NRefactory.CSharp
{
@ -887,6 +888,14 @@ namespace ICSharpCode.NRefactory.CSharp @@ -887,6 +888,14 @@ namespace ICSharpCode.NRefactory.CSharp
return new CodeAssignStatement(Convert(unary.Expression), cboe);
}
}
if (assignment != null && assignment.Operator == AssignmentOperatorType.Add) {
var rr = Resolve(assignment.Left);
if (!rr.IsError && rr.Type.Kind == TypeKind.Delegate) {
var expr = (MemberReferenceExpression)assignment.Left;
var memberRef = (CodeEventReferenceExpression)HandleMemberReference(Convert(expr.Target), expr.MemberName, expr.TypeArguments, (MemberResolveResult)rr);
return new CodeAttachEventStatement(memberRef, Convert(assignment.Right));
}
}
return new CodeExpressionStatement(Convert(expressionStatement.Expression));
}
@ -1260,7 +1269,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1260,7 +1269,7 @@ namespace ICSharpCode.NRefactory.CSharp
var cn = cu.Namespaces [j];
bool found = cn.Imports
.Cast<CodeNamespaceImport> ()
.Any (ns => ns.Namespace == gi.Namespace);
.Any (ns => ns.Namespace == gi.Namespace);
if (!found)
cn.Imports.Add (gi);
}

Loading…
Cancel
Save