public MainTabViewModel(MainTabModel model) : base(model) { ZoomAndPanCanvas = new ZoomAndPanCanvasView(); new ZoomAndPanCanvasViewModel(Graph.GetInstance().ZoomAndPanCanvasModel, ZoomAndPanCanvas); MouseDown = new RelayCommand(() => Model.OnMouseDown(MouseButtonArgs)); MouseUp = new RelayCommand(() => Model.OnMouseUp(MouseButtonArgs)); SubscribeModel(model); }
public void AddMainTab() { if (MainTab != null) { SelectTab(MainTab); return; } MainTabModel m = new MainTabModel(); m.CloseRequested += CloseTab; m.MouseDown += (args) => CanvasMouseDown?.Invoke(null, args); m.MouseUp += (args) => CanvasMouseUp?.Invoke(null, args); m.PanelModel = ActionPanel; MainTabViewModel vm = new MainTabViewModel(m); MainTabModel = m; MainWindowModel.AddTab(vm); SelectTab(vm); }
void SubscribeModel(MainTabModel model) { Model.UpdateCenter += () => Model.GraphViewCenter = GraphViewCenter; Model.ShownChanged += () => { OnPropertyChanged("IsInfoVisible"); OnPropertyChanged("Shown"); }; Model.PropertyChanged += (sender, e) => OnPropertyChanged(e.PropertyName); }