]> sigrok.org Git - pulseview.git/blobdiff - mainwindow.cpp
Clip signal painting with glScissor
[pulseview.git] / mainwindow.cpp
index d85c0a40e46e0604690cb62ab6ea5eefec04d11a..510e552af9b1e751e6b44f4d04dc33363e9c627f 100644 (file)
@@ -28,6 +28,8 @@ extern "C" {
 
 #include "mainwindow.h"
 #include "ui_mainwindow.h"
+#include "samplingbar.h"
+#include "sigview.h"
 
 extern "C" {
 /* __STDC_FORMAT_MACROS is required for PRIu64 and friends (in C++). */
@@ -41,22 +43,30 @@ extern "C" {
 
 MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
-       ui(new Ui::MainWindow)
+       _ui(new Ui::MainWindow)
 {
-       ui->setupUi(this);
+       _ui->setupUi(this);
+
+       _sampling_bar = new SamplingBar(this);
+       connect(_sampling_bar, SIGNAL(run_stop()), this,
+               SLOT(run_stop()));
+       addToolBar(_sampling_bar);
+
+       _view = new SigView(_session, this);
+       _ui->verticalLayout->addWidget(_view);
 }
 
 MainWindow::~MainWindow()
 {
-       delete ui;
+       delete _ui;
 }
 
 void MainWindow::on_actionOpen_triggered()
 {
-       QString fileName = QFileDialog::getOpenFileName(
+       QString file_name = QFileDialog::getOpenFileName(
                this, tr("Open File"), "",
                tr("Sigrok Sessions (*.sr)"));
-       session.loadFile(fileName.toStdString());
+       _session.load_file(file_name.toStdString());
 }
 
 void MainWindow::on_actionAbout_triggered()
@@ -64,3 +74,10 @@ void MainWindow::on_actionAbout_triggered()
        About dlg(this);
        dlg.exec();
 }
+
+void MainWindow::run_stop()
+{
+       _session.start_capture(
+               _sampling_bar->get_selected_device(),
+               _sampling_bar->get_sample_rate());
+}