개정판 3f1068a7
Fix: CloudControl, InkControl, PolygonControl 에 대하여 Undo/Redo 구현
Change-Id: Iff07dcdae6c85c620d58128a67667e432bb0e30a
MarkupToPDF/Controls/Polygon/CloudControl.cs | ||
---|---|---|
18 | 18 |
|
19 | 19 |
namespace MarkupToPDF.Controls.Polygon |
20 | 20 |
{ |
21 |
public class CloudControl : CommentUserInfo, IDisposable, INotifyPropertyChanged, IPath, IShapeControl, ICloudControl, IDashControl
|
|
21 |
public class CloudControl : CommentUserInfo, IDisposable, INotifyPropertyChanged, IShapeControl, ICloudControl, IDashControl |
|
22 | 22 |
{ |
23 | 23 |
private const string PART_CloudPath = "PART_CloudPath"; |
24 | 24 |
private const string PART_CloudSubPath = "PART_CloudSubPath"; |
... | ... | |
41 | 41 |
//this.DefaultStyleKey = typeof(CloudControl); |
42 | 42 |
} |
43 | 43 |
|
44 |
public override void Copy(CommentUserInfo lhs) |
|
45 |
{ |
|
46 |
if (lhs is CloudControl item) |
|
47 |
{ |
|
48 |
this.LineSize = item.LineSize; |
|
49 |
this.Toler = item.Toler; |
|
50 |
this.PointSet = item.PointSet.ConvertAll(x => new Point(x.X, x.Y)); |
|
51 |
this.ArcLength = item.ArcLength; |
|
52 |
this.Paint = item.Paint; |
|
53 |
this.Opacity = item.Opacity; |
|
54 |
this.StrokeColor = item.StrokeColor; |
|
55 |
this.isTransOn = item.isTransOn; |
|
56 |
this.isChain = item.isChain; |
|
57 |
this.DashSize = item.DashSize; |
|
58 |
this.UserID = item.UserID; |
|
59 |
this.StartPoint = new Point(item.StartPoint.X, item.StartPoint.Y); |
|
60 |
this.EndPoint = new Point(item.EndPoint.X, item.EndPoint.Y); |
|
61 |
this.Memo = item.Memo; |
|
62 |
} |
|
63 |
} |
|
64 |
|
|
65 |
public override CommentUserInfo Clone() |
|
66 |
{ |
|
67 |
var clone = new CloudControl(); |
|
68 |
clone.Copy(this); |
|
69 |
return clone; |
|
70 |
} |
|
71 |
|
|
44 | 72 |
#region Dependency Properties |
45 | 73 |
public static readonly DependencyProperty UserIDProperty = DependencyProperty.Register( |
46 | 74 |
"UserID", typeof(string), typeof(CloudControl), new PropertyMetadata(null)); |
내보내기 Unified diff