--- a/libpurple/protocol.h Fri Oct 20 18:36:49 2017 -0500
+++ b/libpurple/protocol.h Fri Nov 03 04:29:05 2017 +0000
@@ -128,9 +128,9 @@
GObjectClass parent_class;
- void (*login)(PurpleAccount *);
+ void (*login)(PurpleAccount *account); - void (*close)(PurpleConnection *);
+ void (*close)(PurpleConnection *connection); GList *(*status_types)(PurpleAccount *account);
@@ -215,7 +215,7 @@
GTypeInterface parent_iface;
- GList *(*get_actions)(PurpleConnection *);
+ GList *(*get_actions)(PurpleConnection *connection); const char *(*list_emblem)(PurpleBuddy *buddy);
@@ -226,9 +226,9 @@
GList *(*blist_node_menu)(PurpleBlistNode *node);
- void (*buddy_free)(PurpleBuddy *);
+ void (*buddy_free)(PurpleBuddy *buddy); - void (*convo_closed)(PurpleConnection *, const char *who);
+ void (*convo_closed)(PurpleConnection *connection, const char *who); const char *(*normalize)(const PurpleAccount *account, const char *who);
@@ -323,20 +323,20 @@
GTypeInterface parent_iface;
- void (*register_user)(PurpleAccount *);
+ void (*register_user)(PurpleAccount *account); - void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb,
+ void (*unregister_user)(PurpleAccount *account, PurpleAccountUnregistrationCb cb, - void (*set_info)(PurpleConnection *, const char *info);
+ void (*set_info)(PurpleConnection *connection, const char *info); - void (*get_info)(PurpleConnection *, const char *who);
+ void (*get_info)(PurpleConnection *connection, const char *who); void (*set_status)(PurpleAccount *account, PurpleStatus *status);
- void (*set_idle)(PurpleConnection *, int idletime);
+ void (*set_idle)(PurpleConnection *connection, int idletime); - void (*change_passwd)(PurpleConnection *, const char *old_pass,
+ void (*change_passwd)(PurpleConnection *connection, const char *old_pass, void (*add_buddy)(PurpleConnection *pc, PurpleBuddy *buddy,
@@ -345,23 +345,23 @@
void (*add_buddies)(PurpleConnection *pc, GList *buddies, GList *groups,
- void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy,
+ void (*remove_buddy)(PurpleConnection *connection, PurpleBuddy *buddy, - void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *groups);
+ void (*remove_buddies)(PurpleConnection *connection, GList *buddies, GList *groups); - void (*keepalive)(PurpleConnection *);
+ void (*keepalive)(PurpleConnection *connection); - void (*alias_buddy)(PurpleConnection *, const char *who,
+ void (*alias_buddy)(PurpleConnection *connection, const char *who, - void (*group_buddy)(PurpleConnection *, const char *who,
+ void (*group_buddy)(PurpleConnection *connection, const char *who, const char *old_group, const char *new_group);
- void (*rename_group)(PurpleConnection *, const char *old_name,
+ void (*rename_group)(PurpleConnection *connection, const char *old_name, PurpleGroup *group, GList *moved_buddies);
- void (*set_buddy_icon)(PurpleConnection *, PurpleImage *img);
+ void (*set_buddy_icon)(PurpleConnection *connection, PurpleImage *img); void (*remove_group)(PurpleConnection *gc, PurpleGroup *group);
@@ -410,9 +410,9 @@
GTypeInterface parent_iface;
- int (*send)(PurpleConnection *, PurpleMessage *msg);
+ int (*send)(PurpleConnection *connection, PurpleMessage *msg); - unsigned int (*send_typing)(PurpleConnection *, const char *name,
+ unsigned int (*send_typing)(PurpleConnection *connection, const char *name, PurpleIMTypingState state);
@@ -493,22 +493,22 @@
GTypeInterface parent_iface;
- GList *(*info)(PurpleConnection *);
+ GList *(*info)(PurpleConnection *connection); - GHashTable *(*info_defaults)(PurpleConnection *, const char *chat_name);
+ GHashTable *(*info_defaults)(PurpleConnection *connection, const char *chat_name); - void (*join)(PurpleConnection *, GHashTable *components);
+ void (*join)(PurpleConnection *connection, GHashTable *components); - void (*reject)(PurpleConnection *, GHashTable *components);
+ void (*reject)(PurpleConnection *connection, GHashTable *components); char *(*get_name)(GHashTable *components);
- void (*invite)(PurpleConnection *, int id,
+ void (*invite)(PurpleConnection *connection, int id, const char *message, const char *who);
- void (*leave)(PurpleConnection *, int id);
+ void (*leave)(PurpleConnection *connection, int id); - int (*send)(PurpleConnection *, int id, PurpleMessage *msg);
+ int (*send)(PurpleConnection *connection, int id, PurpleMessage *msg); char *(*get_user_real_name)(PurpleConnection *gc, int id, const char *who);
@@ -573,12 +573,12 @@
GTypeInterface parent_iface;
- gboolean (*can_receive)(PurpleConnection *, const char *who);
+ gboolean (*can_receive)(PurpleConnection *connection, const char *who); - void (*send)(PurpleConnection *, const char *who,
+ void (*send)(PurpleConnection *connection, const char *who, - PurpleXfer *(*new_xfer)(PurpleConnection *, const char *who);
+ PurpleXfer *(*new_xfer)(PurpleConnection *connection, const char *who); #define PURPLE_PROTOCOL_HAS_XFER_IFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_PROTOCOL_XFER_IFACE))
@@ -848,14 +848,14 @@
/**************************************************************************/
-void purple_protocol_class_login(PurpleProtocol *, PurpleAccount *);
+void purple_protocol_class_login(PurpleProtocol *protocol, PurpleAccount *account); -void purple_protocol_class_close(PurpleProtocol *, PurpleConnection *);
+void purple_protocol_class_close(PurpleProtocol *protocol, PurpleConnection *connection); -GList *purple_protocol_class_status_types(PurpleProtocol *,
+GList *purple_protocol_class_status_types(PurpleProtocol *protocol, -const char *purple_protocol_class_list_icon(PurpleProtocol *,
+const char *purple_protocol_class_list_icon(PurpleProtocol *protocol, PurpleAccount *account, PurpleBuddy *buddy);
/**************************************************************************/
@@ -869,42 +869,42 @@
GType purple_protocol_client_iface_get_type(void);
-GList *purple_protocol_client_iface_get_actions(PurpleProtocol *,
+GList *purple_protocol_client_iface_get_actions(PurpleProtocol *protocol, + PurpleConnection *connection); -const char *purple_protocol_client_iface_list_emblem(PurpleProtocol *,
+const char *purple_protocol_client_iface_list_emblem(PurpleProtocol *protocol, -char *purple_protocol_client_iface_status_text(PurpleProtocol *,
+char *purple_protocol_client_iface_status_text(PurpleProtocol *protocol, -void purple_protocol_client_iface_tooltip_text(PurpleProtocol *,
+void purple_protocol_client_iface_tooltip_text(PurpleProtocol *protocol, PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full);
-GList *purple_protocol_client_iface_blist_node_menu(PurpleProtocol *,
+GList *purple_protocol_client_iface_blist_node_menu(PurpleProtocol *protocol, -void purple_protocol_client_iface_buddy_free(PurpleProtocol *, PurpleBuddy *);
+void purple_protocol_client_iface_buddy_free(PurpleProtocol *protocol, PurpleBuddy *buddy); -void purple_protocol_client_iface_convo_closed(PurpleProtocol *,
- PurpleConnection *, const char *who);
+void purple_protocol_client_iface_convo_closed(PurpleProtocol *protocol, + PurpleConnection *connection, const char *who); -const char *purple_protocol_client_iface_normalize(PurpleProtocol *,
+const char *purple_protocol_client_iface_normalize(PurpleProtocol *protocol, const PurpleAccount *account, const char *who);
-PurpleChat *purple_protocol_client_iface_find_blist_chat(PurpleProtocol *,
+PurpleChat *purple_protocol_client_iface_find_blist_chat(PurpleProtocol *protocol, PurpleAccount *account, const char *name);
-gboolean purple_protocol_client_iface_offline_message(PurpleProtocol *,
+gboolean purple_protocol_client_iface_offline_message(PurpleProtocol *protocol, const PurpleBuddy *buddy);
-GHashTable *purple_protocol_client_iface_get_account_text_table(PurpleProtocol *,
+GHashTable *purple_protocol_client_iface_get_account_text_table(PurpleProtocol *protocol, -PurpleMood *purple_protocol_client_iface_get_moods(PurpleProtocol *,
+PurpleMood *purple_protocol_client_iface_get_moods(PurpleProtocol *protocol, -gssize purple_protocol_client_iface_get_max_message_size(PurpleProtocol *,
+gssize purple_protocol_client_iface_get_max_message_size(PurpleProtocol *protocol, PurpleConversation *conv);
/**************************************************************************/
@@ -918,66 +918,66 @@
GType purple_protocol_server_iface_get_type(void);
-void purple_protocol_server_iface_register_user(PurpleProtocol *,
+void purple_protocol_server_iface_register_user(PurpleProtocol *protocol, + PurpleAccount *account); * purple_protocol_server_iface_unregister_user:
-void purple_protocol_server_iface_unregister_user(PurpleProtocol *,
- PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data);
+void purple_protocol_server_iface_unregister_user(PurpleProtocol *protocol, + PurpleAccount *account, PurpleAccountUnregistrationCb cb, void *user_data); -void purple_protocol_server_iface_set_info(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_server_iface_set_info(PurpleProtocol *protocol, PurpleConnection *connection, -void purple_protocol_server_iface_get_info(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_server_iface_get_info(PurpleProtocol *protocol, PurpleConnection *connection, -void purple_protocol_server_iface_set_status(PurpleProtocol *,
+void purple_protocol_server_iface_set_status(PurpleProtocol *protocol, PurpleAccount *account, PurpleStatus *status);
-void purple_protocol_server_iface_set_idle(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_server_iface_set_idle(PurpleProtocol *protocol, PurpleConnection *connection, -void purple_protocol_server_iface_change_passwd(PurpleProtocol *,
- PurpleConnection *, const char *old_pass, const char *new_pass);
+void purple_protocol_server_iface_change_passwd(PurpleProtocol *protocol, + PurpleConnection *connection, const char *old_pass, const char *new_pass); -void purple_protocol_server_iface_add_buddy(PurpleProtocol *,
+void purple_protocol_server_iface_add_buddy(PurpleProtocol *protocol, PurpleConnection *pc, PurpleBuddy *buddy, PurpleGroup *group,
-void purple_protocol_server_iface_add_buddies(PurpleProtocol *,
+void purple_protocol_server_iface_add_buddies(PurpleProtocol *protocol, PurpleConnection *pc, GList *buddies, GList *groups,
-void purple_protocol_server_iface_remove_buddy(PurpleProtocol *,
- PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group);
+void purple_protocol_server_iface_remove_buddy(PurpleProtocol *protocol, + PurpleConnection *connection, PurpleBuddy *buddy, PurpleGroup *group); -void purple_protocol_server_iface_remove_buddies(PurpleProtocol *,
- PurpleConnection *, GList *buddies, GList *groups);
+void purple_protocol_server_iface_remove_buddies(PurpleProtocol *protocol, + PurpleConnection *connection, GList *buddies, GList *groups); -void purple_protocol_server_iface_keepalive(PurpleProtocol *,
+void purple_protocol_server_iface_keepalive(PurpleProtocol *protocol, + PurpleConnection *connection); -void purple_protocol_server_iface_alias_buddy(PurpleProtocol *,
- PurpleConnection *, const char *who, const char *alias);
+void purple_protocol_server_iface_alias_buddy(PurpleProtocol *protocol, + PurpleConnection *connection, const char *who, const char *alias); -void purple_protocol_server_iface_group_buddy(PurpleProtocol *,
- PurpleConnection *, const char *who, const char *old_group,
+void purple_protocol_server_iface_group_buddy(PurpleProtocol *protocol, + PurpleConnection *connection, const char *who, const char *old_group, -void purple_protocol_server_iface_rename_group(PurpleProtocol *,
- PurpleConnection *, const char *old_name, PurpleGroup *group,
+void purple_protocol_server_iface_rename_group(PurpleProtocol *protocol, + PurpleConnection *connection, const char *old_name, PurpleGroup *group, -void purple_protocol_server_iface_set_buddy_icon(PurpleProtocol *,
- PurpleConnection *, PurpleImage *img);
+void purple_protocol_server_iface_set_buddy_icon(PurpleProtocol *protocol, + PurpleConnection *connection, PurpleImage *img); -void purple_protocol_server_iface_remove_group(PurpleProtocol *,
+void purple_protocol_server_iface_remove_group(PurpleProtocol *protocol, PurpleConnection *gc, PurpleGroup *group);
-int purple_protocol_server_iface_send_raw(PurpleProtocol *,
+int purple_protocol_server_iface_send_raw(PurpleProtocol *protocol, PurpleConnection *gc, const char *buf, int len);
@@ -985,7 +985,7 @@
* @success_cb: (scope call):
* @failure_cb: (scope call):
-void purple_protocol_server_iface_set_public_alias(PurpleProtocol *,
+void purple_protocol_server_iface_set_public_alias(PurpleProtocol *protocol, PurpleConnection *gc, const char *alias,
PurpleSetPublicAliasSuccessCallback success_cb,
PurpleSetPublicAliasFailureCallback failure_cb);
@@ -995,7 +995,7 @@
* @success_cb: (scope call):
* @failure_cb: (scope call):
-void purple_protocol_server_iface_get_public_alias(PurpleProtocol *,
+void purple_protocol_server_iface_get_public_alias(PurpleProtocol *protocol, PurpleConnection *gc, PurpleGetPublicAliasSuccessCallback success_cb,
PurpleGetPublicAliasFailureCallback failure_cb);
@@ -1010,11 +1010,11 @@
GType purple_protocol_im_iface_get_type(void);
-int purple_protocol_im_iface_send(PurpleProtocol *, PurpleConnection *,
+int purple_protocol_im_iface_send(PurpleProtocol *protocol, PurpleConnection *connection, -unsigned int purple_protocol_im_iface_send_typing(PurpleProtocol *,
- PurpleConnection *, const char *name, PurpleIMTypingState state);
+unsigned int purple_protocol_im_iface_send_typing(PurpleProtocol *protocol, + PurpleConnection *connection, const char *name, PurpleIMTypingState state); /**************************************************************************/
/* Protocol Chat Interface API */
@@ -1027,34 +1027,34 @@
GType purple_protocol_chat_iface_get_type(void);
-GList *purple_protocol_chat_iface_info(PurpleProtocol *,
+GList *purple_protocol_chat_iface_info(PurpleProtocol *protocol, + PurpleConnection *connection); -GHashTable *purple_protocol_chat_iface_info_defaults(PurpleProtocol *,
- PurpleConnection *, const char *chat_name);
+GHashTable *purple_protocol_chat_iface_info_defaults(PurpleProtocol *protocol, + PurpleConnection *connection, const char *chat_name); -void purple_protocol_chat_iface_join(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_chat_iface_join(PurpleProtocol *protocol, PurpleConnection *connection, -void purple_protocol_chat_iface_reject(PurpleProtocol *,
- PurpleConnection *, GHashTable *components);
+void purple_protocol_chat_iface_reject(PurpleProtocol *protocol, + PurpleConnection *connection, GHashTable *components); -char *purple_protocol_chat_iface_get_name(PurpleProtocol *,
+char *purple_protocol_chat_iface_get_name(PurpleProtocol *protocol, -void purple_protocol_chat_iface_invite(PurpleProtocol *,
- PurpleConnection *, int id, const char *message, const char *who);
+void purple_protocol_chat_iface_invite(PurpleProtocol *protocol, + PurpleConnection *connection, int id, const char *message, const char *who); -void purple_protocol_chat_iface_leave(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_chat_iface_leave(PurpleProtocol *protocol, PurpleConnection *connection, -int purple_protocol_chat_iface_send(PurpleProtocol *, PurpleConnection *,
+int purple_protocol_chat_iface_send(PurpleProtocol *protocol, PurpleConnection *connection, int id, PurpleMessage *msg);
-char *purple_protocol_chat_iface_get_user_real_name(PurpleProtocol *,
+char *purple_protocol_chat_iface_get_user_real_name(PurpleProtocol *protocol, PurpleConnection *gc, int id, const char *who);
-void purple_protocol_chat_iface_set_topic(PurpleProtocol *,
+void purple_protocol_chat_iface_set_topic(PurpleProtocol *protocol, PurpleConnection *gc, int id, const char *topic);
/**************************************************************************/
@@ -1068,20 +1068,20 @@
GType purple_protocol_privacy_iface_get_type(void);
-void purple_protocol_privacy_iface_add_permit(PurpleProtocol *,
- PurpleConnection *, const char *name);
+void purple_protocol_privacy_iface_add_permit(PurpleProtocol *protocol, + PurpleConnection *connection, const char *name); -void purple_protocol_privacy_iface_add_deny(PurpleProtocol *,
- PurpleConnection *, const char *name);
+void purple_protocol_privacy_iface_add_deny(PurpleProtocol *protocol, + PurpleConnection *connection, const char *name); -void purple_protocol_privacy_iface_rem_permit(PurpleProtocol *,
- PurpleConnection *, const char *name);
+void purple_protocol_privacy_iface_rem_permit(PurpleProtocol *protocol, + PurpleConnection *connection, const char *name); -void purple_protocol_privacy_iface_rem_deny(PurpleProtocol *,
- PurpleConnection *, const char *name);
+void purple_protocol_privacy_iface_rem_deny(PurpleProtocol *protocol, + PurpleConnection *connection, const char *name); -void purple_protocol_privacy_iface_set_permit_deny(PurpleProtocol *,
+void purple_protocol_privacy_iface_set_permit_deny(PurpleProtocol *protocol, + PurpleConnection *connection); /**************************************************************************/
/* Protocol Xfer Interface API */
@@ -1094,14 +1094,14 @@
GType purple_protocol_xfer_iface_get_type(void);
-gboolean purple_protocol_xfer_iface_can_receive(PurpleProtocol *,
- PurpleConnection *, const char *who);
+gboolean purple_protocol_xfer_iface_can_receive(PurpleProtocol *protocol, + PurpleConnection *connection, const char *who); -void purple_protocol_xfer_iface_send(PurpleProtocol *, PurpleConnection *,
+void purple_protocol_xfer_iface_send(PurpleProtocol *protocol, PurpleConnection *connection, const char *who, const char *filename);
-PurpleXfer *purple_protocol_xfer_iface_new_xfer(PurpleProtocol *,
- PurpleConnection *, const char *who);
+PurpleXfer *purple_protocol_xfer_iface_new_xfer(PurpleProtocol *protocol, + PurpleConnection *connection, const char *who); /**************************************************************************/
/* Protocol Roomlist Interface API */
@@ -1114,16 +1114,16 @@
GType purple_protocol_roomlist_iface_get_type(void);
-PurpleRoomlist *purple_protocol_roomlist_iface_get_list(PurpleProtocol *,
+PurpleRoomlist *purple_protocol_roomlist_iface_get_list(PurpleProtocol *protocol, -void purple_protocol_roomlist_iface_cancel(PurpleProtocol *,
+void purple_protocol_roomlist_iface_cancel(PurpleProtocol *protocol, -void purple_protocol_roomlist_iface_expand_category(PurpleProtocol *,
+void purple_protocol_roomlist_iface_expand_category(PurpleProtocol *protocol, PurpleRoomlist *list, PurpleRoomlistRoom *category);
-char *purple_protocol_roomlist_iface_room_serialize(PurpleProtocol *,
+char *purple_protocol_roomlist_iface_room_serialize(PurpleProtocol *protocol, PurpleRoomlistRoom *room);
/**************************************************************************/
@@ -1137,10 +1137,10 @@
GType purple_protocol_attention_iface_get_type(void);
-gboolean purple_protocol_attention_iface_send(PurpleProtocol *,
+gboolean purple_protocol_attention_iface_send(PurpleProtocol *protocol, PurpleConnection *gc, const char *username, guint type);
-GList *purple_protocol_attention_iface_get_types(PurpleProtocol *,
+GList *purple_protocol_attention_iface_get_types(PurpleProtocol *protocol, /**************************************************************************/
@@ -1154,13 +1154,13 @@
GType purple_protocol_media_iface_get_type(void);
-gboolean purple_protocol_media_iface_initiate_session(PurpleProtocol *,
+gboolean purple_protocol_media_iface_initiate_session(PurpleProtocol *protocol, PurpleAccount *account, const char *who, PurpleMediaSessionType type);
-PurpleMediaCaps purple_protocol_media_iface_get_caps(PurpleProtocol *,
+PurpleMediaCaps purple_protocol_media_iface_get_caps(PurpleProtocol *protocol, PurpleAccount *account, const char *who);
-gboolean purple_protocol_media_iface_send_dtmf(PurpleProtocol *,
+gboolean purple_protocol_media_iface_send_dtmf(PurpleProtocol *protocol, PurpleMedia *media, gchar dtmf, guint8 volume, guint8 duration);
/**************************************************************************/
@@ -1174,16 +1174,28 @@
GType purple_protocol_factory_iface_get_type(void);
-PurpleConnection *purple_protocol_factory_iface_connection_new(PurpleProtocol *,
+ * purple_protocol_factory_iface_connection_new: (skip) +PurpleConnection *purple_protocol_factory_iface_connection_new(PurpleProtocol *protocol, PurpleAccount *account, const char *password);
-PurpleRoomlist *purple_protocol_factory_iface_roomlist_new(PurpleProtocol *,
+ * purple_protocol_factory_iface_roomlist_new: (skip) +PurpleRoomlist *purple_protocol_factory_iface_roomlist_new(PurpleProtocol *protocol, -PurpleWhiteboard *purple_protocol_factory_iface_whiteboard_new(PurpleProtocol *,
+ * purple_protocol_factory_iface_whiteboard_new: (skip) +PurpleWhiteboard *purple_protocol_factory_iface_whiteboard_new(PurpleProtocol *protocol, PurpleAccount *account, const char *who, int state);
-PurpleXfer *purple_protocol_factory_iface_xfer_new(PurpleProtocol *,
+ * purple_protocol_factory_iface_xfer_new: (skip) +PurpleXfer *purple_protocol_factory_iface_xfer_new(PurpleProtocol *protocol, PurpleAccount *account, PurpleXferType type, const char *who);
--- a/pidgin/gtkprefs.h Fri Oct 20 18:36:49 2017 -0500
+++ b/pidgin/gtkprefs.h Fri Nov 03 04:29:05 2017 +0000
@@ -54,6 +54,8 @@
* @page: The page to which the new checkbox will be added
* Add a new checkbox for a boolean preference
+ * Returns: (transfer full): The new checkbox GtkWidget *pidgin_prefs_checkbox(const char *title, const char *key,
@@ -69,9 +71,9 @@
* Add a new spin button representing an int preference
- * Returns: An hbox containing both the label and the spinner. Can be
- * used to set the widgets to sensitive or insensitive based on the
+ * Returns: (transfer full): An hbox containing both the label and the spinner. Can be + * used to set the widgets to sensitive or insensitive based on the GtkWidget *pidgin_prefs_labeled_spin_button(GtkWidget *page,
const gchar *title, const char *key, int min, int max, GtkSizeGroup *sg);
@@ -85,9 +87,9 @@
* Add a new entry representing a string preference
- * Returns: An hbox containing both the label and the entry. Can be used to set
- * the widgets to sensitive or insensitive based on the value of a
+ * Returns: (transfer full) :An hbox containing both the label and the entry. Can be used to set + * the widgets to sensitive or insensitive based on the value of a GtkWidget *pidgin_prefs_labeled_entry(GtkWidget *page, const gchar *title,
const char *key, GtkSizeGroup *sg);
@@ -102,9 +104,9 @@
* Add a new entry representing a password (string) preference
* The entry will use a password-style text entry (the text is substituded)
- * Returns: An hbox containing both the label and the entry. Can be used to set
- * the widgets to sensitive or insensitive based on the value of a
+ * Returns: (transfer full): An hbox containing both the label and the entry. Can be used to set + * the widgets to sensitive or insensitive based on the value of a GtkWidget *pidgin_prefs_labeled_password(GtkWidget *page, const gchar *title,
const char *key, GtkSizeGroup *sg);
@@ -119,6 +121,8 @@
* Add a new dropdown representing a preference of the specified type
+ * Returns: (transfer full): The new dropdown. GtkWidget *pidgin_prefs_dropdown(GtkWidget *page, const gchar *title,
PurplePrefType type, const char *key, ...);
@@ -130,9 +134,11 @@
* @type: The type of preference to be stored in the dropdown
* @key: The key of the pref that will be represented by the dropdown
* @menuitems: The choices to be added to the dropdown, choices should
- * be paired as label/value
+ * be paired as label/value * Add a new dropdown representing a preference of the specified type
+ * Returns: (transfer full): The new dropdown. GtkWidget *pidgin_prefs_dropdown_from_list(GtkWidget *page,
const gchar * title, PurplePrefType type, const char *key,
--- a/pidgin/gtkutils.h Fri Oct 20 18:36:49 2017 -0500
+++ b/pidgin/gtkutils.h Fri Nov 03 04:29:05 2017 +0000
@@ -104,7 +104,7 @@
* function puts both widgets in a nice GtkFrame. They're separated by an
* attractive GtkSeparator.
- * Returns: The GtkFrame containing the toolbar and webview.
+ * Returns: (transfer full): The GtkFrame containing the toolbar and webview. GtkWidget *pidgin_create_webview(gboolean editable, GtkWidget **webview_ret, GtkWidget **sw_ret);
@@ -114,7 +114,7 @@
- * Returns: A GtkButton created from the image.
+ * Returns: (transfer full): A GtkButton created from the image. GtkWidget *pidgin_create_small_button(GtkWidget *image);
@@ -126,6 +126,8 @@
* @resizable: Whether the window should be resizable (%TRUE) or not (%FALSE)
+ * Returns: (transfer full): A new window. GtkWidget *pidgin_create_window(const char *title, guint border_width, const char *role, gboolean resizable);
@@ -137,6 +139,8 @@
* @resizable: Whether the window should be resizable (%TRUE) or not (%FALSE)
* Creates a new dialog window
+ * Returns: (transfer full): A new dialog window. GtkWidget *pidgin_create_dialog(const char *title, guint border_width, const char *role, gboolean resizable);
@@ -144,6 +148,8 @@
* pidgin_create_video_widget:
* Creates a new drawing area suitable for displaying a video
+ * Returns: (transfer full): A new drawing area for displaying video. GtkWidget *pidgin_create_video_widget(void);
@@ -154,6 +160,8 @@
* @spacing: the number of pixels to place by default between children
* Retrieves the main content box (vbox) from a pidgin dialog window
+ * Returns: (transfer none): The main vbox from @dialog. GtkWidget *pidgin_dialog_get_vbox_with_properties(GtkDialog *dialog, gboolean homogeneous, gint spacing);
@@ -162,19 +170,21 @@
* @dialog: The dialog window
* Retrieves the main content box (vbox) from a pidgin dialog window
+ * Returns: (transfer none): the main vbox from @dialog. GtkWidget *pidgin_dialog_get_vbox(GtkDialog *dialog);
* pidgin_dialog_add_button:
- * @dialog: The dialog window
- * @label: The stock-id or the label for the button
- * @callback: The callback function for the button
- * @callbackdata: The user data for the callback function
+ * @dialog: The dialog window + * @label: The stock-id or the label for the button + * @callback: (scope call): The callback function for the button + * @callbackdata: The user data for the callback function * Add a button to a dialog created by #pidgin_create_dialog.
- * Returns: The created button.
+ * Returns: (transfer full): The created button. GtkWidget *pidgin_dialog_add_button(GtkDialog *dialog, const char *label,
GCallback callback, gpointer callbackdata);
@@ -184,6 +194,8 @@
* @dialog: The dialog window
* Retrieves the action area (button box) from a pidgin dialog window
+ * Returns: (transfer none): The action area (button box) from @dialog. GtkWidget *pidgin_dialog_get_action_area(GtkDialog *dialog);
@@ -210,7 +222,7 @@
* pidgin_toggle_sensitive_array:
* @w: %NULL. Used for signal handlers.
- * @data: The array containing the widgets to toggle.
+ * @data: (element-type GtkWidget): The array containing the widgets to toggle. * Toggles the sensitivity of all widgets in a pointer array.
@@ -231,21 +243,21 @@
* Adds a separator to a menu.
- * Returns: The separator.
+ * Returns: (transfer full): The separator. GtkWidget *pidgin_separator(GtkWidget *menu);
- * @menu: The menu to which to append the check menu item.
- * @str: The title to use for the newly created menu item.
- * @cb: A function to call when the menu item is activated.
- * @data: Data to pass to the signal function.
- * @checked: The initial state of the check item
+ * @menu: The menu to which to append the check menu item. + * @str: The title to use for the newly created menu item. + * @cb: (scope call): A function to call when the menu item is activated. + * @data: Data to pass to the signal function. + * @checked: The initial state of the check item * Creates a check menu item.
- * Returns: The newly created menu item.
+ * Returns: (transfer full): The newly created menu item. GtkWidget *pidgin_new_check_item(GtkWidget *menu, const char *str,
GCallback cb, gpointer data, gboolean checked);
@@ -256,12 +268,12 @@
* @mnemonic: The title for the menu item.
* @icon: An icon to place to the left of the menu item,
- * @cb: A function to call when the menu item is activated.
+ * @cb: (scope call): A function to call when the menu item is activated. * @data: Data to pass to the signal function.
- * Returns: The newly created menu item.
+ * Returns: (transfer full): The newly created menu item. GtkWidget *pidgin_new_menu_item(GtkWidget *menu, const char *mnemonic,
const char *icon, GCallback cb, gpointer data);
@@ -274,7 +286,7 @@
* Creates a button with the specified text and stock icon.
+ * Returns: (transfer full): The button. GtkWidget *pidgin_pixbuf_button_from_stock(const char *text, const char *icon,
PidginButtonOrientation style);
@@ -285,7 +297,7 @@
* Creates a toolbar button with the stock icon.
+ * Returns: (transfer full): The button. GtkWidget *pidgin_pixbuf_toolbar_button_from_stock(const char *stock);
@@ -296,19 +308,19 @@
* Creates a HIG preferences frame.
- * Returns: The vbox to put things into.
+ * Returns: (transfer full): The vbox to put things into. GtkWidget *pidgin_make_frame(GtkWidget *parent, const char *title);
* pidgin_protocol_option_menu_new:
- * @id: The protocol to select by default.
- * @cb: The callback to call when a protocol is selected.
+ * @id: The protocol to select by default. + * @cb: (scope call): The callback to call when a protocol is selected. * @user_data: Data to pass to the callback function.
* Creates a drop-down option menu filled with protocols.
- * Returns: The drop-down option menu.
+ * Returns: (transfer full): The drop-down option menu. GtkWidget *pidgin_protocol_option_menu_new(const char *id,
@@ -328,16 +340,16 @@
* pidgin_account_option_menu_new:
* @default_account: The account to select by default.
- * @show_all: Whether or not to show all accounts, or just
- * @cb: The callback to call when an account is selected.
- * @filter_func: A function for checking if an account should
- * be shown. This can be NULL.
- * @user_data: Data to pass to the callback function.
+ * @show_all: Whether or not to show all accounts, or just + * @cb: (scope call): The callback to call when an account is selected. + * @filter_func: (scope call): A function for checking if an account should + * be shown. This can be NULL. + * @user_data: Data to pass to the callback function. * Creates a drop-down option menu filled with accounts.
- * Returns: The drop-down option menu.
+ * Returns: (transfer full): The drop-down option menu. GtkWidget *pidgin_account_option_menu_new(PurpleAccount *default_account,
gboolean show_all, GCallback cb,
@@ -350,7 +362,7 @@
* Gets the currently selected account from an account drop down box.
- * Returns: Returns the PurpleAccount that is currently selected.
+ * Returns: (transfer none): Returns the PurpleAccount that is currently selected. PurpleAccount *pidgin_account_option_menu_get_selected(GtkWidget *optmenu);
@@ -370,7 +382,7 @@
* @optmenu: A menu for accounts, returned by pidgin_account_option_menu_new().
* If @optmenu is not %NULL, it'll be updated when a username is chosen
* from the autocomplete list.
- * @filter_func: A function for checking if an autocomplete entry
+ * @filter_func: (scope call): A function for checking if an autocomplete entry * should be shown. This can be %NULL.
* @user_data: The data to be passed to the filter_func function.
@@ -525,7 +537,7 @@
* Returns the base image to represent the account, based on
* the currently selected theme.
- * Returns: A newly-created pixbuf with a reference count of 1,
+ * Returns: (transfer full): A newly-created pixbuf with a reference count of 1, * or NULL if any of several error conditions occurred:
* the file could not be opened, there was no loader
* for the file's format, there was not enough memory
@@ -542,7 +554,7 @@
* Creates a status icon for a given primitve
- * Returns: A GdkPixbuf, created from stock
+ * Returns: (transfer full): A GdkPixbuf, created from stock GdkPixbuf * pidgin_create_status_icon(PurpleStatusPrimitive primitive, GtkWidget *w, const char *size);
@@ -574,7 +586,7 @@
* Append a PurpleMenuAction to a menu.
- * Returns: The menuitem added.
+ * Returns: (transfer full): The menuitem added. GtkWidget *pidgin_append_menu_action(GtkWidget *menu, PurpleMenuAction *act,
@@ -614,7 +626,7 @@
* Creates a File Selection widget for choosing a buddy icon
- * Returns: The file dialog
+ * Returns: (transfer full): The file dialog GtkWidget *pidgin_buddy_icon_chooser_new(GtkWindow *parent, void(*callback)(const char*,gpointer), gpointer data);
@@ -646,7 +658,7 @@
* The type of callbacks passed to pidgin_make_mini_dialog().
-typedef void (*PidginUtilMiniDialogCallback)(gpointer user_data, GtkButton *);
+typedef void (*PidginUtilMiniDialogCallback)(gpointer user_data, GtkButton *button); * pidgin_make_mini_dialog:
@@ -673,7 +685,7 @@
* See <link linkend="pidgin-pidginstock">Stock Resources</link>.
- * Returns: A #PidginMiniDialog, suitable for passing to
+ * Returns: (transfer full): A #PidginMiniDialog, suitable for passing to * pidgin_blist_add_alert().
GtkWidget *pidgin_make_mini_dialog(PurpleConnection *handle,
@@ -682,9 +694,24 @@
* pidgin_make_mini_dialog_with_custom_icon:
+ * @custom_icon: A custom GdkPixbuf to use. + * @primary: The primary text + * @secondary: The secondary text, or %NULL for no description. + * @user_data: Data to pass to the callbacks + * @...: a %NULL-terminated list of button labels + * (<type>char *</type>) and callbacks + * (#PidginUtilMiniDialogCallback). @user_data will be + * passed as the first argument. (Callbacks may lack a + * second argument, or be %NULL to take no action when + * the corresponding button is pressed.) When a button is + * pressed, the callback (if any) will be called; when + * the callback returns the dialog will be destroyed. * Does exactly what pidgin_make_mini_dialog() does, except you can specify
* a custom icon for the dialog.
+ * Returns: (transfer full): A #PidginMiniDialog, suitable for passing to + * pidgin_blist_add_alert(). GtkWidget *pidgin_make_mini_dialog_with_custom_icon(PurpleConnection *gc,
@@ -748,13 +775,13 @@
* pidgin_text_combo_box_entry_new:
- * @default_item: Initial contents of GtkEntry
- * @items: GList containing strings to add to GtkComboBox
+ * @default_item: Initial contents of GtkEntry + * @items: (element-type utf8): GList containing strings to add to GtkComboBox * Create a simple text GtkComboBoxEntry equivalent
- * Returns: A newly created text GtkComboBox containing a GtkEntry
+ * Returns: (transfer full): A newly created text GtkComboBox containing a GtkEntry GtkWidget *pidgin_text_combo_box_entry_new(const char *default_item, GList *items);
@@ -798,7 +825,7 @@
* Add a labelled widget to a GtkBox
- * Returns: A GtkBox already added to the GtkBox containing the GtkLabel and the GtkWidget.
+ * Returns: (transfer full): A GtkBox already added to the GtkBox containing the GtkLabel and the GtkWidget. GtkWidget *pidgin_add_widget_to_vbox(GtkBox *vbox, const char *widget_label, GtkSizeGroup *sg, GtkWidget *widget, gboolean expand, GtkWidget **p_label);
@@ -809,7 +836,7 @@
* Create a GdkPixbuf from a chunk of image data.
- * Returns: A GdkPixbuf created from the image data, or NULL if
+ * Returns: (transfer full): A GdkPixbuf created from the image data, or NULL if * there was an error parsing the data.
GdkPixbuf *pidgin_pixbuf_from_data(const guchar *buf, gsize count);
@@ -821,7 +848,7 @@
* Create a GdkPixbufAnimation from a chunk of image data.
- * Returns: A GdkPixbufAnimation created from the image data, or NULL if
+ * Returns: (transfer full): A GdkPixbufAnimation created from the image data, or NULL if * there was an error parsing the data.
GdkPixbufAnimation *pidgin_pixbuf_anim_from_data(const guchar *buf, gsize count);
@@ -832,7 +859,7 @@
* Create a GdkPixbuf from a PurpleImage.
- * Returns: a GdkPixbuf created from the @image.
+ * Returns: (transfer full): a GdkPixbuf created from the @image. pidgin_pixbuf_from_image(PurpleImage *image);
@@ -856,7 +883,7 @@
* gdk-pixbuf where the aforementioned bug is fixed. However, it might be
* nice to keep this function around for the debug message that it logs.
- * Returns: The GdkPixbuf if successful. Otherwise NULL is returned and
+ * Returns: (transfer full): The GdkPixbuf if successful. Otherwise NULL is returned and GdkPixbuf *pidgin_pixbuf_new_from_file(const char *filename);
@@ -882,7 +909,7 @@
* gdk-pixbuf where the aforementioned bug is fixed. However, it might be
* nice to keep this function around for the debug message that it logs.
- * Returns: The GdkPixbuf if successful. Otherwise NULL is returned and
+ * Returns: (transfer full): The GdkPixbuf if successful. Otherwise NULL is returned and GdkPixbuf *pidgin_pixbuf_new_from_file_at_size(const char *filename, int width, int height);
@@ -909,7 +936,7 @@
* gdk-pixbuf where the aforementioned bug is fixed. However, it might be
* nice to keep this function around for the debug message that it logs.
- * Returns: The GdkPixbuf if successful. Otherwise NULL is returned and
+ * Returns: (transfer full): The GdkPixbuf if successful. Otherwise NULL is returned and GdkPixbuf *pidgin_pixbuf_new_from_file_at_scale(const char *filename, int width, int height, gboolean preserve_aspect_ratio);
@@ -928,7 +955,7 @@
* If new image is created, @src reference cound will be decreased and new image
* with a ref count of 1 will be returned.
- * Returns: The image with proper sizing. %NULL in case of error.
+ * Returns: (transfer full): The image with proper sizing. %NULL in case of error. pidgin_pixbuf_scale_down(GdkPixbuf *src, guint max_width, guint max_height,
@@ -944,6 +971,8 @@
* @height: Desired widget height, or -1 for default
* Add scrollbars to a widget
+ * Returns: (transfer full): A scrolled window with @child packed inside of it. GtkWidget *pidgin_make_scrollable(GtkWidget *child, GtkPolicyType hscrollbar_policy, GtkPolicyType vscrollbar_policy, GtkShadowType shadow_type, int width, int height);