Browse Source

Draw Path extension now works.

pull/637/head
jkuehner 11 years ago
parent
commit
93d8671d9b
  1. 9
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Extensions/DrawPathExtension.cs

9
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Extensions/DrawPathExtension.cs

@ -73,7 +73,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions @@ -73,7 +73,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
var geometryDesignItem = createdItem.Services.Component.RegisterComponentForDesigner(geometry);
var figureDesignItem = createdItem.Services.Component.RegisterComponentForDesigner(figure);
createdItem.Properties[Path.DataProperty].SetValue(geometry);
geometryDesignItem.Properties[PathGeometry.FiguresProperty].CollectionElements.Add(figureDesignItem);
//geometryDesignItem.Properties[PathGeometry.FiguresProperty].CollectionElements.Add(figureDesignItem);
figureDesignItem.Properties[PathFigure.StartPointProperty].SetValue(new Point(0,0));
new DrawPathMouseGesture(figure, createdItem, clickedOn.View, changeGroup).Start(panel, (MouseButtonEventArgs) e);
@ -87,6 +87,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions @@ -87,6 +87,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
private DesignItem newLine;
private Point startPoint;
private PathFigure figure;
private DesignItem geometry;
public DrawPathMouseGesture(PathFigure figure, DesignItem newLine, IInputElement relativeTo, ChangeGroup changeGroup)
{
@ -97,6 +98,8 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions @@ -97,6 +98,8 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
figure.Segments.Add(new LineSegment());
startPoint = Mouse.GetPosition(null);
geometry = newLine.Properties[Path.DataProperty].Value;
}
protected override void OnPreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
@ -115,6 +118,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions @@ -115,6 +118,7 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
{
((LineSegment)segment).Point = point;
}
geometry.Properties[PathGeometry.FiguresProperty].SetValue(figure.ToString());
}
protected override void OnMouseUp(object sender, MouseButtonEventArgs e)
@ -123,14 +127,13 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions @@ -123,14 +127,13 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
var point = new Point(delta.X, delta.Y);
figure.Segments.Add(new LineSegment(point, false));
geometry.Properties[PathGeometry.FiguresProperty].SetValue(figure.ToString());
}
protected override void OnMouseDoubleClick(object sender, MouseButtonEventArgs e)
{
base.OnMouseDoubleClick(sender, e);
var geometry = newLine.Properties[Path.DataProperty].Value;
geometry.Properties[PathGeometry.FiguresProperty].CollectionElements.Clear();
geometry.Properties[PathGeometry.FiguresProperty].SetValue(figure.ToString());
if (changeGroup != null) {

Loading…
Cancel
Save