/// <summary> /// Initializes a new instance of the <see cref="FrmAddEditFilter"/> with the specified parameters. /// </summary> /// <param name="filterToEdit">The <see cref=LogFilterColumn"/> to edit.</param> public FrmAddEditFilter(ILogProvider logProvider, LogFilterColumn filterToEdit) { InitializeComponent(); // Adjust the title and caption of the dialog to match editing. Text = Resources.strFilterDlgEditFilter; DialogMainCaption = Resources.strFilterDlgEditFilter; if (logProvider != null) { foreach (string columnName in logProvider.Columns.Values) { cmbColumnToFilter.Items.Add(columnName); } if (cmbColumnToFilter.Items.Count > 0) { cmbColumnToFilter.SelectedIndex = 0; } } cmbOperator.SelectedIndex = 0; if (filterToEdit != null) { chkFilterIsActive.Checked = filterToEdit.IsActive; cmbColumnToFilter.SelectedIndex = filterToEdit.ColumnIndex - 1; cmbOperator.SelectedIndex = filterToEdit.OperatorIndex; txtExpressionToFilterFor.Text = filterToEdit.ColumnMatchValueRegEx; } }
/// <summary> /// Handles the Click event of the add filter <see cref="ToolStripItem"/>. /// </summary> private void TsbAddFilterClick(object sender, EventArgs e) { using (FrmAddEditFilter addEditFilterDlg = new FrmAddEditFilter(mLogProvider, null)) { if (addEditFilterDlg.ShowDialog(this) == DialogResult.OK) { LogFilterColumn newLogFilter = new LogFilterColumn( addEditFilterDlg.IsFilterActive , addEditFilterDlg.ColumnIndex , addEditFilterDlg.OperatorIndex , addEditFilterDlg.ExpressionRegex); mLogFilter.Add(newLogFilter); // Update the data grid. UpdateLogFilters(); // Inform the filter handler about the changed filters. mLogFilterHandler.FilterChanged(); } } }