/// <summary> /// Close the resources used for opening and processing the log file /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void menuFileClose_Click(object sender, EventArgs e) { this.Text = "LogViewer"; // Clear any existing filters/reset values this.listLines.ModelFilter = null; this.viewMode = Global.ViewMode.Standard; this.searches = new Searches(); this.filterIds.Clear(); if (lf != null) { listLines.ClearObjects(); lf.ProgressUpdate -= LogFile_LoadProgress; lf.LoadComplete -= LogFile_LoadComplete; lf.SearchComplete -= LogFile_SearchComplete; lf.ExportComplete -= LogFile_ExportComplete; lf.LoadError -= LogFile_LoadError; lf.Dispose(); lf = null; } menuFileClose.Enabled = false; UpdateStatusLabel("", statusLabelMain); UpdateStatusLabel("", statusLabelSearch); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void contextMenuFilterHideMatched_Click(object sender, EventArgs e) { this.viewMode = Global.ViewMode.FilterHide; this.listLines.ModelFilter = new ModelFilter(delegate(object x) { return(x != null && (((LogLine)x).SearchMatches.Intersect(filterIds).Any() == false)); }); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void contextMenuFilterClear_Click(object sender, EventArgs e) { // Get the currently selected row var ll = (LogLine)listLines.SelectedObject; this.listLines.ModelFilter = null; this.viewMode = Global.ViewMode.Standard; if (ll != null) { listLines.EnsureVisible(ll.LineNumber - 1); listLines.SelectedIndex = ll.LineNumber - 1; if (listLines.SelectedItem != null) { listLines.FocusedItem = listLines.SelectedItem; } } }
/// <summary> /// /// </summary> /// <param name="filePath"></param> /// <returns></returns> private void LoadFile(string filePath) { this.processing = true; this.hourGlass = new HourGlass(this); SetProcessingState(false); statusProgress.Visible = true; this.cancellationTokenSource = new CancellationTokenSource(); menuToolsMultiStringSearch.Enabled = true; // Clear any existing filters/reset values this.listLines.ModelFilter = null; this.viewMode = Global.ViewMode.Standard; this.searches = new Searches(); this.filterIds.Clear(); if (lf != null) { listLines.ClearObjects(); lf.ProgressUpdate -= LogFile_LoadProgress; lf.LoadComplete -= LogFile_LoadComplete; lf.SearchComplete -= LogFile_SearchComplete; lf.ExportComplete -= LogFile_ExportComplete; lf.LoadError -= LogFile_LoadError; lf.Dispose(); } this.Text = "LogViewer - " + filePath; lf = new LogFile(); lf.ProgressUpdate += LogFile_LoadProgress; lf.LoadComplete += LogFile_LoadComplete; lf.SearchComplete += LogFile_SearchComplete; lf.ExportComplete += LogFile_ExportComplete; lf.LoadError += LogFile_LoadError; lf.Load(filePath, cancellationTokenSource.Token); }