#include <boost/weak_ptr.hpp>
#include <QMainWindow>
-#include <QSignalMapper>
#include "sigsession.h"
-class QAction;
-class QMenuBar;
-class QMenu;
+struct srd_decoder;
+
class QVBoxLayout;
-class QStatusBar;
-class QToolBar;
-class QWidget;
namespace pv {
class View;
}
+namespace widgets {
+class DecoderMenu;
+}
+
class MainWindow : public QMainWindow
{
Q_OBJECT
void update_device_list(
struct sr_dev_inst *selected_device = NULL);
- static gint decoder_name_cmp(gconstpointer a, gconstpointer b);
- void setup_add_decoders(QMenu *parent);
-
private slots:
void load_file(QString file_name);
const QString text, const QString info_text);
void on_actionOpen_triggered();
+ void on_actionSaveAs_triggered();
void on_actionQuit_triggered();
void on_actionConnect_triggered();
void on_actionViewZoomOut_triggered();
+ void on_actionViewZoomFit_triggered();
+
+ void on_actionViewZoomOneToOne_triggered();
+
void on_actionViewShowCursors_triggered();
void on_actionAbout_triggered();
- void device_selected();
-
- void add_decoder(QObject *action);
+ void add_decoder(srd_decoder *decoder);
void run_stop();
pv::view::View *_view;
- QMenuBar *_menu_bar;
- QMenu *_menu_file;
- QAction *_action_open;
- QAction *_action_connect;
- QAction *_action_quit;
-
- QMenu *_menu_view;
- QAction *_action_view_zoom_in;
- QAction *_action_view_zoom_out;
- QAction *_action_view_show_cursors;
-
- QMenu *_menu_decoders;
- QMenu *_menu_decoders_add;
- QSignalMapper _decoders_add_mapper;
-
- QMenu *_menu_help;
- QAction *_action_about;
-
QWidget *_central_widget;
QVBoxLayout *_vertical_layout;
- QToolBar *_toolbar;
toolbars::SamplingBar *_sampling_bar;
};