]> sigrok.org Git - pulseview.git/blobdiff - pv/mainwindow.h
Added UI error handling for file loading and capturing
[pulseview.git] / pv / mainwindow.h
index 88cbd6fd8f6492e4870d6263b77525402b76a581..8b7973744a881a19f421d91c1046394d3c6938f8 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#ifndef MAINWINDOW_H
-#define MAINWINDOW_H
+#ifndef PULSEVIEW_PV_MAINWINDOW_H
+#define PULSEVIEW_PV_MAINWINDOW_H
+
+#include <list>
 
 #include <QMainWindow>
 
@@ -46,46 +48,67 @@ class MainWindow : public QMainWindow
        Q_OBJECT
 
 public:
-       explicit MainWindow(QWidget *parent = 0);
+       explicit MainWindow(const char *open_file_name = NULL,
+               QWidget *parent = 0);
 
 private:
        void setup_ui();
+       void scan_devices();
+
+       void session_error(const QString text, const QString info_text);
 
 private:
 
        SigSession _session;
+       std::list<sr_dev_inst*> _devices;
+
        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_about;
+       QAction *_action_view_show_cursors;
 
-       QMenuBar *_menu_bar;
-       QMenu *_menu_file;
-       QMenu *_menu_view;
        QMenu *_menu_help;
+       QAction *_action_about;
 
        QWidget *_central_widget;
        QVBoxLayout *_vertical_layout;
 
        QToolBar *_toolbar;
        SamplingBar *_sampling_bar;
-       QStatusBar *_status_bar;
 
 private slots:
+       void load_file(QString file_name);
+
+
+       void show_session_error(
+               const QString text, const QString info_text);
 
        void on_actionOpen_triggered();
+       void on_actionQuit_triggered();
+
+       void on_actionConnect_triggered();
 
        void on_actionViewZoomIn_triggered();
 
        void on_actionViewZoomOut_triggered();
 
+       void on_actionViewShowCursors_triggered();
+
        void on_actionAbout_triggered();
 
        void run_stop();
+
+       void capture_state_changed(int state);
 };
 
 } // namespace pv
 
-#endif // MAINWINDOW_H
+#endif // PULSEVIEW_PV_MAINWINDOW_H