public GraphWindow() { RedrawFull = TelmaCommandAssistant.CreateFromTask("RedrawFull", RedrawFullImpl).DisposeWith(disposer); RedrawSelected = TelmaCommandAssistant.CreateFromTask("RedrawSelected", RedrawSelectedImpl).DisposeWith(disposer); RedrawWithNewScale = TelmaCommandAssistant.Create("RedrawWithNewScale", () => renderer.Invalidate()).DisposeWith(disposer); OnGMFull = TelmaCommandAssistant.Create("OnGMFull", () => { if (Canvas != null) { Canvas.GridMode = GraphicCanvas.GridModes.Full; } }).DisposeWith(disposer); OnGMMain = TelmaCommandAssistant.Create("OnGMMain", () => { if (Canvas != null) { Canvas.GridMode = GraphicCanvas.GridModes.Main; } }).DisposeWith(disposer); OnGMNone = TelmaCommandAssistant.Create("OnGMNone", () => { if (Canvas != null) { Canvas.GridMode = GraphicCanvas.GridModes.None; } }).DisposeWith(disposer); OnGMZero = TelmaCommandAssistant.Create("OnGMZero", () => { if (Canvas != null) { Canvas.GridMode = GraphicCanvas.GridModes.Zero; } }).DisposeWith(disposer); OnGMFull.Command.Subscribe(_ => { renderer.Invalidate(); }); OnGMMain.Command.Subscribe(_ => { renderer.Invalidate(); }); OnGMNone.Command.Subscribe(_ => { renderer.Invalidate(); }); OnGMZero.Command.Subscribe(_ => { renderer.Invalidate(); }); }