private void exportGraphToolStripMenuItem_Click(object sender, EventArgs e) { // TODO: More detailed information in image save error message // TODO: Add option to open image after saving? No idea how. if (chartSaveFileDialog.ShowDialog() == DialogResult.OK) { try { switch (chartSaveFileDialog.FilterIndex) { case 1: SampleChart.SaveImage(chartSaveFileDialog.FileName, ChartImageFormat.Png); break; case 2: SampleChart.SaveImage(chartSaveFileDialog.FileName, ChartImageFormat.Bmp); break; } } catch (Exception ex) { FormatAndShowException(ex, Resources.Could_not_export_chart_image_to, chartSaveFileDialog.FileName); } } }
public MainWindow() { InitializeComponent(); log = new Log(); hardwareMonitors = new Dictionary <string, HardwareMonitor>(); hardwareMonitors.Add("CPULoad", new CPUHardwareMonitor()); hardwareMonitors.Add("GPULoad", new GPUHardwareMonitor()); hardwareMonitors.Add("RAMLoad", new RAMHardwareMonitor()); this.sampleChart = new SampleChart(plotView1); ResetProfiler(); smoothMode = SmoothMode.None; timeUnit = TimeUnit.Seconds; UpdateView(); viewUpdateTimer = new Timer(); viewUpdateTimer.Interval = 1000; viewUpdateTimer.Enabled = true; viewUpdateTimer.Tick += (object o, EventArgs e) => { UpdateView(); }; }
private void openToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "jPerf Capture|*.jpc|JSON File|*.json"; openFileDialog.Title = "Open jPerf Capture File"; openFileDialog.ShowDialog(); if (openFileDialog.FileName != "") { string textData; FileStream stream = new FileStream(openFileDialog.FileName, FileMode.Open, FileAccess.Read); using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { textData = reader.ReadToEnd(); } this.profiler = Profiler.FromJson(textData, log); this.profiler.name = openFileDialog.FileName; UpdateView(true); sampleChart.Zoom(0, profiler.GetRecordingLength() / SampleChart.TimeUnitDivisor(timeUnit)); } }
private void resetViewToolStripMenuItem_Click(object sender, EventArgs e) { sampleChart.Zoom(0, profiler.GetRecordingLength() / SampleChart.TimeUnitDivisor(timeUnit)); }
private void minutesToolStripMenuItem_Click(object sender, EventArgs e) { timeUnit = TimeUnit.Minutes; UpdateView(true); sampleChart.Zoom(0, profiler.GetRecordingLength() / SampleChart.TimeUnitDivisor(timeUnit)); }
private void stopRecordingToolStripMenuItem_Click(object sender, EventArgs e) { this.profiler.StopRecording(); UpdateView(true); sampleChart.Zoom(0, (int)Math.Floor(this.profiler.Stopwatch.Elapsed.TotalMilliseconds / SampleChart.TimeUnitDivisor(timeUnit))); }