1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
|
/**
* @author Felix Morgner (felix.morgner@gmail.com)
* @copyright Copyright (c) 2025
* SPDX-License-Identifier: LGPL-2.1-or-later
*/
#ifndef LIBADWAITAMM_ABOUT_DIALOG_HPP
#define LIBADWAITAMM_ABOUT_DIALOG_HPP
#include "adwaitamm/dialog.hpp"
#include "adwaitamm/helpers/gobj_mixin.hpp"
#include <glibmm/object.h>
#include <glibmm/propertyproxy.h>
#include <glibmm/refptr.h>
#include <glibmm/signalproxy.h>
#include <glibmm/ustring.h>
#include <gtkmm/aboutdialog.h>
#include <glib-object.h>
#include <string>
#include <vector>
#define _ADWAITA_INSIDE
#include <adw-about-dialog.h>
#undef _ADWAITA_INSIDE
namespace Adwaita
{
enum struct ResponseAppearance;
struct AboutDialog final : Dialog,
helpers::gobj_mixin<AboutDialog, AdwAboutDialog>
{
using BaseObjectType = AdwAboutDialog;
using BaseClassType = AdwAboutDialogClass;
using CppObjectType = AboutDialog;
using CppClassType = struct AboutDialog_Class;
using helpers::gobj_mixin<CppObjectType, BaseObjectType>::gobj;
using helpers::gobj_mixin<CppObjectType, BaseObjectType>::gobj_copy;
#pragma mark - Special Member Functions
AboutDialog();
AboutDialog(std::string resource_path, std::string release_notes_version);
AboutDialog(AboutDialog const & other) = delete;
AboutDialog(AboutDialog && other) noexcept = default;
auto operator=(AboutDialog const & other) noexcept -> AboutDialog & = delete;
auto operator=(AboutDialog && other) noexcept -> AboutDialog & = default;
#pragma mark - GObject Support
auto static get_type() -> GType;
auto static get_base_type() -> GType;
#pragma mark - Functions
auto add_acknowledgement_section(Glib::ustring const & name, std::vector<Glib::ustring> const & people) -> void;
auto add_credit_section(Glib::ustring const & name, std::vector<Glib::ustring> const & people) -> void;
auto
add_legal_section(Glib::ustring const & title, Glib::ustring const & copyright, Gtk::License license_type, Glib::ustring const & license)
-> void;
auto add_link(Glib::ustring const & title, Glib::ustring const & url) -> void;
auto add_other_app(Glib::ustring const & id, Glib::ustring const & name, Glib::ustring const & summary) -> void;
#pragma mark - Getters
[[nodiscard]] auto get_application_icon() const -> Glib::ustring;
[[nodiscard]] auto get_application_name() const -> Glib::ustring;
[[nodiscard]] auto get_artists() const -> std::vector<Glib::ustring>;
[[nodiscard]] auto get_comments() const -> Glib::ustring;
[[nodiscard]] auto get_copyright() const -> Glib::ustring;
[[nodiscard]] auto get_debug_info() const -> Glib::ustring;
[[nodiscard]] auto get_debug_info_filename() const -> Glib::ustring;
[[nodiscard]] auto get_designers() const -> std::vector<Glib::ustring>;
[[nodiscard]] auto get_developer_name() const -> Glib::ustring;
[[nodiscard]] auto get_developers() const -> std::vector<Glib::ustring>;
[[nodiscard]] auto get_documenters() const -> std::vector<Glib::ustring>;
[[nodiscard]] auto get_issue_url() const -> Glib::ustring;
[[nodiscard]] auto get_license() const -> Glib::ustring;
[[nodiscard]] auto get_license_type() const -> Gtk::License;
[[nodiscard]] auto get_release_notes() const -> Glib::ustring;
[[nodiscard]] auto get_release_notes_version() const -> Glib::ustring;
[[nodiscard]] auto get_support_url() const -> Glib::ustring;
[[nodiscard]] auto get_translator_credits() const -> Glib::ustring;
[[nodiscard]] auto get_version() const -> Glib::ustring;
[[nodiscard]] auto get_website() const -> Glib::ustring;
#pragma mark - Setters
auto set_application_icon(Glib::ustring const & value) -> void;
auto set_application_name(Glib::ustring const & value) -> void;
auto set_artists(std::vector<Glib::ustring> const & value) -> void;
auto set_comments(Glib::ustring const & value) -> void;
auto set_copyright(Glib::ustring const & value) -> void;
auto set_debug_info(Glib::ustring const & value) -> void;
auto set_debug_info_filename(Glib::ustring const & value) -> void;
auto set_designers(std::vector<Glib::ustring> const & value) -> void;
auto set_developer_name(Glib::ustring const & value) -> void;
auto set_developers(std::vector<Glib::ustring> const & value) -> void;
auto set_documenters(std::vector<Glib::ustring> const & value) -> void;
auto set_issue_url(Glib::ustring const & value) -> void;
auto set_license(Glib::ustring const & value) -> void;
auto set_license_type(Gtk::License const & value) -> void;
auto set_release_notes(Glib::ustring const & value) -> void;
auto set_release_notes_version(Glib::ustring const & value) -> void;
auto set_support_url(Glib::ustring const & value) -> void;
auto set_translator_credits(Glib::ustring const & value) -> void;
auto set_version(Glib::ustring const & value) -> void;
auto set_website(Glib::ustring const & value) -> void;
#pragma mark - Properties
auto property_application_icon() -> Glib::PropertyProxy<Glib::ustring>;
auto property_application_icon() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_application_name() -> Glib::PropertyProxy<Glib::ustring>;
auto property_application_name() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_artists() -> Glib::PropertyProxy<std::vector<Glib::ustring>>;
auto property_artists() const -> Glib::PropertyProxy_ReadOnly<std::vector<Glib::ustring>>;
auto property_comments() -> Glib::PropertyProxy<Glib::ustring>;
auto property_comments() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_copyright() -> Glib::PropertyProxy<Glib::ustring>;
auto property_copyright() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_debug_info() -> Glib::PropertyProxy<Glib::ustring>;
auto property_debug_info() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_debug_info_filename() -> Glib::PropertyProxy<Glib::ustring>;
auto property_debug_info_filename() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_designers() -> Glib::PropertyProxy<std::vector<Glib::ustring>>;
auto property_designers() const -> Glib::PropertyProxy_ReadOnly<std::vector<Glib::ustring>>;
auto property_developer_name() -> Glib::PropertyProxy<Glib::ustring>;
auto property_developer_name() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_developers() -> Glib::PropertyProxy<std::vector<Glib::ustring>>;
auto property_developers() const -> Glib::PropertyProxy_ReadOnly<std::vector<Glib::ustring>>;
auto property_documenters() -> Glib::PropertyProxy<std::vector<Glib::ustring>>;
auto property_documenters() const -> Glib::PropertyProxy_ReadOnly<std::vector<Glib::ustring>>;
auto property_issue_url() -> Glib::PropertyProxy<Glib::ustring>;
auto property_issue_url() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_license_type() -> Glib::PropertyProxy<Gtk::License>;
auto property_license_type() const -> Glib::PropertyProxy_ReadOnly<Gtk::License>;
auto property_license() -> Glib::PropertyProxy<Glib::ustring>;
auto property_license() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_release_notes() -> Glib::PropertyProxy<Glib::ustring>;
auto property_release_notes() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>;
auto property_release_notes_version() -> Glib::PropertyProxy<
|