#ifndef LIBADWAITAMM_PREFERENCES_ROW_HPP #define LIBADWAITAMM_PREFERENCES_ROW_HPP #include "helpers/gobj_mixin.hpp" #include "adwaitamm/helpers/properties.hpp" #include #include #include #include #include #include #include using AdwPreferencesRow = struct _AdwPreferencesRow; using AdwPreferencesRowClass = struct _AdwPreferencesRowClass; namespace Adwaita { struct PreferencesRow : Gtk::ListBoxRow, helpers::gobj_mixin { struct Class : Glib::Class { using BaseClassParent = GtkListBoxRowClass; using BaseClassType = AdwPreferencesRowClass; using BaseObjectType = AdwPreferencesRow; using CppClassParent = struct Gtk::ListBoxRow_Class; using CppObjectType = PreferencesRow; auto init() -> Glib::Class const &; auto static class_init_function(void * gclass, void * data) -> void; auto static wrap_new(GObject * object) -> Glib::ObjectBase *; }; using BaseObjectType = Class::BaseObjectType; using BaseClassType = Class::BaseClassType; using CppObjectType = Class::CppObjectType; using CppClassType = Class; using helpers::gobj_mixin::gobj; using helpers::gobj_mixin::gobj_copy; explicit PreferencesRow(); PreferencesRow(PreferencesRow const & other) = delete; PreferencesRow(PreferencesRow && other) noexcept = default; auto operator=(PreferencesRow const & other) noexcept -> PreferencesRow & = delete; auto operator=(PreferencesRow && other) noexcept -> PreferencesRow & = default; auto static get_type() -> GType; auto static get_base_type() -> GType; auto get_title(this auto && self); auto get_title_selectable(this auto && self) noexcept; auto get_use_markup(this auto && self) noexcept; auto get_use_underline(this auto && self) noexcept; auto set_title(Glib::ustring const & title) -> CppObjectType &; auto set_title_selectable(bool selectable) noexcept -> CppObjectType &; auto set_use_markup(bool use) noexcept -> CppObjectType &; auto set_use_underline(bool use) noexcept -> CppObjectType &; auto property_title(this auto && self); auto property_title_selectable(this auto && self); auto property_use_markup(this auto && self); auto property_use_underline(this auto && self); protected: explicit PreferencesRow(Glib::ConstructParams const & params); explicit PreferencesRow(BaseObjectType * gobj); }; auto PreferencesRow::get_title(this auto && self) { return self.property_title().value(); } auto PreferencesRow::get_title_selectable(this auto && self) noexcept { return self.property_title_selectable().value(); } auto PreferencesRow::get_use_markup(this auto && self) noexcept { return self.property_use_markup().value(); } auto PreferencesRow::get_use_underline(this auto && self) noexcept { return self.property_use_underline().value(); } auto PreferencesRow::property_title(this auto && self) { return helpers::make_property_proxy(self, "title"); } auto PreferencesRow::property_title_selectable(this auto && self) { return helpers::make_property_proxy(self, "title-selectable"); } auto PreferencesRow::property_use_markup(this auto && self) { return helpers::make_property_proxy(self, "use-markup"); } auto PreferencesRow::property_use_underline(this auto && self) { return helpers::make_property_proxy(self, "use-underline"); } } // namespace Adwaita namespace Glib { auto wrap(AdwPreferencesRow * object, bool copy = false) -> Adwaita::PreferencesRow *; } // namespace Glib #endif