diff options
author | dec05eba <dec05eba@protonmail.com> | 2024-10-27 01:52:22 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2024-10-27 01:54:37 +0200 |
commit | cfcee1a5d8e5068cdc5171b01beb9f9e6251e51e (patch) | |
tree | d2237ae86f9c41bb74ae05be25f5209857e1a132 /include/gui | |
parent | 1d2fc77cfcd3d40c3a382d3f5f8e6c28e8b38da9 (diff) |
Add option to change video resolution
Diffstat (limited to 'include/gui')
-rw-r--r-- | include/gui/CheckBox.hpp | 4 | ||||
-rw-r--r-- | include/gui/SettingsPage.hpp | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/include/gui/CheckBox.hpp b/include/gui/CheckBox.hpp index 8703794..0c86c0a 100644 --- a/include/gui/CheckBox.hpp +++ b/include/gui/CheckBox.hpp @@ -6,6 +6,8 @@ #include <mglpp/graphics/Text.hpp> #include <mglpp/graphics/Sprite.hpp> +#include <functional> + namespace gsr { class CheckBox : public Widget { public: @@ -20,6 +22,8 @@ namespace gsr { void set_checked(bool checked, bool animated = false); bool is_checked() const; + + std::function<void(bool checked)> on_changed; private: void apply_animation(); mgl::vec2f get_checkbox_size(); diff --git a/include/gui/SettingsPage.hpp b/include/gui/SettingsPage.hpp index 4f5a7c9..77542a8 100644 --- a/include/gui/SettingsPage.hpp +++ b/include/gui/SettingsPage.hpp @@ -39,8 +39,13 @@ namespace gsr { std::unique_ptr<Entry> create_area_height_entry(); std::unique_ptr<List> create_area_size(); std::unique_ptr<List> create_area_size_section(); + std::unique_ptr<Entry> create_video_width_entry(); + std::unique_ptr<Entry> create_video_height_entry(); + std::unique_ptr<List> create_video_resolution(); + std::unique_ptr<List> create_video_resolution_section(); std::unique_ptr<CheckBox> create_restore_portal_session_checkbox(); std::unique_ptr<List> create_restore_portal_session_section(); + std::unique_ptr<Widget> create_change_video_resolution_section(); std::unique_ptr<Widget> create_capture_target(const GsrInfo &gsr_info); std::unique_ptr<ComboBox> create_audio_track_selection_checkbox(); std::unique_ptr<Button> create_remove_audio_track_button(List *audio_device_list_ptr); @@ -107,6 +112,7 @@ namespace gsr { List *settings_list_ptr = nullptr; List *select_window_list_ptr = nullptr; List *area_size_list_ptr = nullptr; + List *video_resolution_list_ptr = nullptr; List *restore_portal_session_list_ptr = nullptr; List *color_range_list_ptr = nullptr; Widget *video_codec_ptr = nullptr; @@ -115,11 +121,14 @@ namespace gsr { ComboBox *record_area_box_ptr = nullptr; Entry *area_width_entry_ptr = nullptr; Entry *area_height_entry_ptr = nullptr; + Entry *video_width_entry_ptr = nullptr; + Entry *video_height_entry_ptr = nullptr; Entry *framerate_entry_ptr = nullptr; Entry *video_bitrate_entry_ptr = nullptr; List *video_bitrate_list_ptr = nullptr; List *audio_devices_list_ptr = nullptr; CheckBox *merge_audio_tracks_checkbox_ptr = nullptr; + CheckBox *change_video_resolution_checkbox_ptr = nullptr; ComboBox *color_range_box_ptr = nullptr; ComboBox *video_quality_box_ptr = nullptr; ComboBox *video_codec_box_ptr = nullptr; |