diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:02:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:02:09 +0000 |
commit | 0f7ab3dc0ed5cfddfc3002992f0525756b6b670e (patch) | |
tree | 4f520e757f99f136e01abe1dd2e0d1fad5c3cd11 /src/terminal-settings-list.hh | |
parent | Initial commit. (diff) | |
download | gnome-terminal-0f7ab3dc0ed5cfddfc3002992f0525756b6b670e.tar.xz gnome-terminal-0f7ab3dc0ed5cfddfc3002992f0525756b6b670e.zip |
Adding upstream version 3.46.8.upstream/3.46.8upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | src/terminal-settings-list.hh | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/src/terminal-settings-list.hh b/src/terminal-settings-list.hh new file mode 100644 index 0000000..de99766 --- /dev/null +++ b/src/terminal-settings-list.hh @@ -0,0 +1,91 @@ +/* + * Copyright © 2013 Christian Persch + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef TERMINAL_SETTINGS_LIST_H +#define TERMINAL_SETTINGS_LIST_H + +#include <gio/gio.h> + +#include "terminal-enums.hh" + +G_BEGIN_DECLS + +#define TERMINAL_TYPE_SETTINGS_LIST (terminal_settings_list_get_type ()) +#define TERMINAL_SETTINGS_LIST(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), TERMINAL_TYPE_SETTINGS_LIST, TerminalSettingsList)) +#define TERMINAL_SETTINGS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TERMINAL_TYPE_SETTINGS_LIST, TerminalSettingsListClass)) +#define TERMINAL_IS_SETTINGS_LIST(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), TERMINAL_TYPE_SETTINGS_LIST)) +#define TERMINAL_IS_SETTINGS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TERMINAL_TYPE_SETTINGS_LIST)) +#define TERMINAL_SETTINGS_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TERMINAL_TYPE_SETTINGS_LIST, TerminalSettingsListClass)) + +typedef struct _TerminalSettingsList TerminalSettingsList; +typedef struct _TerminalSettingsListClass TerminalSettingsListClass; + +GType terminal_settings_list_get_type (void); + +TerminalSettingsList *terminal_settings_list_new (GSettingsBackend* backend, + GSettingsSchemaSource* schema_source, + const char *path, + const char *schema_id, + const char *child_schema_id, + TerminalSettingsListFlags flags); + +char **terminal_settings_list_dupv_children (TerminalSettingsList *list); + +GList *terminal_settings_list_ref_children (TerminalSettingsList *list); + +gboolean terminal_settings_list_has_child (TerminalSettingsList *list, + const char *uuid); + +GSettings *terminal_settings_list_ref_child (TerminalSettingsList *list, + const char *uuid); + +char *terminal_settings_list_add_child (TerminalSettingsList *list, + const char *name); + +char *terminal_settings_list_clone_child (TerminalSettingsList *list, + const char *uuid, + const char *name); + +void terminal_settings_list_remove_child (TerminalSettingsList *list, + const char *uuid); + +char *terminal_settings_list_dup_uuid_from_child (TerminalSettingsList *list, + GSettings *child); + +GSettings *terminal_settings_list_ref_default_child (TerminalSettingsList *list); + +char *terminal_settings_list_dup_default_child (TerminalSettingsList *list); + +void terminal_settings_list_set_default_child (TerminalSettingsList *list, + const char *uuid); + +typedef void (* TerminalSettingsListForeachFunc) (TerminalSettingsList *list, + const char *uuid, + GSettings *child, + gpointer user_data); + +void terminal_settings_list_foreach_child (TerminalSettingsList *list, + TerminalSettingsListForeachFunc callback, + gpointer user_data); + +guint terminal_settings_list_get_n_children (TerminalSettingsList *list); + +gboolean terminal_settings_list_valid_uuid (const char *str); + +G_END_DECLS + +#endif /* TERMINAL_SETTINGS_LIST_H */ |