private void OkBTN_Click(object sender, EventArgs e) { try { EventFilter filter = new EventFilter(); filter.SelectClauses.AddRange(SelectClauseCTRL.GetSelectClauses()); filter.WhereClause = ContentFilterCTRL.GetFilter(); EventFilter.Result result = filter.Validate(new FilterContext(m_session.NamespaceUris, m_session.TypeTree)); if (ServiceResult.IsBad(result.Status)) { throw ServiceResultException.Create(StatusCodes.BadEventFilterInvalid, result.GetLongString()); } m_filter = filter; DialogResult = DialogResult.OK; } catch (Exception exception) { GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception); } }
/// <summary> /// Displays the dialog. /// </summary> public EventFilter ShowDialog(Session session, EventFilter filter, bool editWhereClause) { if (session == null) { throw new ArgumentNullException("session"); } if (filter == null) { throw new ArgumentNullException("filter"); } m_session = session; m_filter = filter; BrowseCTRL.SetView(m_session, BrowseViewType.EventTypes, null); SelectClauseCTRL.Initialize(session, filter.SelectClauses); ContentFilterCTRL.Initialize(session, filter.WhereClause); FilterOperandsCTRL.Initialize(session, null, -1); MoveBTN_Click((editWhereClause)?NextBTN:BackBTN, null); if (ShowDialog() != DialogResult.OK) { return(null); } return(m_filter); }
private void BrowseCTRL_ItemsSelected(object sender, NodesSelectedEventArgs e) { try { foreach (ReferenceDescription reference in e.References) { if (reference.ReferenceTypeId == ReferenceTypeIds.HasProperty || reference.IsForward) { SelectClauseCTRL.AddSelectClause(reference); } } } catch (Exception exception) { GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception); } }