コード例 #1
0
        private void btnClearAll_Click(object sender, RoutedEventArgs e)
        {
            var key = cmbPlugins.SelectedValue as string;

            var selection = key == string.Empty
                ? Substrate.AllPlugins
                : new[] { Substrate.GetPlugin(key) };

            foreach (var p in selection)
            {
                p.ClearLog();
            }

            cmbPlugins_SelectionChanged(null, null);
        }
コード例 #2
0
        private void cmbPlugins_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var key = cmbPlugins.SelectedValue as string;

            var selection = key == string.Empty
                ? Substrate.AllPlugins
                : new[] { Substrate.GetPlugin(key) };

            var output = selection.SelectMany(p => p.logEntries)
                         .OrderBy(p => p.Timestamp)
                         .Select(p => p.Message);

            txtOutput.Clear();
            if (output.Any())
            {
                txtOutput.AppendText(string.Join(Environment.NewLine, output) + Environment.NewLine);
            }
            txtOutput.CaretIndex = txtOutput.Text.Length;
            txtOutput.ScrollToEnd();
        }