summaryrefslogtreecommitdiffstats
path: root/clients/tde/src/widgets/tracewidget.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-28 12:55:08 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-28 12:55:08 -0500
commitbd0400a096268138037b3cfc129c298c961fc63d (patch)
treea25466faf5d4978056a700fe3ead37d132e005d3 /clients/tde/src/widgets/tracewidget.cpp
parent9c98267db370d13a01d6135046061ce8a06dba07 (diff)
downloadulab-bd0400a096268138037b3cfc129c298c961fc63d.tar.gz
ulab-bd0400a096268138037b3cfc129c298c961fc63d.zip
Fix scope part crashes
Add server-provided caption support Properly brand client application
Diffstat (limited to 'clients/tde/src/widgets/tracewidget.cpp')
-rw-r--r--clients/tde/src/widgets/tracewidget.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/clients/tde/src/widgets/tracewidget.cpp b/clients/tde/src/widgets/tracewidget.cpp
index 90e3977..9edab59 100644
--- a/clients/tde/src/widgets/tracewidget.cpp
+++ b/clients/tde/src/widgets/tracewidget.cpp
@@ -1661,7 +1661,8 @@ void TraceWidget::updateTraceText() {
offsetText = TQString(" +%1").arg(prettyFormat(fabs(offset), vertical_range, m_traceArray[trace]->verticalUnits));
}
}
- m_traceArray[trace]->paramLabel->setText(TQString("<qt><nobr>%1%2<br>%3/div,%4/div<br>%5,%6<br>%7,%8</qt>").arg(m_traceArray[trace]->traceName).arg(offsetText).arg(prettyFormat(horizontal_units_per_division, horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(vertical_units_per_division, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->leftEdge, (m_useAbsoluteHorizontalRange)?m_traceArray[trace]->rightEdge:horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(m_traceArray[trace]->topEdge, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->rightEdge, (m_useAbsoluteHorizontalRange)?m_traceArray[trace]->rightEdge:horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(m_traceArray[trace]->bottomEdge, vertical_range, m_traceArray[trace]->verticalUnits)));
+ TQString traceDataString = TQString("<br>%1,%2,%3").arg(prettyFormat(m_traceArray[trace]->sampleMin, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->sampleMax, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->sampleAverage, vertical_range, m_traceArray[trace]->verticalUnits));
+ m_traceArray[trace]->paramLabel->setText(TQString("<qt><nobr>%1%2<br>%3/div,%4/div<br>%5,%6<br>%7,%8%9</qt>").arg(m_traceArray[trace]->traceName).arg(offsetText).arg(prettyFormat(horizontal_units_per_division, horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(vertical_units_per_division, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->leftEdge, (m_useAbsoluteHorizontalRange)?m_traceArray[trace]->rightEdge:horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(m_traceArray[trace]->topEdge, vertical_range, m_traceArray[trace]->verticalUnits)).arg(prettyFormat(m_traceArray[trace]->rightEdge, (m_useAbsoluteHorizontalRange)?m_traceArray[trace]->rightEdge:horizontal_range, m_traceArray[trace]->horizontalUnits)).arg(prettyFormat(m_traceArray[trace]->bottomEdge, vertical_range, m_traceArray[trace]->verticalUnits)).arg(traceDataString));
m_traceArray[trace]->leftLabel->setText(TQString("<qt><nobr>%1</qt>").arg(m_traceArray[trace]->traceName));
}
}
@@ -1795,9 +1796,32 @@ TQDoubleArray& TraceWidget::samples(uint traceNumber) {
void TraceWidget::setSamples(uint traceNumber, TQDoubleArray& tqda, bool deferUpdate) {
VERIFY_TRACE_ARRAY_SIZE
+ unsigned int i;
+ double curValue;
+
m_traceArray[traceNumber]->sampleArray = tqda;
m_traceArray[traceNumber]->numberOfSamples = tqda.size();
+ // Calculate trace minimum, maximum, and average
+ m_traceArray[traceNumber]->sampleMin = DBL_MAX;
+ m_traceArray[traceNumber]->sampleMax = DBL_MIN;
+ m_traceArray[traceNumber]->sampleAverage = 0;
+ m_traceArray[traceNumber]->minIndex = 0;
+ m_traceArray[traceNumber]->maxIndex = 0;
+ for (i=0; i<m_traceArray[traceNumber]->sampleArray.size(); i++) {
+ curValue = m_traceArray[traceNumber]->sampleArray[i];
+ if (curValue < m_traceArray[traceNumber]->sampleMin) {
+ m_traceArray[traceNumber]->sampleMin = curValue;
+ m_traceArray[traceNumber]->minIndex = i;
+ }
+ if (curValue > m_traceArray[traceNumber]->sampleMax) {
+ m_traceArray[traceNumber]->sampleMax = curValue;
+ m_traceArray[traceNumber]->maxIndex = i;
+ }
+ m_traceArray[traceNumber]->sampleAverage = m_traceArray[traceNumber]->sampleAverage + curValue;
+ }
+ m_traceArray[traceNumber]->sampleAverage = m_traceArray[traceNumber]->sampleAverage / m_traceArray[traceNumber]->numberOfSamples;
+
if (!deferUpdate) {
updateCursorText();
m_graticuleWidget->repaint(false);