/// <summary> /// Disposes resources used by the control. /// </summary> /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> protected override void Dispose(bool disposing) { if (disposing) { // Piccolo has some static fields which reference the current canvas. // Canvas references us through events -> we never get cleanup. // Therefor we must unsubscribe from all events. FCanvas.RemoveInputEventListener(FSelectionEventHandler); FCanvas.RemoveInputEventListener(FDragDropEventHandler); FCanvas.RemoveInputEventListener(FMyPanEventHandler); FCanvas.RemoveInputEventListener(FMyZoomEventHandler); FCanvas.RemoveInputEventListener(FPathEventHandler); FCanvas.RemoveInputEventListener(FEventPassThrougHandler); FCanvas.KeyPress -= FCanvas_KeyPress; FCanvas.KeyDown -= FCanvas_KeyDown; FCanvas.KeyUp -= FCanvas_KeyUp; if (components != null) { components.Dispose(); } } base.Dispose(disposing); }
public override void Undo() { foreach (IShape wShape in FShapes) { wShape.IsSelected = true; wShape.Move(FEndPoint, FStartPoint); } FCanvas.Draw(); }
public override void Undo() { foreach (IShape wShape in FShapes) { wShape.IsSelected = true; wShape.Rotate(FAngle * -1); } FCanvas.Draw(); }
public override void Execute() { foreach (IShape wShape in FBaseShapes) { wShape.IsSelected = false; } FCanvas.Shapes.AddRange(FShapes); FCanvas.Draw(); }
public override void Undo() { foreach (IShape wShape in FBaseShapes) { wShape.IsSelected = true; FCanvas.Shapes.RemoveAt(FCanvas.Shapes.Count - 1); } FCanvas.Draw(); }
public GraphEditor() { // // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); SolidLayer = FCanvas.Layer; LinkLayer = new PLayer(); FCanvas.Root.AddChild(LinkLayer); //add linklayer below nodelayer FCanvas.Camera.AddLayer(LinkLayer); FCanvas.Camera.AddLayer(SolidLayer); //set default roots LinkRoot = CreateDot(null); Root = CreateDot(null); //set render quality FCanvas.HighRenderQuality += delegate(Graphics graphics) { //improves text render quality when antialiased and speeds up drawing graphics.CompositingQuality = CompositingQuality.HighSpeed; }; FCanvas.AnimatingRenderQuality = RenderQuality.HighQuality; FCanvas.InteractingRenderQuality = RenderQuality.HighQuality; FCanvas.DefaultRenderQuality = RenderQuality.HighQuality; //remove default zoom and pan event handlers FCanvas.RemoveInputEventListener(FCanvas.ZoomEventHandler); FCanvas.RemoveInputEventListener(FCanvas.PanEventHandler); //create custom event handlers FDragDropEventHandler = new DragDropEventHandler(); FMyPanEventHandler = new PanEventHandler(); FMyZoomEventHandler = new ZoomEventHandler(); FPathEventHandler = new PathEventHandler(this); FEventPassThrougHandler = new EventPassThrougHandler(this); //add custom event handlers FCanvas.AddInputEventListener(FDragDropEventHandler); FCanvas.AddInputEventListener(FMyPanEventHandler); FCanvas.AddInputEventListener(FMyZoomEventHandler); FCanvas.AddInputEventListener(FPathEventHandler); FCanvas.AddInputEventListener(FEventPassThrougHandler); FCanvas.KeyPress += FCanvas_KeyPress; FCanvas.KeyDown += FCanvas_KeyDown; FCanvas.KeyUp += FCanvas_KeyUp; FCanvas.MinimumSize = new Size(10, 10); }
public override void Execute() { FShapes = FCanvas.Shapes.Where(x => x.IsSelected).ToList(); foreach (IShape wShape in FShapes) { wShape.IsSelected = false; } FCanvas.Shapes.AddRange(FCanvas.Clipboad.Select(x => x.DeepClone())); foreach (IShape wShape in FCanvas.Clipboad) { wShape.Move(new SizeF(10, 10)); } FCanvas.Draw(); }
public override void Undo() { foreach (IShape wShape in FShapes) { wShape.IsSelected = true; } for (int i = 0; i < FCanvas.Clipboad.Count; i++) { FCanvas.Shapes.RemoveAt(FCanvas.Shapes.Count - 1); } foreach (IShape wShape in FCanvas.Clipboad) { wShape.Move(new SizeF(-10, -10)); } FCanvas.Draw(); }
public override void Execute() { FShape.IsSelected = true; IShape wShape; if (FCanvas.IsPreviewing) { wShape = FShape.DeepClone(); wShape.FramePoints.Single(x => x.CurrentLocationKind == FramePointLocationKindEnum.Bottom).IsSelected = true; } else { wShape = FShape; } FCanvas.Shapes.Add(wShape); FCanvas.Draw(); }
public override void Undo() { FCanvas.Shapes.Remove(FShape); FCanvas.Draw(); }
void ICanvas.Invalidate() { FCanvas.Invalidate(); }
internal void FCanvas_MouseClick(object sender, MouseEventArgs e) { FCanvas.Select(); OnMouseClick(e); }
public override void Execute() { FCanvas.Shapes.Clear(); FCanvas.Draw(); }
public override void Undo() { FCanvas.Shapes.AddRange(FShapes); FCanvas.Draw(); }