#include <memory>
#include <QMainWindow>
+#include <QShortcut>
#include <QSignalMapper>
-#include <QToolButton>
#include <QTabWidget>
-#include <QShortcut>
+#include <QToolButton>
+#include "globalsettings.hpp"
#include "session.hpp"
#include "views/viewbase.hpp"
#endif
}
-class MainWindow : public QMainWindow
+class MainWindow : public QMainWindow, public GlobalSettingsInterface
{
Q_OBJECT
public:
explicit MainWindow(DeviceManager &device_manager,
- string open_file_name = string(),
- string open_file_format = string(),
QWidget *parent = nullptr);
~MainWindow();
+ static void show_session_error(const QString text, const QString info_text);
+
shared_ptr<views::ViewBase> get_active_view() const;
shared_ptr<views::ViewBase> add_view(const QString &title,
void remove_session(shared_ptr<Session> session);
+ void add_session_with_file(string open_file_name, string open_file_format);
+
+ void add_default_session();
+
+ void save_sessions();
+ void restore_sessions();
+
+ void on_setting_changed(const QString &key, const QVariant &value);
+
private:
void setup_ui();
void save_ui_settings();
-
void restore_ui_settings();
shared_ptr<Session> get_tab_session(int index) const;
virtual bool restoreState(const QByteArray &state, int version = 0);
- void session_error(const QString text, const QString info_text);
-
private Q_SLOTS:
- void show_session_error(const QString text, const QString info_text);
-
void on_add_view(const QString &title, views::ViewType type,
Session *session);
void on_tab_changed(int index);
void on_tab_close_requested(int index);
- void on_view_coloured_bg_shortcut();
+ void on_view_colored_bg_shortcut();
void on_view_sticky_scrolling_shortcut();
void on_view_show_sampling_points_shortcut();
+ void on_view_show_analog_minor_grid_shortcut();
- void on_settingViewColouredBg_changed(const QVariant new_value);
+ void on_settingViewColoredBg_changed(const QVariant new_value);
void on_settingViewShowSamplingPoints_changed(const QVariant new_value);
+ void on_settingViewShowAnalogMinorGrid_changed(const QVariant new_value);
void on_close_current_tab();
QShortcut *view_sticky_scrolling_shortcut_;
QShortcut *view_show_sampling_points_shortcut_;
- QShortcut *view_coloured_bg_shortcut_;
+ QShortcut *view_show_analog_minor_grid_shortcut_;
+ QShortcut *view_colored_bg_shortcut_;
QShortcut *run_stop_shortcut_;
QShortcut *close_application_shortcut_;
QShortcut *close_current_tab_shortcut_;