]> sigrok.org Git - pulseview.git/blobdiff - pv/toolbars/mainbar.hpp
Move file loading from MainBar to Session
[pulseview.git] / pv / toolbars / mainbar.hpp
index 088efa2f73cb6a8597cd6b4ea517bbbe40409a39..95959e1757212ae7d45738a60cdf649ddee9f02a 100644 (file)
@@ -78,9 +78,7 @@ private:
        static const char *SettingSaveDirectory;
 
 public:
-       MainBar(Session &session, pv::MainWindow &main_window,
-               std::string open_file_name = std::string(),
-               std::string open_file_format = std::string());
+       MainBar(Session &session, pv::MainWindow &main_window);
 
        Session &session(void) const;
 
@@ -90,6 +88,7 @@ public:
 
        void reset_device_selector();
 
+       QAction* action_new_view() const;
        QAction* action_open() const;
        QAction* action_save_as() const;
        QAction* action_save_selection_as() const;
@@ -101,21 +100,13 @@ public:
        QAction* action_view_zoom_one_to_one() const;
        QAction* action_view_show_cursors() const;
 
+       void session_error(const QString text, const QString info_text);
+
 private:
        void run_stop();
 
-       void select_device(std::shared_ptr<devices::Device> device);
-
        void select_init_device();
 
-       void load_file(QString file_name,
-               std::shared_ptr<sigrok::InputFormat> format = nullptr,
-               const std::map<std::string, Glib::VariantBase> &options =
-                       std::map<std::string, Glib::VariantBase>());
-
-       void load_init_file(const std::string &file_name,
-               const std::string &format);
-
        void save_selection_to_file();
 
        void update_sample_rate_selector();
@@ -125,8 +116,7 @@ private:
        void commit_sample_rate();
        void commit_sample_count();
 
-       void session_error(const QString text, const QString info_text);
-
+       QAction *const action_new_view_;
        QAction *const action_open_;
        QAction *const action_save_as_;
        QAction *const action_save_selection_as_;
@@ -149,12 +139,14 @@ private Q_SLOTS:
        void import_file(std::shared_ptr<sigrok::InputFormat> format);
 
        void on_device_selected();
+       void on_device_changed();
        void on_sample_count_changed();
        void on_sample_rate_changed();
-       void on_run_stop();
 
        void on_config_changed();
 
+       void on_actionNewView_triggered();
+
        void on_actionOpen_triggered();
        void on_actionSaveAs_triggered();
        void on_actionSaveSelectionAs_triggered();
@@ -171,9 +163,14 @@ private Q_SLOTS:
 
        void on_actionViewShowCursors_triggered();
 
+       void on_always_zoom_to_fit_changed(bool state);
+
 protected:
        bool eventFilter(QObject *watched, QEvent *event);
 
+Q_SIGNALS:
+       void new_view(Session *session);
+
 private:
        Session &session_;
 
@@ -192,14 +189,6 @@ private:
 
        bool sample_count_supported_;
 
-       QIcon icon_red_;
-       QIcon icon_green_;
-       QIcon icon_grey_;
-       QToolButton run_stop_button_;
-       QAction *run_stop_button_action_;
-
-       QToolButton menu_button_;
-
 #ifdef ENABLE_DECODE
        QMenu *const menu_decoders_add_;
 #endif