Sweep indicator on graphs
This commit is contained in:
parent
1fcf25d060
commit
6f0fb5430d
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#include <QIcon>
|
#include <QIcon>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
#include <QDateTime>
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
@ -234,6 +235,7 @@ void TraceModel::clearLiveData()
|
|||||||
void TraceModel::addVNAData(const VirtualDevice::VNAMeasurement& d, TraceMath::DataType datatype)
|
void TraceModel::addVNAData(const VirtualDevice::VNAMeasurement& d, TraceMath::DataType datatype)
|
||||||
{
|
{
|
||||||
source = DataSource::VNA;
|
source = DataSource::VNA;
|
||||||
|
lastReceivedData = QDateTime::currentDateTimeUtc();
|
||||||
for(auto t : traces) {
|
for(auto t : traces) {
|
||||||
if (t->getSource() == Trace::Source::Live && !t->isPaused()) {
|
if (t->getSource() == Trace::Source::Live && !t->isPaused()) {
|
||||||
int index = -1;
|
int index = -1;
|
||||||
@ -246,13 +248,14 @@ void TraceModel::addVNAData(const VirtualDevice::VNAMeasurement& d, TraceMath::D
|
|||||||
td.x = d.dBm;
|
td.x = d.dBm;
|
||||||
break;
|
break;
|
||||||
case TraceMath::DataType::TimeZeroSpan:
|
case TraceMath::DataType::TimeZeroSpan:
|
||||||
td.x = d.us;
|
td.x = (double) d.us / 1000000.0;
|
||||||
index = d.pointNum;
|
index = d.pointNum;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// invalid type, can not add
|
// invalid type, can not add
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
lastSweepPosition = td.x;
|
||||||
if(d.measurements.count(t->liveParameter())) {
|
if(d.measurements.count(t->liveParameter())) {
|
||||||
td.y = d.measurements.at(t->liveParameter());
|
td.y = d.measurements.at(t->liveParameter());
|
||||||
} else {
|
} else {
|
||||||
@ -267,6 +270,7 @@ void TraceModel::addVNAData(const VirtualDevice::VNAMeasurement& d, TraceMath::D
|
|||||||
void TraceModel::addSAData(const VirtualDevice::SAMeasurement& d, const VirtualDevice::SASettings &settings)
|
void TraceModel::addSAData(const VirtualDevice::SAMeasurement& d, const VirtualDevice::SASettings &settings)
|
||||||
{
|
{
|
||||||
source = DataSource::SA;
|
source = DataSource::SA;
|
||||||
|
lastReceivedData = QDateTime::currentDateTimeUtc();
|
||||||
for(auto t : traces) {
|
for(auto t : traces) {
|
||||||
if (t->getSource() == Trace::Source::Live && !t->isPaused()) {
|
if (t->getSource() == Trace::Source::Live && !t->isPaused()) {
|
||||||
int index = -1;
|
int index = -1;
|
||||||
@ -284,6 +288,7 @@ void TraceModel::addSAData(const VirtualDevice::SAMeasurement& d, const VirtualD
|
|||||||
// parameter not included in data, skip
|
// parameter not included in data, skip
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
lastSweepPosition = td.x;
|
||||||
t->addData(td, settings, index);
|
t->addData(td, settings, index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -299,6 +304,17 @@ void TraceModel::setSource(const DataSource &value)
|
|||||||
source = value;
|
source = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
double TraceModel::getSweepPosition() const
|
||||||
|
{
|
||||||
|
auto t = QDateTime::currentDateTimeUtc();
|
||||||
|
constexpr uint64_t timeout_ms = 1000;
|
||||||
|
if(lastReceivedData.msecsTo(t) > timeout_ms) {
|
||||||
|
return std::numeric_limits<double>::quiet_NaN();
|
||||||
|
} else {
|
||||||
|
return lastSweepPosition;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
MarkerModel *TraceModel::getMarkerModel() const
|
MarkerModel *TraceModel::getMarkerModel() const
|
||||||
{
|
{
|
||||||
return markerModel;
|
return markerModel;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#ifndef TRACEMODEL_H
|
#ifndef TRACEMODEL_H
|
||||||
#define TRACEMODEL_H
|
#define TRACEMODEL_H
|
||||||
|
|
||||||
#include "Device/device.h"
|
#include "Device/device.h"
|
||||||
@ -57,6 +57,8 @@ public:
|
|||||||
DataSource getSource() const;
|
DataSource getSource() const;
|
||||||
void setSource(const DataSource &value);
|
void setSource(const DataSource &value);
|
||||||
|
|
||||||
|
double getSweepPosition() const;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void SpanChanged(double fmin, double fmax);
|
void SpanChanged(double fmin, double fmax);
|
||||||
void traceAdded(Trace *t);
|
void traceAdded(Trace *t);
|
||||||
@ -71,6 +73,8 @@ public slots:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
DataSource source;
|
DataSource source;
|
||||||
|
double lastSweepPosition;
|
||||||
|
QDateTime lastReceivedData;
|
||||||
std::vector<Trace*> traces;
|
std::vector<Trace*> traces;
|
||||||
MarkerModel *markerModel;
|
MarkerModel *markerModel;
|
||||||
};
|
};
|
||||||
|
@ -168,6 +168,18 @@ void TracePlot::paintEvent(QPaintEvent *event)
|
|||||||
traceRemovalPending = false;
|
traceRemovalPending = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
xSweep = std::numeric_limits<double>::quiet_NaN();
|
||||||
|
for(auto t : traces) {
|
||||||
|
if(!t.second) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
Trace* tr = t.first;
|
||||||
|
if(tr->getSource() == Trace::Source::Live && tr->isVisible() && !tr->isPaused()) {
|
||||||
|
xSweep = model.getSweepPosition();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Q_UNUSED(event)
|
Q_UNUSED(event)
|
||||||
auto& pref = Preferences::getInstance();
|
auto& pref = Preferences::getInstance();
|
||||||
QPainter p(this);
|
QPainter p(this);
|
||||||
|
@ -110,6 +110,7 @@ protected:
|
|||||||
static constexpr unsigned int marginRight = 0;
|
static constexpr unsigned int marginRight = 0;
|
||||||
|
|
||||||
double sweep_fmin, sweep_fmax;
|
double sweep_fmin, sweep_fmax;
|
||||||
|
double xSweep; // current position in the sweep (NaN if no live traces are active on the plot)
|
||||||
TraceModel &model;
|
TraceModel &model;
|
||||||
Marker *selectedMarker;
|
Marker *selectedMarker;
|
||||||
bool movingGraph;
|
bool movingGraph;
|
||||||
|
@ -185,6 +185,16 @@ void TracePolarChart::draw(QPainter &p) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(pref.Graphs.SweepIndicator.hide && !isnan(xSweep) && trace->getSource() == Trace::Source::Live && trace->isVisible() && !trace->isPaused()) {
|
||||||
|
// check if this part of the trace is visible
|
||||||
|
double range = maximumVisibleFrequency - minimumVisibleFrequency;
|
||||||
|
double afterSweep = now.x - xSweep;
|
||||||
|
if(afterSweep > 0 && afterSweep * 100 / range <= pref.Graphs.SweepIndicator.hidePercent) {
|
||||||
|
// do not display this part of the trace
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
last = dataAddDx(last);
|
last = dataAddDx(last);
|
||||||
now = dataAddDx(now);
|
now = dataAddDx(now);
|
||||||
|
|
||||||
|
@ -279,6 +279,16 @@ void TraceSmithChart::draw(QPainter &p) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(pref.Graphs.SweepIndicator.hide && !isnan(xSweep) && trace->getSource() == Trace::Source::Live && trace->isVisible() && !trace->isPaused()) {
|
||||||
|
// check if this part of the trace is visible
|
||||||
|
double range = maximumVisibleFrequency - minimumVisibleFrequency;
|
||||||
|
double afterSweep = now.x - xSweep;
|
||||||
|
if(afterSweep > 0 && afterSweep * 100 / range <= pref.Graphs.SweepIndicator.hidePercent) {
|
||||||
|
// do not display this part of the trace
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
last = dataAddDx(last);
|
last = dataAddDx(last);
|
||||||
now = dataAddDx(now);
|
now = dataAddDx(now);
|
||||||
|
|
||||||
|
@ -418,6 +418,25 @@ void TraceWaterfall::draw(QPainter &p)
|
|||||||
}
|
}
|
||||||
p.setClipping(false);
|
p.setClipping(false);
|
||||||
|
|
||||||
|
// show sweep indicator if activated
|
||||||
|
if((xAxis.getType() == XAxis::Type::Frequency || xAxis.getType() == XAxis::Type::TimeZeroSpan || xAxis.getType() == XAxis::Type::Power)
|
||||||
|
&& !isnan(xSweep)) {
|
||||||
|
if(xSweep >= xAxis.getRangeMin() && xSweep <= xAxis.getRangeMax()) {
|
||||||
|
auto xpos = xAxis.transform(xSweep, plotAreaLeft, plotAreaLeft + plotAreaWidth);
|
||||||
|
pen = QPen(pref.Graphs.Color.axis);
|
||||||
|
pen.setCosmetic(true);
|
||||||
|
p.setPen(pen);
|
||||||
|
if(pref.Graphs.SweepIndicator.line) {
|
||||||
|
p.drawLine(xpos, plotAreaTop, xpos, plotAreaBottom);
|
||||||
|
}
|
||||||
|
if(pref.Graphs.SweepIndicator.triangle) {
|
||||||
|
for(unsigned int i=0;i<pref.Graphs.SweepIndicator.triangleSize;i++) {
|
||||||
|
p.drawLine(xpos - i,plotAreaBottom+i+1, xpos + i, plotAreaBottom+i+1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(dropPending) {
|
if(dropPending) {
|
||||||
p.setOpacity(0.5);
|
p.setOpacity(0.5);
|
||||||
p.setBrush(Qt::white);
|
p.setBrush(Qt::white);
|
||||||
|
@ -544,6 +544,17 @@ void TraceXYPlot::draw(QPainter &p)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((xAxis.getType() == XAxis::Type::Frequency || xAxis.getType() == XAxis::Type::TimeZeroSpan || xAxis.getType() == XAxis::Type::Power)
|
||||||
|
&& pref.Graphs.SweepIndicator.hide && !isnan(xSweep) && t->getSource() == Trace::Source::Live && t->isVisible() && !t->isPaused()) {
|
||||||
|
// check if this part of the trace is visible
|
||||||
|
double range = xAxis.getRangeMax() - xAxis.getRangeMin();
|
||||||
|
double afterSweep = now.x() - xSweep;
|
||||||
|
if(afterSweep > 0 && afterSweep * 100 / range <= pref.Graphs.SweepIndicator.hidePercent) {
|
||||||
|
// do not display this part of the trace
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// scale to plot coordinates
|
// scale to plot coordinates
|
||||||
auto p1 = plotValueToPixel(last, i);
|
auto p1 = plotValueToPixel(last, i);
|
||||||
auto p2 = plotValueToPixel(now, i);
|
auto p2 = plotValueToPixel(now, i);
|
||||||
@ -750,6 +761,26 @@ void TraceXYPlot::draw(QPainter &p)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// show sweep indicator if activated
|
||||||
|
if((xAxis.getType() == XAxis::Type::Frequency || xAxis.getType() == XAxis::Type::TimeZeroSpan || xAxis.getType() == XAxis::Type::Power)
|
||||||
|
&& !isnan(xSweep)) {
|
||||||
|
if(xSweep >= xAxis.getRangeMin() && xSweep <= xAxis.getRangeMax()) {
|
||||||
|
auto xpos = plotValueToPixel(QPointF(xSweep, 1.0), 0);
|
||||||
|
pen = QPen(pref.Graphs.Color.axis);
|
||||||
|
pen.setCosmetic(true);
|
||||||
|
p.setPen(pen);
|
||||||
|
if(pref.Graphs.SweepIndicator.line) {
|
||||||
|
p.drawLine(xpos.x(), plotAreaTop, xpos.x(), plotAreaBottom);
|
||||||
|
}
|
||||||
|
if(pref.Graphs.SweepIndicator.triangle) {
|
||||||
|
for(unsigned int i=0;i<pref.Graphs.SweepIndicator.triangleSize;i++) {
|
||||||
|
p.drawLine(xpos.x() - i,plotAreaBottom+i+1, xpos.x() + i, plotAreaBottom+i+1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(dropPending) {
|
if(dropPending) {
|
||||||
p.setOpacity(0.5);
|
p.setOpacity(0.5);
|
||||||
p.setBrush(Qt::white);
|
p.setBrush(Qt::white);
|
||||||
|
@ -130,6 +130,8 @@ PreferencesDialog::PreferencesDialog(Preferences *pref, QWidget *parent) :
|
|||||||
|
|
||||||
// Graph page
|
// Graph page
|
||||||
ui->GraphsZoomFactor->setPrecision(3);
|
ui->GraphsZoomFactor->setPrecision(3);
|
||||||
|
ui->GraphsSweepHidePercent->setPrecision(3);
|
||||||
|
ui->GraphsSweepHidePercent->setUnit("%");
|
||||||
|
|
||||||
// General page
|
// General page
|
||||||
if(p->TCPoverride) {
|
if(p->TCPoverride) {
|
||||||
@ -327,6 +329,11 @@ void PreferencesDialog::setInitialGUIState()
|
|||||||
ui->GraphsFontSizeTraceNames->setValue(p->Graphs.fontSizeTraceNames);
|
ui->GraphsFontSizeTraceNames->setValue(p->Graphs.fontSizeTraceNames);
|
||||||
ui->GraphsEnablePanZoom->setChecked(p->Graphs.enablePanAndZoom);
|
ui->GraphsEnablePanZoom->setChecked(p->Graphs.enablePanAndZoom);
|
||||||
ui->GraphsZoomFactor->setValue(p->Graphs.zoomFactor);
|
ui->GraphsZoomFactor->setValue(p->Graphs.zoomFactor);
|
||||||
|
ui->GraphsSweepTriangle->setChecked(p->Graphs.SweepIndicator.triangle);
|
||||||
|
ui->GraphsSweepTriangleSize->setValue(p->Graphs.SweepIndicator.triangleSize);
|
||||||
|
ui->GraphsSweepLine->setChecked(p->Graphs.SweepIndicator.line);
|
||||||
|
ui->GraphsSweepHide->setChecked(p->Graphs.SweepIndicator.hide);
|
||||||
|
ui->GraphsSweepHidePercent->setValue(p->Graphs.SweepIndicator.hidePercent);
|
||||||
|
|
||||||
ui->MarkerShowMarkerData->setChecked(p->Marker.defaultBehavior.showDataOnGraphs);
|
ui->MarkerShowMarkerData->setChecked(p->Marker.defaultBehavior.showDataOnGraphs);
|
||||||
ui->MarkerShowAllMarkerData->setChecked(p->Marker.defaultBehavior.showAllData);
|
ui->MarkerShowAllMarkerData->setChecked(p->Marker.defaultBehavior.showAllData);
|
||||||
@ -404,6 +411,11 @@ void PreferencesDialog::updateFromGUI()
|
|||||||
p->Graphs.fontSizeTraceNames = ui->GraphsFontSizeTraceNames->value();
|
p->Graphs.fontSizeTraceNames = ui->GraphsFontSizeTraceNames->value();
|
||||||
p->Graphs.enablePanAndZoom = ui->GraphsEnablePanZoom->isChecked();
|
p->Graphs.enablePanAndZoom = ui->GraphsEnablePanZoom->isChecked();
|
||||||
p->Graphs.zoomFactor = ui->GraphsZoomFactor->value();
|
p->Graphs.zoomFactor = ui->GraphsZoomFactor->value();
|
||||||
|
p->Graphs.SweepIndicator.triangle = ui->GraphsSweepTriangle->isChecked();
|
||||||
|
p->Graphs.SweepIndicator.triangleSize = ui->GraphsSweepTriangleSize->value();
|
||||||
|
p->Graphs.SweepIndicator.line = ui->GraphsSweepLine->isChecked();
|
||||||
|
p->Graphs.SweepIndicator.hide = ui->GraphsSweepHide->isChecked();
|
||||||
|
p->Graphs.SweepIndicator.hidePercent = ui->GraphsSweepHidePercent->value();
|
||||||
|
|
||||||
p->Marker.defaultBehavior.showDataOnGraphs = ui->MarkerShowMarkerData->isChecked();
|
p->Marker.defaultBehavior.showDataOnGraphs = ui->MarkerShowMarkerData->isChecked();
|
||||||
p->Marker.defaultBehavior.showAllData = ui->MarkerShowAllMarkerData->isChecked();
|
p->Marker.defaultBehavior.showAllData = ui->MarkerShowAllMarkerData->isChecked();
|
||||||
|
@ -137,6 +137,14 @@ public:
|
|||||||
|
|
||||||
bool enablePanAndZoom;
|
bool enablePanAndZoom;
|
||||||
double zoomFactor;
|
double zoomFactor;
|
||||||
|
|
||||||
|
struct {
|
||||||
|
bool triangle;
|
||||||
|
unsigned int triangleSize;
|
||||||
|
bool line;
|
||||||
|
bool hide;
|
||||||
|
double hidePercent;
|
||||||
|
} SweepIndicator;
|
||||||
} Graphs;
|
} Graphs;
|
||||||
struct {
|
struct {
|
||||||
struct {
|
struct {
|
||||||
@ -226,6 +234,11 @@ private:
|
|||||||
{&Graphs.fontSizeTraceNames, "Graphs.fontSizeTraceNames", 12},
|
{&Graphs.fontSizeTraceNames, "Graphs.fontSizeTraceNames", 12},
|
||||||
{&Graphs.enablePanAndZoom, "Graphs.enablePanAndZoom", true},
|
{&Graphs.enablePanAndZoom, "Graphs.enablePanAndZoom", true},
|
||||||
{&Graphs.zoomFactor, "Graphs.zoomFactor", 0.9},
|
{&Graphs.zoomFactor, "Graphs.zoomFactor", 0.9},
|
||||||
|
{&Graphs.SweepIndicator.triangle, "Graphs.SweepIndicator.triangle", true},
|
||||||
|
{&Graphs.SweepIndicator.triangleSize, "Graphs.SweepIndicator.triangleSize", 5},
|
||||||
|
{&Graphs.SweepIndicator.line, "Graphs.SweepIndicator.line", false},
|
||||||
|
{&Graphs.SweepIndicator.hide, "Graphs.SweepIndicator.hide", false},
|
||||||
|
{&Graphs.SweepIndicator.hidePercent, "Graphs.SweepIndicator.hidePercent", 3.0},
|
||||||
{&Marker.defaultBehavior.showDataOnGraphs, "Marker.defaultBehavior.ShowDataOnGraphs", true},
|
{&Marker.defaultBehavior.showDataOnGraphs, "Marker.defaultBehavior.ShowDataOnGraphs", true},
|
||||||
{&Marker.defaultBehavior.showAllData, "Marker.defaultBehavior.ShowAllData", false},
|
{&Marker.defaultBehavior.showAllData, "Marker.defaultBehavior.ShowAllData", false},
|
||||||
{&Marker.interpolatePoints, "Marker.interpolatePoints", false},
|
{&Marker.interpolatePoints, "Marker.interpolatePoints", false},
|
||||||
|
@ -6,14 +6,14 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>909</width>
|
<width>989</width>
|
||||||
<height>657</height>
|
<height>632</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Preferences</string>
|
<string>Preferences</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
<layout class="QVBoxLayout" name="verticalLayout_25">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
<item>
|
<item>
|
||||||
@ -73,21 +73,6 @@
|
|||||||
</item>
|
</item>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<widget class="QScrollArea" name="scrollArea">
|
|
||||||
<property name="widgetResizable">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<widget class="QWidget" name="scrollAreaWidgetContents">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>-334</y>
|
|
||||||
<width>687</width>
|
|
||||||
<height>938</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
|
||||||
<item>
|
<item>
|
||||||
<widget class="QStackedWidget" name="pageWidget">
|
<widget class="QStackedWidget" name="pageWidget">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
@ -103,10 +88,25 @@
|
|||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>1</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="Startup">
|
<widget class="QWidget" name="Startup">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>744</width>
|
||||||
|
<height>920</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||||
<item>
|
<item>
|
||||||
@ -138,9 +138,6 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Last used</string>
|
<string>Last used</string>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="buttonGroup">
|
|
||||||
<string notr="true">StartupSweepGroup</string>
|
|
||||||
</attribute>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -148,9 +145,6 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Default values</string>
|
<string>Default values</string>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="buttonGroup">
|
|
||||||
<string notr="true">StartupSweepGroup</string>
|
|
||||||
</attribute>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -158,9 +152,6 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Setup file</string>
|
<string>Setup file</string>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="buttonGroup">
|
|
||||||
<string notr="true">StartupSweepGroup</string>
|
|
||||||
</attribute>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -700,8 +691,27 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
<widget class="QWidget" name="Acquisition">
|
<widget class="QWidget" name="Acquisition">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_20">
|
<layout class="QVBoxLayout" name="verticalLayout_20">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea_2">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents_2">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>605</width>
|
||||||
|
<height>866</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_21">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="groupBox_6">
|
<widget class="QGroupBox" name="groupBox_6">
|
||||||
<property name="title">
|
<property name="title">
|
||||||
@ -1002,8 +1012,27 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
<widget class="QWidget" name="Graphs">
|
<widget class="QWidget" name="Graphs">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea_3">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents_3">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>-216</y>
|
||||||
|
<width>749</width>
|
||||||
|
<height>952</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_22">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_11">
|
<layout class="QVBoxLayout" name="verticalLayout_11">
|
||||||
<item>
|
<item>
|
||||||
@ -1178,6 +1207,107 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupBox_20">
|
||||||
|
<property name="title">
|
||||||
|
<string>Sweep Indicator</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_26">
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_16">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="GraphsSweepTriangle">
|
||||||
|
<property name="text">
|
||||||
|
<string>Show triangle of size </string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QSpinBox" name="GraphsSweepTriangleSize"/>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_52">
|
||||||
|
<property name="text">
|
||||||
|
<string>below X axis</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_15">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="GraphsSweepLine">
|
||||||
|
<property name="text">
|
||||||
|
<string>Show vertical line in graph</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_3">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_17">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="GraphsSweepHide">
|
||||||
|
<property name="text">
|
||||||
|
<string>Hide </string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="SIUnitEdit" name="GraphsSweepHidePercent"/>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_53">
|
||||||
|
<property name="text">
|
||||||
|
<string>of displayed data after the sweep point</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_5">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="groupBox_18">
|
<widget class="QGroupBox" name="groupBox_18">
|
||||||
<property name="title">
|
<property name="title">
|
||||||
@ -1301,8 +1431,27 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
<widget class="QWidget" name="Marker">
|
<widget class="QWidget" name="Marker">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea_4">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents_4">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>644</width>
|
||||||
|
<height>544</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_23">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_9">
|
<layout class="QVBoxLayout" name="verticalLayout_9">
|
||||||
<item>
|
<item>
|
||||||
@ -1425,8 +1574,27 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
<widget class="QWidget" name="SCPIServer">
|
<widget class="QWidget" name="SCPIServer">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_10">
|
<layout class="QHBoxLayout" name="horizontalLayout_10">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea_5">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents_6">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>644</width>
|
||||||
|
<height>544</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_10">
|
<layout class="QVBoxLayout" name="verticalLayout_10">
|
||||||
<item>
|
<item>
|
||||||
@ -1488,7 +1656,7 @@
|
|||||||
</property>
|
</property>
|
||||||
<property name="sizeHint" stdset="0">
|
<property name="sizeHint" stdset="0">
|
||||||
<size>
|
<size>
|
||||||
<width>471</width>
|
<width>473</width>
|
||||||
<height>20</height>
|
<height>20</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
@ -1496,8 +1664,27 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
<widget class="QWidget" name="CompoundDevices">
|
<widget class="QWidget" name="CompoundDevices">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_14">
|
<layout class="QHBoxLayout" name="horizontalLayout_14">
|
||||||
|
<item>
|
||||||
|
<widget class="QScrollArea" name="scrollArea_6">
|
||||||
|
<property name="widgetResizable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="scrollAreaWidgetContents_7">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>644</width>
|
||||||
|
<height>544</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_24">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_13">
|
<layout class="QHBoxLayout" name="horizontalLayout_13">
|
||||||
<item>
|
<item>
|
||||||
|
Loading…
Reference in New Issue
Block a user