public void Init(EngineViewArgs args) { eventAggregator = container.Resolve <IEventAggregator>(); btnSwitch = new LinkButtonSwitch(eventAggregator); btnSwitch.ClearSelection = () => { buttonsList.UnselectAll(); }; disposables.Add(Observable.FromEventPattern(buttonsList, "SelectionChanged") .Subscribe(e => { btnSwitch.SelectedButton = (ButtonBase)buttonsList.SelectedItem; })); disposables.Add(btnSwitch); //dataProcInfo = new VideoInfo(); //GetSnapshot(args); if (args.selectedEngineControl == null) { log.WriteInfo(String.Format("no control is associated with engine '{0}'", args.engine.token)); CreateEmergencyButtons(args); } else { //dataProcInfo.ChanToken = args.channelDescr.videoSource.token; LoadButtons(args); //disposables.Add(Observable.FromEventPattern(vsSnapshot, "MouseDown").Subscribe(ev => { GetSnapshot(args); })); } buttonsList.ItemsSource = Buttons; }
public void Init(DeviceViewArgs args) { eventAggregator = container.Resolve <IEventAggregator>(); filtersList = new ObservableCollection <FilterExpression>(); btnSwitch = new LinkButtonSwitch(eventAggregator); btnSwitch.ClearSelection = () => { buttonsList.UnselectAll(); }; disposables.Add(Observable.FromEventPattern(buttonsList, "SelectionChanged") .Subscribe(e => { btnSwitch.SelectedButton = (ButtonBase)buttonsList.SelectedItem; })); disposables.Add(btnSwitch); var subcrtok = eventAggregator.GetEvent <AddEventsFilterClick>().Subscribe(arg => { dispatch.BeginInvoke(() => { ReSubscribe(args); }); }); disposables.Add(Disposable.Create(() => { eventAggregator.GetEvent <AddEventsFilterClick>().Unsubscribe(subcrtok); })); odmSession = new OdmSession(args.nvtSession); InitDeviceImage(args); LoadButtons(args); EventsSubscription(args); }