namespace pv {
+class DeviceManager;
+
+namespace toolbars {
class SamplingBar;
+}
namespace view {
class View;
Q_OBJECT
public:
- explicit MainWindow(const char *open_file_name = NULL,
+ explicit MainWindow(DeviceManager &device_manager,
+ 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);
+
+ /**
+ * Updates the device list in the sampling bar, and updates the
+ * selection.
+ * @param selected_device The device to select, or NULL if the
+ * first device in the device list should be selected.
+ */
+ void update_device_list(
+ struct sr_dev_inst *selected_device = NULL);
+
+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 device_selected();
+
+ void run_stop();
+
+ void capture_state_changed(int state);
private:
+ DeviceManager &_device_manager;
SigSession _session;
- std::list<sr_dev_inst*> _devices;
pv::view::View *_view;
QVBoxLayout *_vertical_layout;
QToolBar *_toolbar;
- SamplingBar *_sampling_bar;
-
-private slots:
- void load_file(QString file_name);
-
- 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);
+ toolbars::SamplingBar *_sampling_bar;
};
} // namespace pv