PulseView  unreleased development snapshot
A Qt-based sigrok GUI
inputoutputoptions.cpp
Go to the documentation of this file.
1 /*
2  * This file is part of the PulseView project.
3  *
4  * Copyright (C) 2012 Joel Holdsworth <joel@airwebreathe.org.uk>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #include "inputoutputoptions.hpp"
21 
22 #include <pv/prop/property.hpp>
23 
24 using std::map;
25 using std::shared_ptr;
26 using std::string;
27 
28 using Glib::VariantBase;
29 
30 using sigrok::Option;
31 
32 namespace pv {
33 namespace dialogs {
34 
36  const map<string, shared_ptr<Option>> &options, QWidget *parent) :
37  QDialog(parent),
38  layout_(this),
39  button_box_(QDialogButtonBox::Ok | QDialogButtonBox::Cancel,
40  Qt::Horizontal, this),
41  binding_(options)
42 {
43  setWindowTitle(title);
44 
45  connect(&button_box_, SIGNAL(accepted()), this, SLOT(accept()));
46  connect(&button_box_, SIGNAL(rejected()), this, SLOT(reject()));
47 
48  setLayout(&layout_);
49 
50  layout_.addWidget(binding_.get_property_form(this));
51  layout_.addWidget(&button_box_);
52 }
53 
54 const map<string, VariantBase>& InputOutputOptions::options() const
55 {
56  return binding_.options();
57 }
58 
60 {
61  QDialog::accept();
62 
63  // Commit the properties
64  binding_.commit();
65 }
66 
67 } // namespace dialogs
68 } // namespace pv
QWidget * get_property_form(QWidget *parent, bool auto_commit=false)
Definition: binding.cpp:102
InputOutputOptions(const QString &title, const map< string, shared_ptr< sigrok::Option >> &options, QWidget *parent)
Mac OS X or Android For some we provide binary for others we provide installers and for others we provide AppImage containers that you can run without the need to install anything Check the the usual way to install PulseView is to install the packages provided by your distro s package manager sometimes only outdated packages are made available to you In that you have two options
Definition: installation.txt:2
const map< string, Glib::VariantBase > & options() const
pv::binding::InputOutput binding_
it will come up with a session that has the demo device selected That you can get to know the program even when you don t have any hardware to use it you see a list of devices PulseView has recognized If the device you want to use is you can just select it here image::device_selector_dropdown png[] If it s not you ll need to scan for it first Since most serial port and Ethernet devices can t be auto this is usually required for those To do either choose the Connect to Device option from the list or click on the button itself You will see the following you ll need to pick a driver that you want to use In order to do this
Definition: acquisition.txt:14
const map< string, Glib::VariantBase > & options() const