summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--variant/default/main-window.cpp29
-rw-r--r--variant/default/main-window.hpp55
2 files changed, 41 insertions, 43 deletions
diff --git a/variant/default/main-window.cpp b/variant/default/main-window.cpp
index 9442ec14..192ad289 100644
--- a/variant/default/main-window.cpp
+++ b/variant/default/main-window.cpp
@@ -298,11 +298,6 @@ main_window::~main_window()
exit();
}
-void main_window::set_working_directory()
-{
- QDir::setCurrent(OPENTRACK_BASE_PATH);
-}
-
void main_window::save_modules()
{
m.b->save();
@@ -454,7 +449,7 @@ void main_window::start_tracker_()
{
double p[6] = {0,0,0, 0,0,0};
- display_pose(p, p);
+ show_pose_(p, p);
}
work = std::make_shared<Work>(pose, ev, ui.video_frame, current_tracker(), current_protocol(), current_filter());
@@ -508,7 +503,7 @@ void main_window::stop_tracker_()
{
double p[6] = {0,0,0, 0,0,0};
- display_pose(p, p);
+ show_pose_(p, p);
}
update_button_state(false, false);
@@ -516,7 +511,7 @@ void main_window::stop_tracker_()
ui.btnStartTracker->setFocus();
}
-void main_window::display_pose(const double *mapped, const double *raw)
+void main_window::show_pose_(const double* mapped, const double* raw)
{
ui.pose_display->rotate_async(mapped[Yaw], mapped[Pitch], -mapped[Roll],
mapped[TX], mapped[TY], mapped[TZ]);
@@ -572,10 +567,10 @@ void main_window::show_pose()
work->pipeline_.raw_and_mapped_pose(mapped, raw);
- display_pose(mapped, raw);
+ show_pose_(mapped, raw);
}
-void show_window(QWidget& d, bool fresh)
+static void show_window(QWidget& d, bool fresh)
{
if (fresh)
{
@@ -594,7 +589,7 @@ void show_window(QWidget& d, bool fresh)
}
template<typename t, typename F>
-bool mk_window_common(std::unique_ptr<t>& d, F&& fun)
+static bool mk_window_common(std::unique_ptr<t>& d, F&& fun)
{
bool fresh = false;
@@ -608,7 +603,7 @@ bool mk_window_common(std::unique_ptr<t>& d, F&& fun)
}
template<typename t, typename... Args>
-bool mk_window(std::unique_ptr<t>& place, Args&&... params)
+static bool mk_window(std::unique_ptr<t>& place, Args&&... params)
{
return mk_window_common(place, [&] {
return std::make_unique<t>(params...);
@@ -616,7 +611,7 @@ bool mk_window(std::unique_ptr<t>& place, Args&&... params)
}
template<typename t>
-bool mk_dialog(std::unique_ptr<t>& place, const std::shared_ptr<dylib>& lib)
+static bool mk_dialog(std::unique_ptr<t>& place, const std::shared_ptr<dylib>& lib)
{
using u = std::unique_ptr<t>;
@@ -784,7 +779,7 @@ void main_window::toggle_restore_from_tray(QSystemTrayIcon::ActivationReason e)
ensure_tray();
- const bool is_minimized = isHidden() || !is_tray_enabled();
+ const bool is_minimized = isHidden() || !tray_enabled();
menu_action_show.setText(!isHidden() ? tr("Show the Octopus") : tr("Hide the Octopus"));
@@ -809,7 +804,7 @@ bool main_window::maybe_hide_to_tray(QEvent* e)
{
if (e->type() == QEvent::WindowStateChange &&
(windowState() & Qt::WindowMinimized) &&
- is_tray_enabled())
+ tray_enabled())
{
e->accept();
ensure_tray();
@@ -894,14 +889,14 @@ bool main_window::event(QEvent* event)
return QMainWindow::event(event);
}
-bool main_window::is_tray_enabled()
+bool main_window::tray_enabled()
{
return s.tray_enabled && QSystemTrayIcon::isSystemTrayAvailable();
}
bool main_window::start_in_tray()
{
- return is_tray_enabled() && s.tray_start;
+ return tray_enabled() && s.tray_start;
}
void main_window::set_profile_in_registry(const QString &profile)
diff --git a/variant/default/main-window.hpp b/variant/default/main-window.hpp
index a236b240..6333c131 100644
--- a/variant/default/main-window.hpp
+++ b/variant/default/main-window.hpp
@@ -44,16 +44,21 @@ class main_window final : public QMainWindow, private State
Ui::main_window ui;
- Shortcuts global_shortcuts;
module_settings m;
+
std::unique_ptr<QSystemTrayIcon> tray;
QMenu tray_menu { this };
+
QTimer pose_update_timer { this };
QTimer det_timer;
QTimer config_list_timer;
+
+ Shortcuts global_shortcuts;
+ QShortcut kbd_quit { QKeySequence("Ctrl+Q"), this };
+
std::unique_ptr<options_dialog> options_widget;
std::unique_ptr<mapping_dialog> mapping_widget;
- QShortcut kbd_quit { QKeySequence("Ctrl+Q"), this };
+
std::unique_ptr<IFilterDialog> pFilterDialog;
std::unique_ptr<IProtocolDialog> pProtocolDialog;
std::unique_ptr<ITrackerDialog> pTrackerDialog;
@@ -84,47 +89,36 @@ class main_window final : public QMainWindow, private State
qt_sig::nullary toggle_tracker { this, &main_window::toggle_tracker_, Qt::QueuedConnection };
qt_sig::nullary restart_tracker { this, &main_window::restart_tracker_, Qt::QueuedConnection };
- void update_button_state(bool running, bool inertialp);
- void display_pose(const double* mapped, const double* raw);
- void set_title(const QString& game_title = QString());
- [[nodiscard]] static bool get_new_config_name_from_dialog(QString &ret);
- void set_profile_in_registry(const QString& profile);
- void register_shortcuts();
- void set_keys_enabled(bool flag);
- bool config_listed(const QString& name);
-
void init_dylibs();
void init_tray_menu();
void init_profiles();
- void init_shortcuts();
void init_buttons();
+ void init_shortcuts();
+ void register_shortcuts();
+ void set_keys_enabled(bool flag);
+
+ void update_button_state(bool running, bool inertialp);
+
#if !defined _WIN32
void annoy_if_root();
#endif
void changeEvent(QEvent* e) override;
- bool event(QEvent *event) override;
bool maybe_hide_to_tray(QEvent* e);
-
void closeEvent(QCloseEvent *event) override;
-
- void die_on_config_not_writable();
- bool is_tray_enabled();
- bool start_in_tray();
-
- void refresh_config_list();
-
- void make_empty_config();
- void make_copied_config();
- void open_config_directory();
+ bool event(QEvent *event) override;
void show_tracker_settings();
void show_proto_settings();
void show_filter_settings();
+
void show_options_dialog();
void show_mapping_window();
+
void show_pose();
+ void show_pose_(const double* mapped, const double* raw);
+ void set_title(const QString& game_title = QString());
void start_tracker_();
void stop_tracker_();
@@ -132,18 +126,27 @@ class main_window final : public QMainWindow, private State
void toggle_tracker_();
void set_profile(const QString& new_name, bool migrate = true);
+ void set_profile_in_registry(const QString& profile);
+ void refresh_config_list();
+ bool config_listed(const QString& name);
+ void die_on_config_not_writable();
void maybe_start_profile_from_executable();
+ [[nodiscard]] static bool get_new_config_name_from_dialog(QString &ret);
+
+ void make_empty_config();
+ void make_copied_config();
+ void open_config_directory();
void ensure_tray();
void toggle_restore_from_tray(QSystemTrayIcon::ActivationReason e);
+ bool tray_enabled();
+ bool start_in_tray();
void save_modules();
static std::tuple<dylib_ptr, int> module_by_name(const QString& name, Modules::dylib_list& list);
void exit(int status = EXIT_SUCCESS);
- static void set_working_directory();
-
public:
main_window();
~main_window() override;