History

GSF.PhasorProtocols.UI.WPF: Added validation for the chart refresh interval to ensure that the Manger doesn't crash when the value is misconfigured.

StephenCWills committed 8 years ago

Commit 1b53ab71 parent 1b5f8cc1 file · +9 −5Browse files

Unified · Split

Source/Libraries/GSF.PhasorProtocols/UI/WPF/UserControls/InputStatusMonitorUserControl.xaml.cs+9−5
@@ -90,7 +90,7 @@ namespace GSF.PhasorProtocols.UI.UserControls · 89 unmodified lines
9090 private bool m_useLocalClockAsRealtime = true;
9191 private bool m_ignoreBadTimestamps;
9292 private int m_chartRefreshInterval = 66;
93− private int m_statisticsDataRefershInterval = 10;
93+ private int m_statisticsDataRefreshInterval = 10;
9494 private int m_measurementsDataRefreshInterval = 10;
9595 private double m_frequencyRangeMin = 59.95;
9696 private double m_frequencyRangeMax = 60.05;
@@ -264,7 +264,7 @@ namespace GSF.PhasorProtocols.UI.UserControls · 167 unmodified lines
264264 m_xAxisDataCollection = new int[m_numberOfDataPointsToPlot];
265265 m_refreshRate = Ticks.FromMilliseconds(m_chartRefreshInterval);
266266 TextBlockMeasurementRefreshInterval.Text = m_measurementsDataRefreshInterval.ToString();
267− TextBlockStatisticsRefreshInterval.Text = m_statisticsDataRefershInterval.ToString();
267+ TextBlockStatisticsRefreshInterval.Text = m_statisticsDataRefreshInterval.ToString();
268268 TextBoxProcessInterval.Text = "33";
269269 }
270270
@@ -376,7 +376,7 @@ namespace GSF.PhasorProtocols.UI.UserControls · 105 unmodified lines
376376 int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("NumberOfDataPointsToPlot").ToString(), out m_numberOfDataPointsToPlot);
377377 int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("DataResolution").ToString(), out m_framesPerSecond);
378378 int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("ChartRefreshInterval").ToString(), out m_chartRefreshInterval);
379− int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("StatisticsDataRefreshInterval").ToString(), out m_statisticsDataRefershInterval);
379+ int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("StatisticsDataRefreshInterval").ToString(), out m_statisticsDataRefreshInterval);
380380 int.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("MeasurementsDataRefreshInterval").ToString(), out m_measurementsDataRefreshInterval);
381381 double.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("LagTime").ToString(), out m_lagTime);
382382 double.TryParse(IsolatedStorageManager.ReadFromIsolatedStorage("LeadTime").ToString(), out m_leadTime);
@@ -484,8 +484,12 @@ namespace GSF.PhasorProtocols.UI.UserControls · 101 unmodified lines
484484 {
485485 if (m_refreshTimer == null)
486486 {
487+ double chartRefreshInterval = (m_chartRefreshInterval >= 0)
488+ ? m_chartRefreshInterval
489+ : 66;
490+
487491 m_refreshTimer = new DispatcherTimer();
488− m_refreshTimer.Interval = TimeSpan.FromMilliseconds(m_chartRefreshInterval);
492+ m_refreshTimer.Interval = TimeSpan.FromMilliseconds(chartRefreshInterval);
489493 m_refreshTimer.Tick += m_refreshTimer_Tick;
490494 m_refreshTimer.Start();
491495 }
@@ -923,7 +927,7 @@ namespace GSF.PhasorProtocols.UI.UserControls · 431 unmodified lines
923927 TextBoxNumberOFDataPointsToPlot.Text = m_numberOfDataPointsToPlot.ToString();
924928 TextBoxDataResolution.Text = m_framesPerSecond.ToString();
925929 TextBoxChartRefreshInterval.Text = m_chartRefreshInterval.ToString();
926− TextBoxStatisticDataRefreshInterval.Text = m_statisticsDataRefershInterval.ToString();
930+ TextBoxStatisticDataRefreshInterval.Text = m_statisticsDataRefreshInterval.ToString();
927931 TextBoxMeasurementDataRefreshInterval.Text = m_measurementsDataRefreshInterval.ToString();
928932 TextBoxLagTime.Text = m_lagTime.ToString();
929933 TextBoxLeadTime.Text = m_leadTime.ToString();

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t