--- a/libpurple/meson.build Sun Mar 05 02:16:11 2023 -0600
+++ b/libpurple/meson.build Sun Mar 05 02:26:17 2023 -0600
@@ -86,6 +86,7 @@
'purplesqlitehistoryadapter.c',
@@ -193,6 +194,7 @@
'purplesqlitehistoryadapter.h',
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/purplerequestpage.c Sun Mar 05 02:26:17 2023 -0600
@@ -0,0 +1,334 @@
+ * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * 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 2 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, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA +#include <glib/gi18n-lib.h> +#include "purplerequestpage.h" +#include "purpleprivate.h" +struct _PurpleRequestFields + GList *required_fields; + GList *validated_fields; +purple_request_fields_new(void) + PurpleRequestFields *fields; + fields = g_new0(PurpleRequestFields, 1); + fields->fields = g_hash_table_new_full(g_str_hash, g_str_equal, +purple_request_fields_destroy(PurpleRequestFields *fields) + g_return_if_fail(fields != NULL); + g_list_free_full(fields->groups, + (GDestroyNotify)purple_request_field_group_destroy); + g_list_free(fields->required_fields); + g_list_free(fields->validated_fields); + g_hash_table_destroy(fields->fields); +_purple_request_field_list_set_field_required(PurpleRequestFields *fields, + PurpleRequestField *field, + g_return_if_fail(fields != NULL); + fields->required_fields = g_list_append(fields->required_fields, field); + fields->required_fields = g_list_remove(fields->required_fields, field); +_purple_request_field_list_set_field_validator(PurpleRequestFields *fields, + PurpleRequestField *field, + g_return_if_fail(fields != NULL); + fields->validated_fields = g_list_remove(fields->validated_fields, field); + fields->validated_fields = g_list_append(fields->validated_fields, +_purple_request_field_list_add_field(PurpleRequestFields *fields, + PurpleRequestField *field) + g_return_if_fail(fields != NULL); + g_hash_table_insert(fields->fields, + g_strdup(purple_request_field_get_id(field)), field); + if(purple_request_field_is_required(field)) { + fields->required_fields = g_list_append(fields->required_fields, + if(purple_request_field_is_validatable(field)) { + fields->validated_fields = g_list_append(fields->validated_fields, +purple_request_fields_add_group(PurpleRequestFields *fields, + PurpleRequestFieldGroup *group) + PurpleRequestField *field; + g_return_if_fail(fields != NULL); + g_return_if_fail(group != NULL); + fields->groups = g_list_append(fields->groups, group); + _purple_request_field_group_set_field_list(group, fields); + for (l = purple_request_field_group_get_fields(group); + g_hash_table_insert(fields->fields, + g_strdup(purple_request_field_get_id(field)), field); + if (purple_request_field_is_required(field)) { + fields->required_fields = + g_list_append(fields->required_fields, field); + if (purple_request_field_is_validatable(field)) { + fields->validated_fields = + g_list_append(fields->validated_fields, field); +purple_request_fields_get_groups(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, NULL); +purple_request_fields_exists(const PurpleRequestFields *fields, const char *id) + g_return_val_if_fail(fields != NULL, FALSE); + g_return_val_if_fail(id != NULL, FALSE); + return (g_hash_table_lookup(fields->fields, id) != NULL); +purple_request_fields_get_required(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, NULL); + return fields->required_fields; +purple_request_fields_get_validatable(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, NULL); + return fields->validated_fields; +purple_request_fields_is_field_required(const PurpleRequestFields *fields, + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, FALSE); + g_return_val_if_fail(id != NULL, FALSE); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_is_required(field); +purple_request_fields_all_required_filled(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, FALSE); + for (l = fields->required_fields; l != NULL; l = l->next) + PurpleRequestField *field = (PurpleRequestField *)l->data; + if (!purple_request_field_is_filled(field)) +purple_request_fields_all_valid(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, FALSE); + for (l = fields->validated_fields; l != NULL; l = l->next) + PurpleRequestField *field = (PurpleRequestField *)l->data; + if (!purple_request_field_is_valid(field, NULL)) +purple_request_fields_get_field(const PurpleRequestFields *fields, const char *id) + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, NULL); + g_return_val_if_fail(id != NULL, NULL); + field = g_hash_table_lookup(fields->fields, id); + g_return_val_if_fail(field != NULL, NULL); +purple_request_fields_get_string(const PurpleRequestFields *fields, const char *id) + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, NULL); + g_return_val_if_fail(id != NULL, NULL); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_string_get_value(field); +purple_request_fields_get_integer(const PurpleRequestFields *fields, + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, 0); + g_return_val_if_fail(id != NULL, 0); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_int_get_value(field); +purple_request_fields_get_bool(const PurpleRequestFields *fields, const char *id) + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, FALSE); + g_return_val_if_fail(id != NULL, FALSE); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_bool_get_value(field); +purple_request_fields_get_choice(const PurpleRequestFields *fields, + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, NULL); + g_return_val_if_fail(id != NULL, NULL); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_choice_get_value(field); +purple_request_fields_get_account(const PurpleRequestFields *fields, + PurpleRequestField *field; + g_return_val_if_fail(fields != NULL, NULL); + g_return_val_if_fail(id != NULL, NULL); + if ((field = purple_request_fields_get_field(fields, id)) == NULL) + return purple_request_field_account_get_value(field); +gpointer purple_request_fields_get_ui_data(const PurpleRequestFields *fields) + g_return_val_if_fail(fields != NULL, NULL); + return fields->ui_data; +void purple_request_fields_set_ui_data(PurpleRequestFields *fields, gpointer ui_data) + g_return_if_fail(fields != NULL); + fields->ui_data = ui_data; --- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/purplerequestpage.h Sun Mar 05 02:26:17 2023 -0600
@@ -0,0 +1,248 @@
+ * Purple - Internet Messaging Library + * Copyright (C) Pidgin Developers <devel@pidgin.im> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * 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 2 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 <https://www.gnu.org/licenses/>. +#if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION) +# error "only <purple.h> may be included directly" +#ifndef PURPLE_REQUEST_PAGE_H +#define PURPLE_REQUEST_PAGE_H +#include <glib-object.h> + * Multiple fields request data. +typedef struct _PurpleRequestFields PurpleRequestFields; +#include "purplerequestgroup.h" +#include "purplerequestfield.h" + * purple_request_fields_new: + * Creates a list of fields to pass to purple_request_fields(). + * Returns: (transfer full): A PurpleRequestFields structure. +PurpleRequestFields *purple_request_fields_new(void); + * purple_request_fields_destroy: + * @fields: The list of fields to destroy. + * Destroys a list of fields. +void purple_request_fields_destroy(PurpleRequestFields *fields); + * purple_request_fields_add_group: + * @fields: The fields list. + * @group: The group to add. + * Adds a group of fields to the list. +void purple_request_fields_add_group(PurpleRequestFields *fields, + PurpleRequestFieldGroup *group); + * purple_request_fields_get_groups: + * @fields: The fields list. + * Returns a list of all groups in a field list. + * Returns: (element-type PurpleRequestFieldGroup) (transfer none): A list of groups. +GList *purple_request_fields_get_groups(const PurpleRequestFields *fields); + * purple_request_fields_exists: + * @fields: The fields list. + * @id: The ID of the field. + * Returns whether or not the field with the specified ID exists. + * Returns: TRUE if the field exists, or FALSE. +gboolean purple_request_fields_exists(const PurpleRequestFields *fields, + * purple_request_fields_get_required: + * @fields: The fields list. + * Returns a list of all required fields. + * Returns: (element-type PurpleRequestField) (transfer none): The list of required fields. +const GList *purple_request_fields_get_required( + const PurpleRequestFields *fields); + * purple_request_fields_get_validatable: + * @fields: The fields list. + * Returns a list of all validated fields. + * Returns: (element-type PurpleRequestField) (transfer none): The list of validated fields. +const GList *purple_request_fields_get_validatable( + const PurpleRequestFields *fields); + * purple_request_fields_is_field_required: + * @fields: The fields list. + * Returns whether or not a field with the specified ID is required. + * Returns: TRUE if the specified field is required, or FALSE. +gboolean purple_request_fields_is_field_required(const PurpleRequestFields *fields, + * purple_request_fields_all_required_filled: + * @fields: The fields list. + * Returns whether or not all required fields have values. + * Returns: TRUE if all required fields have values, or FALSE. +gboolean purple_request_fields_all_required_filled( + const PurpleRequestFields *fields); + * purple_request_fields_all_valid: + * @fields: The fields list. + * Returns whether or not all fields are valid. + * Returns: TRUE if all fields are valid, or FALSE. +gboolean purple_request_fields_all_valid(const PurpleRequestFields *fields); + * purple_request_fields_get_field: + * @fields: The fields list. + * @id: The ID of the field. + * Return the field with the specified ID. + * Returns: (transfer none): The field, if found. +PurpleRequestField *purple_request_fields_get_field( + const PurpleRequestFields *fields, const char *id); + * purple_request_fields_get_string: + * @fields: The fields list. + * @id: The ID of the field. + * Returns the string value of a field with the specified ID. + * Returns: The string value, if found, or %NULL otherwise. +const char *purple_request_fields_get_string(const PurpleRequestFields *fields, + * purple_request_fields_get_integer: + * @fields: The fields list. + * @id: The ID of the field. + * Returns the integer value of a field with the specified ID. + * Returns: The integer value, if found, or 0 otherwise. +int purple_request_fields_get_integer(const PurpleRequestFields *fields, + * purple_request_fields_get_bool: + * @fields: The fields list. + * @id: The ID of the field. + * Returns the boolean value of a field with the specified ID. + * Returns: The boolean value, if found, or %FALSE otherwise. +gboolean purple_request_fields_get_bool(const PurpleRequestFields *fields, + * purple_request_fields_get_choice: + * @fields: The fields list. + * @id: The ID of the field. + * Returns the choice index of a field with the specified ID. + * Returns: The choice value, if found, or NULL otherwise. +purple_request_fields_get_choice(const PurpleRequestFields *fields, + * purple_request_fields_get_account: + * @fields: The fields list. + * @id: The ID of the field. + * Returns the account of a field with the specified ID. + * Returns: (transfer none): The account value, if found, or %NULL otherwise. +PurpleAccount *purple_request_fields_get_account(const PurpleRequestFields *fields, + * purple_request_fields_get_ui_data: + * @fields: The fields list. + * Returns the UI data associated with this object. + * Returns: The UI data associated with this object. This is a + * convenience field provided to the UIs--it is not + * used by the libpurple core. +gpointer purple_request_fields_get_ui_data(const PurpleRequestFields *fields); + * purple_request_fields_set_ui_data: + * @fields: The fields list. + * @ui_data: A pointer to associate with this object. + * Set the UI data associated with this object. +void purple_request_fields_set_ui_data(PurpleRequestFields *fields, gpointer ui_data); +#endif /* PURPLE_REQUEST_PAGE_H */ --- a/libpurple/request.c Sun Mar 05 02:16:11 2023 -0600
+++ b/libpurple/request.c Sun Mar 05 02:26:17 2023 -0600
@@ -46,19 +46,6 @@
-struct _PurpleRequestFields
- GList *required_fields;
- GList *validated_fields;
struct _PurpleRequestCommonParameters {
PurpleConversation *conv;
@@ -359,301 +346,6 @@
-purple_request_fields_new(void)
- PurpleRequestFields *fields;
- fields = g_new0(PurpleRequestFields, 1);
- fields->fields = g_hash_table_new_full(g_str_hash, g_str_equal,
-purple_request_fields_destroy(PurpleRequestFields *fields)
- g_return_if_fail(fields != NULL);
- g_list_free_full(fields->groups,
- (GDestroyNotify)purple_request_field_group_destroy);
- g_list_free(fields->required_fields);
- g_list_free(fields->validated_fields);
- g_hash_table_destroy(fields->fields);
-_purple_request_field_list_set_field_required(PurpleRequestFields *fields,
- PurpleRequestField *field,
- g_return_if_fail(fields != NULL);
- fields->required_fields = g_list_append(fields->required_fields, field);
- fields->required_fields = g_list_remove(fields->required_fields, field);
-_purple_request_field_list_set_field_validator(PurpleRequestFields *fields,
- PurpleRequestField *field,
- g_return_if_fail(fields != NULL);
- fields->validated_fields = g_list_remove(fields->validated_fields, field);
- fields->validated_fields = g_list_append(fields->validated_fields,
-_purple_request_field_list_add_field(PurpleRequestFields *fields,
- PurpleRequestField *field)
- g_return_if_fail(fields != NULL);
- g_hash_table_insert(fields->fields,
- g_strdup(purple_request_field_get_id(field)), field);
- if(purple_request_field_is_required(field)) {
- fields->required_fields = g_list_append(fields->required_fields,
- if(purple_request_field_is_validatable(field)) {
- fields->validated_fields = g_list_append(fields->validated_fields,
-purple_request_fields_add_group(PurpleRequestFields *fields,
- PurpleRequestFieldGroup *group)
- PurpleRequestField *field;
- g_return_if_fail(fields != NULL);
- g_return_if_fail(group != NULL);
- fields->groups = g_list_append(fields->groups, group);
- _purple_request_field_group_set_field_list(group, fields);
- for (l = purple_request_field_group_get_fields(group);
- g_hash_table_insert(fields->fields,
- g_strdup(purple_request_field_get_id(field)), field);
- if (purple_request_field_is_required(field)) {
- fields->required_fields =
- g_list_append(fields->required_fields, field);
- if (purple_request_field_is_validatable(field)) {
- fields->validated_fields =
- g_list_append(fields->validated_fields, field);
-purple_request_fields_get_groups(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, NULL);
-purple_request_fields_exists(const PurpleRequestFields *fields, const char *id)
- g_return_val_if_fail(fields != NULL, FALSE);
- g_return_val_if_fail(id != NULL, FALSE);
- return (g_hash_table_lookup(fields->fields, id) != NULL);
-purple_request_fields_get_required(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, NULL);
- return fields->required_fields;
-purple_request_fields_get_validatable(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, NULL);
- return fields->validated_fields;
-purple_request_fields_is_field_required(const PurpleRequestFields *fields,
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, FALSE);
- g_return_val_if_fail(id != NULL, FALSE);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_is_required(field);
-purple_request_fields_all_required_filled(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, FALSE);
- for (l = fields->required_fields; l != NULL; l = l->next)
- PurpleRequestField *field = (PurpleRequestField *)l->data;
- if (!purple_request_field_is_filled(field))
-purple_request_fields_all_valid(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, FALSE);
- for (l = fields->validated_fields; l != NULL; l = l->next)
- PurpleRequestField *field = (PurpleRequestField *)l->data;
- if (!purple_request_field_is_valid(field, NULL))
-purple_request_fields_get_field(const PurpleRequestFields *fields, const char *id)
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, NULL);
- g_return_val_if_fail(id != NULL, NULL);
- field = g_hash_table_lookup(fields->fields, id);
- g_return_val_if_fail(field != NULL, NULL);
-purple_request_fields_get_string(const PurpleRequestFields *fields, const char *id)
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, NULL);
- g_return_val_if_fail(id != NULL, NULL);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_string_get_value(field);
-purple_request_fields_get_integer(const PurpleRequestFields *fields,
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, 0);
- g_return_val_if_fail(id != NULL, 0);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_int_get_value(field);
-purple_request_fields_get_bool(const PurpleRequestFields *fields, const char *id)
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, FALSE);
- g_return_val_if_fail(id != NULL, FALSE);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_bool_get_value(field);
-purple_request_fields_get_choice(const PurpleRequestFields *fields,
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, NULL);
- g_return_val_if_fail(id != NULL, NULL);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_choice_get_value(field);
-purple_request_fields_get_account(const PurpleRequestFields *fields,
- PurpleRequestField *field;
- g_return_val_if_fail(fields != NULL, NULL);
- g_return_val_if_fail(id != NULL, NULL);
- if ((field = purple_request_fields_get_field(fields, id)) == NULL)
- return purple_request_field_account_get_value(field);
-gpointer purple_request_fields_get_ui_data(const PurpleRequestFields *fields)
- g_return_val_if_fail(fields != NULL, NULL);
- return fields->ui_data;
-void purple_request_fields_set_ui_data(PurpleRequestFields *fields, gpointer ui_data)
- g_return_if_fail(fields != NULL);
- fields->ui_data = ui_data;
@@ -933,7 +625,10 @@
- for (itg = fields->groups; itg != NULL; itg = g_list_next(itg)) {
+ for (itg = purple_request_fields_get_groups(fields); + itg = g_list_next(itg)) PurpleRequestFieldGroup *group = itg->data;
--- a/libpurple/request.h Sun Mar 05 02:16:11 2023 -0600
+++ b/libpurple/request.h Sun Mar 05 02:26:17 2023 -0600
@@ -35,13 +35,6 @@
#define PURPLE_TYPE_REQUEST_UI_OPS (purple_request_ui_ops_get_type())
- * Multiple fields request data.
-typedef struct _PurpleRequestFields PurpleRequestFields;
* PurpleRequestCommonParameters:
* Common parameters for UI operations.
@@ -52,6 +45,7 @@
#include "purpleconversation.h"
+#include "purplerequestpage.h" #include "purplerequestgroup.h"
#include "purplerequestfield.h"
#include "request-datasheet.h"
@@ -508,208 +502,6 @@
purple_request_cpar_get_parent_from(PurpleRequestCommonParameters *cpar);
/**************************************************************************/
-/**************************************************************************/
- * purple_request_fields_new:
- * Creates a list of fields to pass to purple_request_fields().
- * Returns: (transfer full): A PurpleRequestFields structure.
-PurpleRequestFields *purple_request_fields_new(void);
- * purple_request_fields_destroy:
- * @fields: The list of fields to destroy.
- * Destroys a list of fields.
-void purple_request_fields_destroy(PurpleRequestFields *fields);
- * purple_request_fields_add_group:
- * @fields: The fields list.
- * @group: The group to add.
- * Adds a group of fields to the list.
-void purple_request_fields_add_group(PurpleRequestFields *fields,
- PurpleRequestFieldGroup *group);
- * purple_request_fields_get_groups:
- * @fields: The fields list.
- * Returns a list of all groups in a field list.
- * Returns: (element-type PurpleRequestFieldGroup) (transfer none): A list of groups.
-GList *purple_request_fields_get_groups(const PurpleRequestFields *fields);
- * purple_request_fields_exists:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns whether or not the field with the specified ID exists.
- * Returns: TRUE if the field exists, or FALSE.
-gboolean purple_request_fields_exists(const PurpleRequestFields *fields,
- * purple_request_fields_get_required:
- * @fields: The fields list.
- * Returns a list of all required fields.
- * Returns: (element-type PurpleRequestField) (transfer none): The list of required fields.
-const GList *purple_request_fields_get_required(
- const PurpleRequestFields *fields);
- * purple_request_fields_get_validatable:
- * @fields: The fields list.
- * Returns a list of all validated fields.
- * Returns: (element-type PurpleRequestField) (transfer none): The list of validated fields.
-const GList *purple_request_fields_get_validatable(
- const PurpleRequestFields *fields);
- * purple_request_fields_is_field_required:
- * @fields: The fields list.
- * Returns whether or not a field with the specified ID is required.
- * Returns: TRUE if the specified field is required, or FALSE.
-gboolean purple_request_fields_is_field_required(const PurpleRequestFields *fields,
- * purple_request_fields_all_required_filled:
- * @fields: The fields list.
- * Returns whether or not all required fields have values.
- * Returns: TRUE if all required fields have values, or FALSE.
-gboolean purple_request_fields_all_required_filled(
- const PurpleRequestFields *fields);
- * purple_request_fields_all_valid:
- * @fields: The fields list.
- * Returns whether or not all fields are valid.
- * Returns: TRUE if all fields are valid, or FALSE.
-gboolean purple_request_fields_all_valid(const PurpleRequestFields *fields);
- * purple_request_fields_get_field:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Return the field with the specified ID.
- * Returns: (transfer none): The field, if found.
-PurpleRequestField *purple_request_fields_get_field(
- const PurpleRequestFields *fields, const char *id);
- * purple_request_fields_get_string:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns the string value of a field with the specified ID.
- * Returns: The string value, if found, or %NULL otherwise.
-const char *purple_request_fields_get_string(const PurpleRequestFields *fields,
- * purple_request_fields_get_integer:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns the integer value of a field with the specified ID.
- * Returns: The integer value, if found, or 0 otherwise.
-int purple_request_fields_get_integer(const PurpleRequestFields *fields,
- * purple_request_fields_get_bool:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns the boolean value of a field with the specified ID.
- * Returns: The boolean value, if found, or %FALSE otherwise.
-gboolean purple_request_fields_get_bool(const PurpleRequestFields *fields,
- * purple_request_fields_get_choice:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns the choice index of a field with the specified ID.
- * Returns: The choice value, if found, or NULL otherwise.
-purple_request_fields_get_choice(const PurpleRequestFields *fields,
- * purple_request_fields_get_account:
- * @fields: The fields list.
- * @id: The ID of the field.
- * Returns the account of a field with the specified ID.
- * Returns: (transfer none): The account value, if found, or %NULL otherwise.
-PurpleAccount *purple_request_fields_get_account(const PurpleRequestFields *fields,
- * purple_request_fields_get_ui_data:
- * @fields: The fields list.
- * Returns the UI data associated with this object.
- * Returns: The UI data associated with this object. This is a
- * convenience field provided to the UIs--it is not
- * used by the libpurple core.
-gpointer purple_request_fields_get_ui_data(const PurpleRequestFields *fields);
- * purple_request_fields_set_ui_data:
- * @fields: The fields list.
- * @ui_data: A pointer to associate with this object.
- * Set the UI data associated with this object.
-void purple_request_fields_set_ui_data(PurpleRequestFields *fields, gpointer ui_data);
-/**************************************************************************/
/**************************************************************************/
--- a/po/POTFILES.in Sun Mar 05 02:16:11 2023 -0600
+++ b/po/POTFILES.in Sun Mar 05 02:26:17 2023 -0600
@@ -203,6 +203,7 @@
libpurple/purpleprotocolwhiteboard.c
libpurple/purplerequestfield.c
libpurple/purplerequestgroup.c
+libpurple/purplerequestpage.c libpurple/purplesqlitehistoryadapter.c
libpurple/purplewhiteboard.c