summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--adw/include/adwaitamm/alertdialog.hpp9
-rw-r--r--adw/include/adwaitamm/enums.hpp8
-rw-r--r--adw/src/alertdialog.cpp4
-rw-r--r--adw/src/enums.cpp6
-rw-r--r--ui/src/windows/tracker/actions.cpp7
5 files changed, 20 insertions, 14 deletions
diff --git a/adw/include/adwaitamm/alertdialog.hpp b/adw/include/adwaitamm/alertdialog.hpp
index 8608cc6..2a34a45 100644
--- a/adw/include/adwaitamm/alertdialog.hpp
+++ b/adw/include/adwaitamm/alertdialog.hpp
@@ -22,6 +22,8 @@ using AdwAlertDialogClass = struct _AdwAlertDialogClass;
namespace Adwaita
{
+ enum struct ResponseAppearance;
+
struct AlertDialog : Dialog,
helpers::gobj_mixin<AlertDialog, AdwAlertDialog>
{
@@ -38,13 +40,6 @@ namespace Adwaita
auto static wrap_new(GObject * object) -> Glib::ObjectBase *;
};
- enum struct ResponseAppearance : int
- {
- _default,
- suggested,
- destructive,
- };
-
using BaseObjectType = Class::BaseObjectType;
using BaseClassType = Class::BaseClassType;
using CppObjectType = Class::CppObjectType;
diff --git a/adw/include/adwaitamm/enums.hpp b/adw/include/adwaitamm/enums.hpp
index d19ebc7..9bc9f0e 100644
--- a/adw/include/adwaitamm/enums.hpp
+++ b/adw/include/adwaitamm/enums.hpp
@@ -28,6 +28,13 @@ namespace Adwaita
PreferDark,
ForceDark,
};
+
+ enum struct ResponseAppearance
+ {
+ Default,
+ Suggested,
+ Destructive,
+ };
} // namespace Adwaita
namespace Glib
@@ -43,6 +50,7 @@ namespace Glib
VALUE_SPECIALIZATION(AccentColor);
VALUE_SPECIALIZATION(ColorScheme);
+ VALUE_SPECIALIZATION(ResponseAppearance);
#undef VALUE_SPECIALIZATION
diff --git a/adw/src/alertdialog.cpp b/adw/src/alertdialog.cpp
index ea9cdca..585d9e8 100644
--- a/adw/src/alertdialog.cpp
+++ b/adw/src/alertdialog.cpp
@@ -29,10 +29,6 @@
namespace Adwaita
{
- static_assert(static_cast<int>(AlertDialog::ResponseAppearance::_default) == ADW_RESPONSE_DEFAULT);
- static_assert(static_cast<int>(AlertDialog::ResponseAppearance::suggested) == ADW_RESPONSE_SUGGESTED);
- static_assert(static_cast<int>(AlertDialog::ResponseAppearance::destructive) == ADW_RESPONSE_DESTRUCTIVE);
-
namespace
{
auto constinit _class = AlertDialog::Class{};
diff --git a/adw/src/enums.cpp b/adw/src/enums.cpp
index 02dd74a..9da6bc1 100644
--- a/adw/src/enums.cpp
+++ b/adw/src/enums.cpp
@@ -2,6 +2,7 @@
#include <adwaitamm/stylemanager.hpp>
+#include <adwaita.h>
#include <glib-object.h>
#include <type_traits>
@@ -32,6 +33,10 @@ namespace Adwaita
static_assert(matches<ColorScheme::PreferDark, ADW_COLOR_SCHEME_PREFER_DARK>);
static_assert(matches<ColorScheme::ForceDark, ADW_COLOR_SCHEME_FORCE_DARK>);
+ static_assert(matches<ResponseAppearance::Default, ADW_RESPONSE_DEFAULT>);
+ static_assert(matches<ResponseAppearance::Suggested, ADW_RESPONSE_SUGGESTED>);
+ static_assert(matches<ResponseAppearance::Destructive, ADW_RESPONSE_DESTRUCTIVE>);
+
} // namespace Adwaita
namespace Glib
@@ -44,6 +49,7 @@ namespace Glib
VALUE_SPECIALIZATION(AccentColor, accent_color)
VALUE_SPECIALIZATION(ColorScheme, color_scheme)
+ VALUE_SPECIALIZATION(ResponseAppearance, response_appearance)
#undef VALUE_SPECIALIZATION
} // namespace Glib \ No newline at end of file
diff --git a/ui/src/windows/tracker/actions.cpp b/ui/src/windows/tracker/actions.cpp
index b2f2420..3539816 100644
--- a/ui/src/windows/tracker/actions.cpp
+++ b/ui/src/windows/tracker/actions.cpp
@@ -23,6 +23,7 @@
#include <adwaitamm/alertdialog.hpp>
#include <adwaitamm/dialog.hpp>
+#include <adwaitamm/enums.hpp>
#include <adwaitamm/preferencesdialog.hpp>
#include <adwaita.h>
@@ -109,11 +110,11 @@ namespace turns::ui::windows
{
auto dialog = Adwaita::AlertDialog::create(_(lang::stop_turn_order), _(lang::question_clear_turn_order));
dialog->add_response("stop", _(lang::stop));
- dialog->set_response_appearance("stop", Adwaita::AlertDialog::ResponseAppearance::suggested);
+ dialog->set_response_appearance("stop", Adwaita::ResponseAppearance::Suggested);
dialog->add_response("clear", _(lang::stop_and_clear));
- dialog->set_response_appearance("clear", Adwaita::AlertDialog::ResponseAppearance::destructive);
+ dialog->set_response_appearance("clear", Adwaita::ResponseAppearance::Destructive);
dialog->add_response("cancel", _(lang::cancel));
- dialog->set_response_appearance("cancel", Adwaita::AlertDialog::ResponseAppearance::_default);
+ dialog->set_response_appearance("cancel", Adwaita::ResponseAppearance::Default);
dialog->set_close_response("cancel");
dialog->set_default_response("cancel");
dialog->choose(*this, nullptr, [dialog = std::move(dialog), this](auto const & result) {