/** * @author Felix Morgner (felix.morgner@gmail.com) * @copyright Copyright (c) 2025 * SPDX-License-Identifier: LGPL-2.1-or-later */ #ifndef LIBADWAITAMM_PREFERENCES_ROW_HPP #define LIBADWAITAMM_PREFERENCES_ROW_HPP #include "helpers/gobj_mixin.hpp" #include #include #include #include #include #define _ADWAITA_INSIDE #include #undef _ADWAITA_INSIDE namespace Adwaita { struct PreferencesRow : Gtk::ListBoxRow, helpers::gobj_mixin { using BaseObjectType = AdwPreferencesRow; using BaseClassType = AdwPreferencesRowClass; using CppObjectType = PreferencesRow; using CppClassType = struct PreferencesRow_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() const -> Glib::ustring; auto get_title_selectable() const noexcept -> bool; auto get_use_markup() const noexcept -> bool; auto get_use_underline() const noexcept -> bool; 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_selectable() -> Glib::PropertyProxy; auto property_title_selectable() const -> Glib::PropertyProxy_ReadOnly; auto property_title() -> Glib::PropertyProxy; auto property_title() const -> Glib::PropertyProxy_ReadOnly; auto property_use_markup() -> Glib::PropertyProxy; auto property_use_markup() const -> Glib::PropertyProxy_ReadOnly; auto property_use_underline() -> Glib::PropertyProxy; auto property_use_underline() const -> Glib::PropertyProxy_ReadOnly; protected: friend PreferencesRow_Class; explicit PreferencesRow(Glib::ConstructParams const & params); explicit PreferencesRow(BaseObjectType * gobj); }; } // namespace Adwaita namespace Glib { auto wrap(AdwPreferencesRow * object, bool copy = false) -> Adwaita::PreferencesRow *; } // namespace Glib #endif