Пример #1
0
        /// <summary>
        /// Ensure that the last added entry is visible.
        /// </summary>
        private void OnTrackVisibleTimerTick(object sender, EventArgs e)
        {
            var node = lastNode;

            lastNode = null;
            if ((node != null) && miAutoScroll.Checked)
            {
                node.EnsureVisible();
            }
        }
Пример #2
0
        /// <summary>
        /// Rebuild the list with the new filter.
        /// </summary>
        private void ApplyFilter(LogEntry active)
        {
            tvLog.BeginUpdate();
            var newNodes = entries.Where(Show).Select(x => new LogEntryNode(x)).ToArray();

            tvLog.Items.Clear();
            tvLog.Items.AddRange(newNodes);
            var activeNode = newNodes.FirstOrDefault(x => x.Entry == active);

            lastNode = activeNode ?? newNodes.LastOrDefault();
            tvLog.EndUpdate();
            if (activeNode != null)
            {
                activeNode.Selected = true;
            }
        }
Пример #3
0
 /// <summary>
 /// Add received output data.
 /// </summary>
 public void AddEntry(LogEntry entry)
 {
     if (InvokeRequired)
     {
         Invoke(new Action <LogEntry>(AddEntry), entry);
     }
     else
     {
         try
         {
             entries.Add(entry);
             if (Show(entry))
             {
                 var node = new LogEntryNode(entry);
                 lastNode = node;
                 tvLog.Items.Add(node);
             }
         }
         catch (Exception ex)
         {
             ErrorLog.DumpError(ex);
         }
     }
 }
Пример #4
0
 /// <summary>
 /// Add received output data.
 /// </summary>
 public void AddEntry(LogEntry entry)
 {
     if (InvokeRequired)
     {
         Invoke(new Action<LogEntry>(AddEntry), entry);
     }
     else
     {
         try
         {
             entries.Add(entry);
             if (Show(entry))
             {
                 var node = new LogEntryNode(entry);
                 lastNode = node;
                 tvLog.Items.Add(node);
             }
         }
         catch (Exception ex)
         {
             ErrorLog.DumpError(ex);
         }
     }
 }
Пример #5
0
 /// <summary>
 /// Ensure that the last added entry is visible.
 /// </summary>
 private void OnTrackVisibleTimerTick(object sender, EventArgs e)
 {
     var node = lastNode;
     lastNode = null;
     if ((node != null) && miAutoScroll.Checked)
     {
         node.EnsureVisible();
     }
 }
Пример #6
0
 /// <summary>
 /// Rebuild the list with the new filter.
 /// </summary>
 private void ApplyFilter(LogEntry active)
 {
     tvLog.BeginUpdate();
     var newNodes = entries.Where(Show).Select(x => new LogEntryNode(x)).ToArray();
     tvLog.Items.Clear();
     tvLog.Items.AddRange(newNodes);
     var activeNode = newNodes.FirstOrDefault(x => x.Entry == active);
     lastNode = activeNode ?? newNodes.LastOrDefault();
     tvLog.EndUpdate();
     if (activeNode != null)
     {
         activeNode.Selected = true;
     }
 }