public AddGate(GateInkCanvas gc, Gate gate) : base(gate, gc) { }
public MoveGate(Gate g, GateInkCanvas gc, Point origin, Point dest) : base(g, gc) { this.origin = origin; this.dest = dest; }
public RotateGate(Gate g, GateInkCanvas gc, double origin, double dest) : base(g, gc) { this.origin = origin; this.dest = dest; }
public TrackingGate(Gate g, GateInkCanvas gc) { this.g = g; this.gc = gc; gc.Circuit.ReplaceGates += (sender2, e2) => { if (e2.ContainsKey(this.g.AbGate) && e2[this.g.AbGate] != null) { Gate og = this.g; Gate ng = gc.FindGate(e2[this.g.AbGate]); this.g = ng; } }; }