public override IdeationUnit Clone() { IdeationUnit clone = new StrokeBasedIdea(); clone.Id = _id; clone.IsAvailable = _isAvailable; clone.Content = _content; return clone; }
public override IdeationUnit Clone() { IdeationUnit clone = new StrokeBasedIdea(); clone.Id = _id; clone.IsAvailable = _isAvailable; clone.Content = _content; return(clone); }
private void drawingCanvas_StrokeCollected(object sender, InkCanvasStrokeCollectedEventArgs e) { try { sv_MainCanvas.IsHitTestVisible = true; Stroke latestStroke = e.Stroke; StylusPointCollection strokePoints = latestStroke.StylusPoints; if (!DrawingCanvasModeSwitcher.IsInErasingMode() && strokePoints.Count < 10) { return; } List<System.Windows.Point> pathPoints = new List<System.Windows.Point>(); foreach (StylusPoint stylusP in strokePoints) { System.Windows.Point p = new System.Windows.Point(); p.X = stylusP.X; p.Y = stylusP.Y; pathPoints.Add(p); } /*if (Utilities.UtilitiesLib.CheckClosedPath(pathPoints)) { System.Windows.Point orginTopleft, orginBottomRight, orginCenter; Utilities.UtilitiesLib.extractAnchorPointsOfPath(pathPoints,out orginTopleft,out orginBottomRight,out orginCenter); IdeationUnitGroup idea = new IdeationUnitGroup(); IdeaGroupContentType ideaGroupContent = new IdeaGroupContentType(); ideaGroupContent.DisplayBoundaries = pathPoints; idea.Content = ideaGroupContent; idea.Id = IdeaIDGenerator.generateID(); idea.CenterX = (float)orginCenter.X; idea.CenterY = (float)orginCenter.Y; AddSingleIdeaGroup(idea); }*/ //add corresponding idea object for this stroke IdeationUnit strokeIdea = new StrokeBasedIdea(); strokeIdea.Id = IdeaIDGenerator.generateID(); StrokeData strokeData = new StrokeData(); strokeData.IsErasingStroke = DrawingCanvasModeSwitcher.IsInErasingMode(); strokeData.StrokeColorCode = new System.Windows.Media.ColorConverter().ConvertToString(latestStroke.DrawingAttributes.Color); strokeData.StrokePoints = pathPoints; strokeIdea.Content = strokeData; brainstormManager.AddIdeaInBackground(strokeIdea); //get the current screenshot TakeASnapshot(); timelineManager.AddADDChange(strokeIdea); } catch (Exception ex) { Utilities.UtilitiesLib.LogError(ex); } }