public PlotViewModel(PlotValue plot, IVisualizer visualizer, IConsole console) { _controller = ControllerFactory.Create(plot); _console = new RelayCommand(_ => ShowConsole(console)); _settings = new RelayCommand(_ => ShowSettings(plot)); _series = new RelayCommand(_ => ShowSeries(plot)); _grid = new RelayCommand(_ => _controller.ToggleGrid()); _center = new RelayCommand(_ => _controller.CenterPlot()); _dock = new RelayCommand(_ => visualizer.Dock(this)); _undock = new RelayCommand(_ => visualizer.Undock()); _print = new RelayCommand(obj => Print(plot, obj as IPlotSerializer)); _save = new RelayCommand(obj => Save(plot, obj as IPlotSerializer)); }