]> sigrok.org Git - pulseview.git/blame - pv/widgets/decodergroupbox.hpp
Save/restore view states and signal settings
[pulseview.git] / pv / widgets / decodergroupbox.hpp
CommitLineData
204bae45
JH
1/*
2 * This file is part of the PulseView project.
3 *
4 * Copyright (C) 2013 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, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 */
20
7a01bd36
JH
21#ifndef PULSEVIEW_PV_WIDGETS_DECODERGROUPBOX_HPP
22#define PULSEVIEW_PV_WIDGETS_DECODERGROUPBOX_HPP
204bae45 23
dd048a7e 24#include <QPushButton>
204bae45
JH
25
26class QGridLayout;
27class QToolBar;
28
29namespace pv {
30namespace widgets {
31
32class DecoderGroupBox : public QWidget
33{
34 Q_OBJECT
35
36public:
ff59fa2c
SA
37 DecoderGroupBox(QString title, QWidget *parent = nullptr,
38 bool isDeletable = true);
204bae45
JH
39
40 void add_layout(QLayout *layout);
41
dd048a7e
JH
42 void set_decoder_visible(bool visible);
43
e9213170 44Q_SIGNALS:
204bae45
JH
45 void delete_decoder();
46
dd048a7e
JH
47 void show_hide_decoder();
48
204bae45 49private:
8dbbc7f0
JH
50 QGridLayout *const layout_;
51 QPushButton show_hide_button_;
204bae45
JH
52};
53
54} // widgets
55} // pv
56
7a01bd36 57#endif // PULSEVIEW_PV_WIDGETS_DECODERGROUPBOX_HPP