diff options
Diffstat (limited to 'ui')
| -rw-r--r-- | ui/include/turns/ui/widgets/preferences.hpp | 3 | ||||
| -rw-r--r-- | ui/res/ui.cmb | 12 | ||||
| -rw-r--r-- | ui/src/init.cpp | 2 | ||||
| -rw-r--r-- | ui/src/widgets/preferences.cpp | 4 |
4 files changed, 17 insertions, 4 deletions
diff --git a/ui/include/turns/ui/widgets/preferences.hpp b/ui/include/turns/ui/widgets/preferences.hpp index 749d4fd..449957d 100644 --- a/ui/include/turns/ui/widgets/preferences.hpp +++ b/ui/include/turns/ui/widgets/preferences.hpp @@ -2,6 +2,7 @@ #define TURNS_UI_WIDGETS_PREFERENCES_HPP #include "turns/adw/preferencespage.hpp" +#include "turns/adw/switchrow.hpp" #include "turns/ui/widgets/template_widget.hpp" #include <glibmm/refptr.h> @@ -26,6 +27,7 @@ namespace turns::ui::widgets "friendly_color_button", "hostile_color_button", "secret_color_button", + "skip_defeated", }; explicit preferences(Glib::RefPtr<Gio::Settings> settings = {}); @@ -43,6 +45,7 @@ namespace turns::ui::widgets Gtk::ColorDialogButton * m_friendly_color_button{}; Gtk::ColorDialogButton * m_hostile_color_button{}; Gtk::ColorDialogButton * m_secret_color_button{}; + adw::SwitchRow * m_skip_defeated{}; }; } // namespace turns::ui::widgets diff --git a/ui/res/ui.cmb b/ui/res/ui.cmb index 2538784..a3f5dd8 100644 --- a/ui/res/ui.cmb +++ b/ui/res/ui.cmb @@ -70,8 +70,8 @@ (6,1,"AdwPreferencesPage","gtkmm__CustomObject_preferences",None,None,None,None,None,None,None), (6,2,"AdwPreferencesGroup","colors",1,None,None,None,None,None,None), (6,3,"AdwActionRow",None,2,None,None,None,None,None,None), - (6,4,"AdwActionRow","hostile",2,None,None,None,1,None,None), - (6,5,"AdwActionRow","secret",2,None,None,None,2,None,None), + (6,4,"AdwActionRow",None,2,None,None,None,1,None,None), + (6,5,"AdwActionRow",None,2,None,None,None,2,None,None), (6,7,"GtkColorDialogButton","friendly_color_button",3,None,None,None,-1,None,None), (6,10,"GtkColorDialogButton","hostile_color_button",4,None,None,None,1,None,None), (6,11,"GtkColorDialogButton","secret_color_button",5,None,None,None,1,None,None), @@ -80,7 +80,9 @@ (6,14,"GtkColorDialog",None,11,None,None,None,-1,None,None), (6,15,"GtkButton","hostile_reset_button",4,None,None,None,1,None,None), (6,16,"GtkButton","friendly_reset_button",3,None,None,None,1,None,None), - (6,17,"GtkButton","secret_reset_button",5,None,None,None,1,None,None) + (6,17,"GtkButton","secret_reset_button",5,None,None,None,1,None,None), + (6,18,"AdwPreferencesGroup","control",1,None,None,None,1,None,None), + (6,19,"AdwSwitchRow","skip_defeated",18,None,None,None,-1,None,None) </object> <object_property> (1,1,"AdwApplicationWindow","content",None,None,None,None,None,2,None,None,None,None), @@ -207,7 +209,9 @@ (6,16,"GtkButton","icon-name","process-stop-symbolic",None,None,None,None,None,None,None,None,None), (6,16,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None), (6,17,"GtkButton","icon-name","process-stop-symbolic",None,None,None,None,None,None,None,None,None), - (6,17,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None) + (6,17,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None), + (6,18,"AdwPreferencesGroup","title","Control",None,None,None,None,None,None,None,None,None), + (6,19,"AdwPreferencesRow","title","Skip defeated",None,None,None,None,None,None,None,None,None) </object_property> <object_data> (1,1,"GtkWidget",2,2,None,1,None,None,None,None), diff --git a/ui/src/init.cpp b/ui/src/init.cpp index 8d48ced..f8c9e35 100644 --- a/ui/src/init.cpp +++ b/ui/src/init.cpp @@ -1,6 +1,7 @@ #include "turns/ui/init.hpp" #include "turns/ui/widgets/participant_row.hpp" +#include "turns/ui/widgets/preferences.hpp" #include "turns/ui/widgets/turn_order_view.hpp" namespace turns::ui @@ -9,6 +10,7 @@ namespace turns::ui auto register_types() -> void { static_cast<void>(widgets::participant_row{{}}); + static_cast<void>(widgets::preferences{{}}); static_cast<void>(widgets::turn_order_view{{}}); } diff --git a/ui/src/widgets/preferences.cpp b/ui/src/widgets/preferences.cpp index 187da2e..3af7d15 100644 --- a/ui/src/widgets/preferences.cpp +++ b/ui/src/widgets/preferences.cpp @@ -1,5 +1,6 @@ #include "turns/ui/widgets/preferences.hpp" +#include "turns/adw/switchrow.hpp" #include "turns/ui/widgets/template_widget.hpp" #include <sigc++/functors/mem_fun.h> @@ -36,6 +37,7 @@ namespace turns::ui::widgets , m_friendly_color_button{get_widget<Gtk::ColorDialogButton>("friendly_color_button")} , m_hostile_color_button{get_widget<Gtk::ColorDialogButton>("hostile_color_button")} , m_secret_color_button{get_widget<Gtk::ColorDialogButton>("secret_color_button")} + , m_skip_defeated{get_widget<adw::SwitchRow>("skip_defeated")} { if (!m_settings) { @@ -59,6 +61,8 @@ namespace turns::ui::widgets bind_reset(key, m_secret_reset_button); bind_setting(key, m_secret_color_button); } + + m_settings->bind("skip-defeated", m_skip_defeated->property_active()); } auto preferences::bind_reset(Glib::ustring const & key, Gtk::Button * button) -> void |
