diff options
author | dec05eba <dec05eba@protonmail.com> | 2025-01-24 00:42:33 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2025-01-24 00:42:33 +0100 |
commit | f036fcbc0ff56dbab185d42c40f748e9c097bf22 (patch) | |
tree | 69eef4cacfae906c7866a3180d361b318408d83f /include | |
parent | 5b84d7421f44c8bc00999071f2b3d46d238a9946 (diff) |
Add 'restart replay on save' option
Diffstat (limited to 'include')
-rw-r--r-- | include/Config.hpp | 1 | ||||
-rw-r--r-- | include/GsrInfo.hpp | 17 | ||||
-rw-r--r-- | include/gui/SettingsPage.hpp | 2 |
3 files changed, 20 insertions, 0 deletions
diff --git a/include/Config.hpp b/include/Config.hpp index 0d311b2..34c2010 100644 --- a/include/Config.hpp +++ b/include/Config.hpp @@ -90,6 +90,7 @@ namespace gsr { RecordOptions record_options; std::string turn_on_replay_automatically_mode = "dont_turn_on_automatically"; bool save_video_in_game_folder = false; + bool restart_replay_on_save = false; bool show_replay_started_notifications = true; bool show_replay_stopped_notifications = true; bool show_replay_saved_notifications = true; diff --git a/include/GsrInfo.hpp b/include/GsrInfo.hpp index 86df0b7..a8c0742 100644 --- a/include/GsrInfo.hpp +++ b/include/GsrInfo.hpp @@ -2,6 +2,7 @@ #include <string> #include <vector> +#include <stdint.h> #include <mglpp/system/vec.hpp> @@ -24,6 +25,21 @@ namespace gsr { mgl::vec2i size; }; + struct GsrVersion { + uint8_t major = 0; + uint8_t minor = 0; + uint8_t patch = 0; + + bool operator>(const GsrVersion &other) const; + bool operator>=(const GsrVersion &other) const; + bool operator<(const GsrVersion &other) const; + bool operator<=(const GsrVersion &other) const; + bool operator==(const GsrVersion &other) const; + bool operator!=(const GsrVersion &other) const; + + std::string to_string() const; + }; + struct SupportedCaptureOptions { bool window = false; bool focused = false; @@ -40,6 +56,7 @@ namespace gsr { struct SystemInfo { DisplayServer display_server = DisplayServer::UNKNOWN; bool supports_app_audio = false; + GsrVersion gsr_version; }; enum class GpuVendor { diff --git a/include/gui/SettingsPage.hpp b/include/gui/SettingsPage.hpp index efa958e..8db3915 100644 --- a/include/gui/SettingsPage.hpp +++ b/include/gui/SettingsPage.hpp @@ -97,6 +97,7 @@ namespace gsr { std::unique_ptr<List> create_replay_time(); std::unique_ptr<RadioButton> create_start_replay_automatically(); std::unique_ptr<CheckBox> create_save_replay_in_game_folder(); + std::unique_ptr<CheckBox> create_restart_replay_on_save(); std::unique_ptr<Label> create_estimated_replay_file_size(); void update_estimated_replay_file_size(); std::unique_ptr<CheckBox> create_save_recording_in_game_folder(); @@ -170,6 +171,7 @@ namespace gsr { List *stream_url_list_ptr = nullptr; List *container_list_ptr = nullptr; CheckBox *save_replay_in_game_folder_ptr = nullptr; + CheckBox *restart_replay_on_save = nullptr; Label *estimated_file_size_ptr = nullptr; CheckBox *show_replay_started_notification_checkbox_ptr = nullptr; CheckBox *show_replay_stopped_notification_checkbox_ptr = nullptr; |