X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fmainwindow.cpp;h=99e545681e71a3a71042dd30c56818606629e24d;hp=6b0fa676303052cb9478f2e1f4eaff7abd3a1bbf;hb=488883133fefe0af41737cea9b2fc9eb114042b8;hpb=e82fd481f744e0cccdad1d3552118280735ca8e5 diff --git a/pv/mainwindow.cpp b/pv/mainwindow.cpp index 6b0fa676..99e54568 100644 --- a/pv/mainwindow.cpp +++ b/pv/mainwindow.cpp @@ -46,10 +46,17 @@ namespace pv { -MainWindow::MainWindow(QWidget *parent) : +MainWindow::MainWindow(const char *open_file_name, + QWidget *parent) : QMainWindow(parent) { setup_ui(); + if (open_file_name) { + const QString s(QString::fromUtf8(open_file_name)); + QMetaObject::invokeMethod(this, "load_file", + Qt::QueuedConnection, + Q_ARG(QString, s)); + } } void MainWindow::setup_ui() @@ -175,12 +182,17 @@ void MainWindow::setup_ui() } +void MainWindow::load_file(QString file_name) +{ + _session.load_file(file_name.toStdString()); +} + void MainWindow::on_actionOpen_triggered() { - QString file_name = QFileDialog::getOpenFileName( + const QString file_name = QFileDialog::getOpenFileName( this, tr("Open File"), "", tr("Sigrok Sessions (*.sr)")); - _session.load_file(file_name.toStdString()); + load_file(file_name); } void MainWindow::on_actionQuit_triggered() @@ -216,8 +228,7 @@ void MainWindow::run_stop() case SigSession::Stopped: _session.start_capture( _sampling_bar->get_selected_device(), - _sampling_bar->get_record_length(), - _sampling_bar->get_sample_rate()); + _sampling_bar->get_record_length()); break; case SigSession::Running: