/// <summary> /// Sets the current filters for the subscription. /// </summary> /// <param name="filters">The new filters to use for the subscription.</param> public void SetFilters(Ae.TsCAeSubscriptionFilters filters) { if (_subscription == null) { throw new NotConnectedException(); } _subscription.SetFilters(filters); GetFilters(); }
/// <summary> /// Prompts a user to create a new subscription with a modal dialog. /// </summary> public Ae.TsCAeSubscription ShowDialog(TsCAeServer server, Ae.TsCAeSubscription subscription) { if (server == null) { throw new ArgumentNullException("server"); } m_server = server; m_subscription = subscription; // go to the initial stage. m_stage = 0; ChangeStage(0); // initialize controls. StateCTRL.SetDefaults(); FiltersCTRL.SetDefaults(); CategoriesCTRL.ShowCategories(m_server); AttributesCTRL.ShowAttributes(m_server); BrowseCTRL.ShowAreas(m_server); if (m_subscription != null) { m_state = m_subscription.GetState(); m_filters = m_subscription.GetFilters(); m_attributes = m_subscription.GetAttributes(); m_areas = m_subscription.Areas.ToArray(); m_sources = m_subscription.Sources.ToArray(); } else { m_state.Name = String.Format("Subscription{0,3:000}", ++m_count); } // set current values. StateCTRL.Set(m_state); FiltersCTRL.Set(m_filters); CategoriesCTRL.SetSelectedCategories(m_filters.Categories.ToArray()); AttributesCTRL.SetSelectedAttributes(m_attributes); AreaSourcesListCTRL.AddAreas(m_areas); AreaSourcesListCTRL.AddSources(m_sources); // show dialog. if (ShowDialog() != DialogResult.OK) { return(null); } // return updated/created subscription. return(m_subscription); }
/// <summary> /// Called when the next button is clicked. /// </summary> private void NextBTN_Click(object sender, System.EventArgs e) { if (m_stage == 0) { m_state = (Ae.TsCAeSubscriptionState)StateCTRL.Get(); m_filters = (Ae.TsCAeSubscriptionFilters)FiltersCTRL.Get(); m_filters.Categories.Clear(); m_filters.Categories.AddRange(CategoriesCTRL.GetSelectedCategories()); m_attributes = AttributesCTRL.GetSelectedAttributes(); } ChangeStage(++m_stage); }
/// <summary> /// Copy object values into controls. /// </summary> public void Set(object value) { // check for null value. if (value == null) { SetDefaults(); return; } Ae.TsCAeSubscriptionFilters filters = (Ae.TsCAeSubscriptionFilters)value; SimpleEventCHK.Checked = (filters.EventTypes & (int)TsCAeEventType.Simple) != 0; TrackingEventsCHK.Checked = (filters.EventTypes & (int)TsCAeEventType.Tracking) != 0; ConditionEventsCHK.Checked = (filters.EventTypes & (int)TsCAeEventType.Condition) != 0; HighSeverityCTRL.Value = filters.HighSeverity; LowSeverityCTRL.Value = filters.LowSeverity; }
/// <summary> /// Copy values from control into object - throw exceptions on error. /// </summary> public object Get() { Ae.TsCAeSubscriptionFilters filters = new Ae.TsCAeSubscriptionFilters(); filters.EventTypes = 0; if (SimpleEventCHK.Checked) { filters.EventTypes |= (int)TsCAeEventType.Simple; } if (TrackingEventsCHK.Checked) { filters.EventTypes |= (int)TsCAeEventType.Tracking; } if (ConditionEventsCHK.Checked) { filters.EventTypes |= (int)TsCAeEventType.Condition; } filters.HighSeverity = (int)HighSeverityCTRL.Value; filters.LowSeverity = (int)LowSeverityCTRL.Value; return(filters); }
/// <summary> /// Creates a new object. /// </summary> public object Create() { Ae.TsCAeSubscriptionFilters filters = new Ae.TsCAeSubscriptionFilters(); filters.EventTypes = (int)TsCAeEventType.All; return(filters); }