void DeviceEventsClick(DeviceEventsEventArgs evarg) { ReleaseViewModels(RegionNames.reg_property); var view = container.Resolve <DeviceEventsView>(); view.Init(evarg); view.BindEvents(evarg.events); ShowView(view, "deviceevents_view", RegionNames.reg_property); }
public override void ButtonClick() { DeviceEventsEventArgs evargs = new DeviceEventsEventArgs() { session = session, currentAccount = currentAccount, events = events, filters = filters }; eventAggregator.GetEvent <DeviceEventsClick>().Publish(evargs); }
public override void ButtonClick() { DeviceEventsEventArgs evargs = new DeviceEventsEventArgs() { session = session, currentAccount = currentAccount, events = events, filters = filters }; eventAggregator.GetEvent<DeviceEventsClick>().Publish(evargs); }
void DeviceEventsClick(DeviceEventsEventArgs evarg) { ReleaseViewModels(RegionNames.reg_property); var view = container.Resolve<DeviceEventsView>(); view.Init(evarg); view.BindEvents(evarg.events); ShowView(view, "deviceevents_view", RegionNames.reg_property); }
public void Init(DeviceEventsEventArgs evarg) { this.session = evarg.session; this.account = evarg.currentAccount; this.filters = evarg.filters; this.evarg = evarg; eventAggregator = container.Resolve <EventAggregator>(); this.CreateBinding(StateCommonProperty, this, x => { return(x.Current == States.Common ? Visibility.Visible : Visibility.Collapsed); }); this.CreateBinding(StateLoadingProperty, this, x => { return(x.Current == States.Loading ? Visibility.Visible : Visibility.Collapsed); }); this.CreateBinding(StateErrorProperty, this, x => { return(x.Current == States.Error ? Visibility.Visible : Visibility.Collapsed); }); Current = States.Loading; eventPropSubscription = session.GetEventProperties() .ObserveOnCurrentDispatcher() .Subscribe(responce => { Current = States.Common; if (responce.TopicSet != null && responce.TopicSet.Any != null) { ExploreNamespaces(responce.TopicSet.Any); } List <MessageContentFilter> contList = new List <MessageContentFilter>(); List <TopicExpressionFilter> topList = new List <TopicExpressionFilter>(); evarg.filters.Where(f => f.FilterType == FilterExpression.ftype.CONTENT).ForEach(x => { var fex = (FilterExpression)x; contList.Add(new MessageContentFilter() { dialect = fex.Dialect, expression = fex.Value, namespaces = fex.Namespaces }); }); evarg.filters.Where(f => f.FilterType == FilterExpression.ftype.TOPIC).ForEach(x => { var fex = (FilterExpression)x; topList.Add(new TopicExpressionFilter() { dialect = fex.Dialect, expression = fex.Value, namespaces = fex.Namespaces }); }); ExpressionArguments args = new ExpressionArguments( responce.MessageContentFilterDialect, contList.ToArray(), responce.TopicExpressionDialect, topList.ToArray(), responce.TopicSet, namespaces); expressionFilters.Init(args, false); }, err => { Current = States.Error; ErrorMessage = err.Message; dbg.Error(err); }); btnApplyFilters.Click += new RoutedEventHandler((o, e) => { // resubscribe to events. evarg.filters.Clear(); expressionFilters.filtersList.ForEach(item => { evarg.filters.Add(item); }); eventAggregator.GetEvent <AddEventsFilterClick>().Publish(evarg); }); //Filter settings //ExpressionArguments args = new ExpressionArguments( // model.messageContentFilterDialects, model.messageContentFilters, // model.topicExpressionDialects, model.topicExpressionFilters, model.topicSet, namespaces); //expressionFilters.Init(args); }