diff options
| -rw-r--r-- | adw/include/turns/adw/actionrow.hpp | 2 | ||||
| -rw-r--r-- | adw/include/turns/adw/preferencesdialog.hpp | 7 | ||||
| -rw-r--r-- | adw/include/turns/adw/preferencespage.hpp | 6 | ||||
| -rw-r--r-- | adw/include/turns/adw/preferencesrow.hpp | 6 | ||||
| -rw-r--r-- | adw/include/turns/adw/switchrow.hpp | 6 | ||||
| -rw-r--r-- | adw/include/turns/adw/toast.hpp | 6 | ||||
| -rw-r--r-- | adw/include/turns/adw/toastoverlay.hpp | 9 | ||||
| -rw-r--r-- | adw/src/actionrow.cpp | 4 | ||||
| -rw-r--r-- | adw/src/breakpoint.cpp | 4 | ||||
| -rw-r--r-- | adw/src/preferencesdialog.cpp | 7 | ||||
| -rw-r--r-- | adw/src/preferencespage.cpp | 4 | ||||
| -rw-r--r-- | adw/src/preferencesrow.cpp | 4 | ||||
| -rw-r--r-- | adw/src/switchrow.cpp | 8 | ||||
| -rw-r--r-- | adw/src/toast.cpp | 27 | ||||
| -rw-r--r-- | adw/src/toastoverlay.cpp | 14 | ||||
| -rw-r--r-- | ui/src/windows/tracker.cpp | 2 |
16 files changed, 74 insertions, 42 deletions
diff --git a/adw/include/turns/adw/actionrow.hpp b/adw/include/turns/adw/actionrow.hpp index d098d65..5005f66 100644 --- a/adw/include/turns/adw/actionrow.hpp +++ b/adw/include/turns/adw/actionrow.hpp @@ -89,7 +89,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwActionRow * object, bool copy = false) -> Glib::RefPtr<turns::adw::ActionRow>; + auto wrap(AdwActionRow * object, bool copy = false) -> turns::adw::ActionRow *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/include/turns/adw/preferencesdialog.hpp b/adw/include/turns/adw/preferencesdialog.hpp index 85735ef..324ab1d 100644 --- a/adw/include/turns/adw/preferencesdialog.hpp +++ b/adw/include/turns/adw/preferencesdialog.hpp @@ -5,11 +5,16 @@ #include "helpers/gobj_mixin.hpp" #include "turns/adw/preferencespage.hpp" +#include <glibmm/class.h> +#include <glibmm/object.h> +#include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <glibmm/ustring.h> #include <gtkmm/widget.h> +#include <glib-object.h> + using AdwPreferencesDialog = struct _AdwPreferencesDialog; using AdwPreferencesDialogClass = struct _AdwPreferencesDialogClass; @@ -61,7 +66,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesDialog * object, bool copy = false) -> Glib::RefPtr<turns::adw::PreferencesDialog>; + auto wrap(AdwPreferencesDialog * object, bool copy = false) -> turns::adw::PreferencesDialog *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/include/turns/adw/preferencespage.hpp b/adw/include/turns/adw/preferencespage.hpp index b8b4051..dceabf8 100644 --- a/adw/include/turns/adw/preferencespage.hpp +++ b/adw/include/turns/adw/preferencespage.hpp @@ -4,11 +4,15 @@ #include "helpers/gobj_mixin.hpp" #include <glibmm/class.h> +#include <glibmm/object.h> +#include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <glibmm/ustring.h> #include <gtkmm/widget.h> +#include <glib-object.h> + using AdwPreferencesPage = struct _AdwPreferencesPage; using AdwPreferencesPageClass = struct _AdwPreferencesPageClass; @@ -56,7 +60,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesPage * object, bool copy = false) -> Glib::RefPtr<turns::adw::PreferencesPage>; + auto wrap(AdwPreferencesPage * object, bool copy = false) -> turns::adw::PreferencesPage *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/include/turns/adw/preferencesrow.hpp b/adw/include/turns/adw/preferencesrow.hpp index a0f22ed..7490d05 100644 --- a/adw/include/turns/adw/preferencesrow.hpp +++ b/adw/include/turns/adw/preferencesrow.hpp @@ -5,11 +5,15 @@ #include "turns/adw/helpers/properties.hpp" #include <glibmm/class.h> +#include <glibmm/object.h> +#include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <glibmm/ustring.h> #include <gtkmm/listboxrow.h> +#include <glib-object.h> + using AdwPreferencesRow = struct _AdwPreferencesRow; using AdwPreferencesRowClass = struct _AdwPreferencesRowClass; @@ -113,7 +117,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesRow * object, bool copy = false) -> Glib::RefPtr<turns::adw::PreferencesRow>; + auto wrap(AdwPreferencesRow * object, bool copy = false) -> turns::adw::PreferencesRow *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/include/turns/adw/switchrow.hpp b/adw/include/turns/adw/switchrow.hpp index e7e0131..39c21da 100644 --- a/adw/include/turns/adw/switchrow.hpp +++ b/adw/include/turns/adw/switchrow.hpp @@ -13,6 +13,8 @@ #include <gtkmm/widget.h> +#include <glib-object.h> + #define _ADWAITA_INSIDE #include <adw-switch-row.h> #undef _ADWAITA_INSIDE @@ -22,7 +24,7 @@ using AdwSwitchRow = struct _AdwSwitchRow; namespace turns::adw { struct SwitchRow final : adw::ActionRow, - helpers::gobj_mixin<SwitchRow, AdwSwitchRow> + helpers::gobj_mixin<SwitchRow, AdwSwitchRow> { struct Class : Glib::Class { @@ -80,7 +82,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwSwitchRow * object, bool copy = false) -> Glib::RefPtr<turns::adw::SwitchRow>; + auto wrap(AdwSwitchRow * object, bool copy = false) -> turns::adw::SwitchRow *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/include/turns/adw/toast.hpp b/adw/include/turns/adw/toast.hpp index 83242c7..80d9b8b 100644 --- a/adw/include/turns/adw/toast.hpp +++ b/adw/include/turns/adw/toast.hpp @@ -5,12 +5,15 @@ #include "turns/adw/helpers/properties.hpp" #include <glibmm/object.h> +#include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <glibmm/ustring.h> #include <glibmm/variant.h> #include <gtkmm/widget.h> +#include <glib-object.h> + #define _ADWAITA_INSIDE #include <adw-toast.h> #undef _ADWAITA_INSIDE @@ -49,13 +52,13 @@ namespace turns::adw using helpers::gobj_mixin<CppObjectType, BaseObjectType>::gobj; using helpers::gobj_mixin<CppObjectType, BaseObjectType>::gobj_copy; - explicit Toast(Glib::ustring const & title); Toast(Toast const & other) = delete; Toast(Toast && other) noexcept = default; auto operator=(Toast const & other) noexcept -> Toast & = delete; auto operator=(Toast && other) noexcept -> Toast & = default; + auto static create(Glib::ustring const & title) -> Glib::RefPtr<Toast>; auto static get_type() -> GType; auto static get_base_type() -> GType; @@ -71,6 +74,7 @@ namespace turns::adw auto property_use_markup(this auto && self); protected: + explicit Toast(Glib::ustring const & title); explicit Toast(Glib::ConstructParams const & params); explicit Toast(BaseObjectType * gobj); }; diff --git a/adw/include/turns/adw/toastoverlay.hpp b/adw/include/turns/adw/toastoverlay.hpp index 49f6a59..7560c0d 100644 --- a/adw/include/turns/adw/toastoverlay.hpp +++ b/adw/include/turns/adw/toastoverlay.hpp @@ -4,10 +4,15 @@ #include "turns/adw/helpers/gobj_mixin.hpp" #include "turns/adw/helpers/properties.hpp" +#include <glibmm/class.h> +#include <glibmm/object.h> +#include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <gtkmm/widget.h> +#include <glib-object.h> + #define _ADWAITA_INSIDE #include <adw-toast-overlay.h> #undef _ADWAITA_INSIDE @@ -48,7 +53,7 @@ namespace turns::adw auto static get_type() -> GType; auto static get_base_type() -> GType; - auto add(struct Toast && toast) -> void; + auto add(Glib::RefPtr<struct Toast> const & toast) -> void; auto property_child(this auto && self); @@ -66,7 +71,7 @@ namespace turns::adw namespace Glib { - auto wrap(AdwToastOverlay * object, bool copy = false) -> Glib::RefPtr<turns::adw::ToastOverlay>; + auto wrap(AdwToastOverlay * object, bool copy = false) -> turns::adw::ToastOverlay *; } // namespace Glib #endif
\ No newline at end of file diff --git a/adw/src/actionrow.cpp b/adw/src/actionrow.cpp index e8cfc7d..9f79cee 100644 --- a/adw/src/actionrow.cpp +++ b/adw/src/actionrow.cpp @@ -201,8 +201,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwActionRow * object, bool copy) -> Glib::RefPtr<turns::adw::ActionRow> + auto wrap(AdwActionRow * object, bool copy) -> turns::adw::ActionRow * { - return Glib::make_refptr_for_instance(dynamic_cast<turns::adw::ActionRow *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::ActionRow *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/adw/src/breakpoint.cpp b/adw/src/breakpoint.cpp index dd930a3..ed1c7f0 100644 --- a/adw/src/breakpoint.cpp +++ b/adw/src/breakpoint.cpp @@ -10,6 +10,7 @@ #include <glibmm/refptr.h> #include <glibmm/ustring.h> #include <glibmm/wrap.h> +#include <gtkmm/buildable.h> #include <glib-object.h> @@ -102,7 +103,8 @@ namespace turns::adw if (!gtype_) { class_init_func_ = &class_init_function; - gtype_ = adw_breakpoint_get_type(); + register_derived_type(adw_breakpoint_get_type()); + Gtk::Buildable::add_interface(get_type()); } return *this; } diff --git a/adw/src/preferencesdialog.cpp b/adw/src/preferencesdialog.cpp index 10419fe..b949003 100644 --- a/adw/src/preferencesdialog.cpp +++ b/adw/src/preferencesdialog.cpp @@ -25,7 +25,7 @@ namespace turns::adw namespace { auto constinit _class = PreferencesDialog::Class{}; - } + } // namespace auto PreferencesDialog::Class::init() -> Glib::Class const & { @@ -83,9 +83,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesDialog * object, bool copy) -> Glib::RefPtr<turns::adw::PreferencesDialog> + auto wrap(AdwPreferencesDialog * object, bool copy) -> turns::adw::PreferencesDialog * { - return Glib::make_refptr_for_instance<turns::adw::PreferencesDialog>( - dynamic_cast<turns::adw::PreferencesDialog *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::PreferencesDialog *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/adw/src/preferencespage.cpp b/adw/src/preferencespage.cpp index 8467e29..64ae62c 100644 --- a/adw/src/preferencespage.cpp +++ b/adw/src/preferencespage.cpp @@ -75,8 +75,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesPage * object, bool copy) -> Glib::RefPtr<turns::adw::PreferencesPage> + auto wrap(AdwPreferencesPage * object, bool copy) -> turns::adw::PreferencesPage * { - return Glib::make_refptr_for_instance(dynamic_cast<turns::adw::PreferencesPage *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::PreferencesPage *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/adw/src/preferencesrow.cpp b/adw/src/preferencesrow.cpp index 039da96..a6f5368 100644 --- a/adw/src/preferencesrow.cpp +++ b/adw/src/preferencesrow.cpp @@ -99,8 +99,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwPreferencesRow * object, bool copy) -> Glib::RefPtr<turns::adw::PreferencesRow> + auto wrap(AdwPreferencesRow * object, bool copy) -> turns::adw::PreferencesRow * { - return Glib::make_refptr_for_instance(dynamic_cast<turns::adw::PreferencesRow *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::PreferencesRow *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/adw/src/switchrow.cpp b/adw/src/switchrow.cpp index 3bd4a89..d7dd9dd 100644 --- a/adw/src/switchrow.cpp +++ b/adw/src/switchrow.cpp @@ -7,6 +7,7 @@ #include <glibmm/objectbase.h> #include <glibmm/refptr.h> #include <glibmm/wrap.h> + #include <gtkmm/object.h> #include <adwaita.h> @@ -25,7 +26,7 @@ namespace turns::adw if (!gtype_) { class_init_func_ = &class_init_function; - gtype_ = adw_switch_row_get_type(); + register_derived_type(adw_switch_row_get_type()); } return *this; } @@ -71,9 +72,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwSwitchRow * object, bool copy) -> Glib::RefPtr<turns::adw::SwitchRow> + auto wrap(AdwSwitchRow * object, bool copy) -> turns::adw::SwitchRow * { - return Glib::make_refptr_for_instance<turns::adw::SwitchRow>( - dynamic_cast<turns::adw::SwitchRow *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::SwitchRow *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/adw/src/toast.cpp b/adw/src/toast.cpp index c830496..1267221 100644 --- a/adw/src/toast.cpp +++ b/adw/src/toast.cpp @@ -31,7 +31,7 @@ namespace turns::adw if (!gtype_) { class_init_func_ = &class_init_function; - gtype_ = adw_toast_get_type(); + register_derived_type(adw_toast_get_type()); } return *this; } @@ -53,29 +53,34 @@ namespace turns::adw { } - auto Toast::get_type() -> GType + Toast::Toast(Glib::ConstructParams const & params) + : Glib::Object{params} { - return _class.init().get_type(); } - auto Toast::get_base_type() -> GType + Toast::Toast(BaseObjectType * gobj) + : Glib::Object((GObject *)gobj) { - return adw_toast_get_type(); } - auto Toast::dismiss() -> void + auto Toast::create(Glib::ustring const & title) -> Glib::RefPtr<Toast> { - return adw_toast_dismiss(gobj()); + return Glib::make_refptr_for_instance(new Toast{title}); } - Toast::Toast(Glib::ConstructParams const & params) - : Glib::Object{params} + auto Toast::get_type() -> GType { + return _class.init().get_type(); } - Toast::Toast(BaseObjectType * gobj) - : Glib::Object((GObject *)gobj) + auto Toast::get_base_type() -> GType { + return adw_toast_get_type(); + } + + auto Toast::dismiss() -> void + { + return adw_toast_dismiss(gobj()); } } // namespace turns::adw diff --git a/adw/src/toastoverlay.cpp b/adw/src/toastoverlay.cpp index d785e60..c50c62d 100644 --- a/adw/src/toastoverlay.cpp +++ b/adw/src/toastoverlay.cpp @@ -10,7 +10,9 @@ #include <glibmm/ustring.h> #include <glibmm/utility.h> #include <glibmm/variant.h> +#include <glibmm/wrap.h> +#include <gtkmm/object.h> #include <gtkmm/private/widget_p.h> #include <gtkmm/widget.h> @@ -30,7 +32,7 @@ namespace turns::adw if (!gtype_) { class_init_func_ = &class_init_function; - gtype_ = adw_toast_overlay_get_type(); + register_derived_type(adw_toast_overlay_get_type()); } return *this; } @@ -56,9 +58,10 @@ namespace turns::adw return adw_toast_overlay_get_type(); } - auto ToastOverlay::add(Toast && toast) -> void + auto ToastOverlay::add(Glib::RefPtr<struct Toast> const & toast) -> void { - adw_toast_overlay_add_toast(gobj(), toast.gobj_copy()); + // Take a copy since the overlay will take ownership of the toast. + adw_toast_overlay_add_toast(Glib::unwrap(this), Glib::unwrap_copy(toast)); } ToastOverlay::ToastOverlay(Glib::ConstructParams const & params) @@ -81,9 +84,8 @@ namespace turns::adw namespace Glib { - auto wrap(AdwToastOverlay * object, bool copy) -> Glib::RefPtr<turns::adw::ToastOverlay> + auto wrap(AdwToastOverlay * object, bool copy) -> turns::adw::ToastOverlay * { - return Glib::make_refptr_for_instance<turns::adw::ToastOverlay>( - dynamic_cast<turns::adw::ToastOverlay *>(Glib::wrap_auto(G_OBJECT(object), copy))); + return dynamic_cast<turns::adw::ToastOverlay *>(Glib::wrap_auto(G_OBJECT(object), copy)); } } // namespace Glib
\ No newline at end of file diff --git a/ui/src/windows/tracker.cpp b/ui/src/windows/tracker.cpp index 760833b..9adbb07 100644 --- a/ui/src/windows/tracker.cpp +++ b/ui/src/windows/tracker.cpp @@ -196,7 +196,7 @@ namespace turns::ui::windows auto tracker::show_toast(std::string const & message) -> void { - m_overlay->add(adw::Toast{message}); + m_overlay->add(adw::Toast::create(message)); } auto tracker::update_colors() -> void |
