mirror of
https://github.com/jankae/LibreVNA.git
synced 2026-04-04 22:17:31 +00:00
CSV trace import
This commit is contained in:
parent
2868c2cb74
commit
c5440210b4
12 changed files with 255 additions and 68 deletions
|
|
@ -1,6 +1,7 @@
|
|||
#include "tracewidgetsa.h"
|
||||
|
||||
#include "Traces/tracecsvexport.h"
|
||||
#include <QFileDialog>
|
||||
#include "Traces/traceimportdialog.h"
|
||||
|
||||
TraceWidgetSA::TraceWidgetSA(TraceModel &model, QWidget *parent)
|
||||
: TraceWidget(model, parent)
|
||||
|
|
@ -13,3 +14,26 @@ void TraceWidgetSA::exportDialog()
|
|||
auto csv = new TraceCSVExport(model);
|
||||
csv->show();
|
||||
}
|
||||
|
||||
void TraceWidgetSA::importDialog()
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(nullptr, "Open measurement file", "", "CSV files (*.csv)", nullptr, QFileDialog::DontUseNativeDialog);
|
||||
if (!filename.isEmpty()) {
|
||||
std::vector<Trace*> traces;
|
||||
QString prefix = QString();
|
||||
auto csv = CSV::fromFile(filename);
|
||||
traces = Trace::createFromCSV(csv);
|
||||
// contruct prefix from filename
|
||||
prefix = filename;
|
||||
// remove any directory names (keep only the filename itself)
|
||||
int lastSlash = qMax(prefix.lastIndexOf('/'), prefix.lastIndexOf('\\'));
|
||||
if(lastSlash != -1) {
|
||||
prefix.remove(0, lastSlash + 1);
|
||||
}
|
||||
// remove file type
|
||||
prefix.truncate(prefix.indexOf('.'));
|
||||
prefix.append("_");
|
||||
auto i = new TraceImportDialog(model, traces, prefix);
|
||||
i->show();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ public:
|
|||
TraceWidgetSA(TraceModel &model, QWidget *parent = nullptr);
|
||||
protected slots:
|
||||
virtual void exportDialog() override;
|
||||
virtual void importDialog() override {};
|
||||
virtual void importDialog() override;
|
||||
|
||||
protected:
|
||||
virtual Trace::LiveParameter defaultParameter() override {return Trace::LiveParameter::Port1;};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue