account.h   account.h 
skipping to change at line 62 skipping to change at line 62
#include "status.h" #include "status.h"
/** /**
* Account request types. * Account request types.
*/ */
typedef enum typedef enum
{ {
PURPLE_ACCOUNT_REQUEST_AUTHORIZATION = 0 /* Account authorization re quest */ PURPLE_ACCOUNT_REQUEST_AUTHORIZATION = 0 /* Account authorization re quest */
} PurpleAccountRequestType; } PurpleAccountRequestType;
/**
* Account request response types
*/
typedef enum
{
PURPLE_ACCOUNT_RESPONSE_IGNORE = -2,
PURPLE_ACCOUNT_RESPONSE_DENY = -1,
PURPLE_ACCOUNT_RESPONSE_PASS = 0,
PURPLE_ACCOUNT_RESPONSE_ACCEPT = 1
} PurpleAccountRequestResponse;
/** Account UI operations, used to notify the user of status changes and w hen /** Account UI operations, used to notify the user of status changes and w hen
* buddies add this account to their buddy lists. * buddies add this account to their buddy lists.
*/ */
struct _PurpleAccountUiOps struct _PurpleAccountUiOps
{ {
/** A buddy who is already on this account's buddy list added this a ccount /** A buddy who is already on this account's buddy list added this a ccount
* to their buddy list. * to their buddy list.
*/ */
void (*notify_added)(PurpleAccount *account, void (*notify_added)(PurpleAccount *account,
const char *remote_user, const char *remote_user,
skipping to change at line 504 skipping to change at line 515
* @param success_cb A callback which will be called with the alias * @param success_cb A callback which will be called with the alias
* @param failure_cb A callback which will be called if the prpl is * @param failure_cb A callback which will be called if the prpl is
* unable to retrieve the server-side alias. * unable to retrieve the server-side alias.
* @since 2.7.0 * @since 2.7.0
*/ */
void purple_account_get_public_alias(PurpleAccount *account, void purple_account_get_public_alias(PurpleAccount *account,
PurpleGetPublicAliasSuccessCallback success_cb, PurpleGetPublicAliasSuccessCallback success_cb,
PurpleGetPublicAliasFailureCallback failure_cb); PurpleGetPublicAliasFailureCallback failure_cb);
/** /**
* Return whether silence suppression is used during voice call.
*
* @param account The account.
*
* @return @c TRUE if suppression is used, or @c FALSE if not.
*/
gboolean purple_account_get_silence_suppression(const PurpleAccount *accoun
t);
/**
* Sets whether silence suppression is used during voice call.
*
* @param account The account.
* @param value @c TRUE if suppression should be used.
*/
void purple_account_set_silence_suppression(PurpleAccount *account,
gboolean value);
/**
* Clears all protocol-specific settings on an account. * Clears all protocol-specific settings on an account.
* *
* @param account The account. * @param account The account.
*/ */
void purple_account_clear_settings(PurpleAccount *account); void purple_account_clear_settings(PurpleAccount *account);
/** /**
* Removes an account-specific setting by name. * Removes an account-specific setting by name.
* *
* @param account The account. * @param account The account.
skipping to change at line 930 skipping to change at line 959
* *
* @param account The account. * @param account The account.
*/ */
void purple_account_destroy_log(PurpleAccount *account); void purple_account_destroy_log(PurpleAccount *account);
/** /**
* Adds a buddy to the server-side buddy list for the specified account. * Adds a buddy to the server-side buddy list for the specified account.
* *
* @param account The account. * @param account The account.
* @param buddy The buddy to add. * @param buddy The buddy to add.
*
* @deprecated Use purple_account_add_buddy_with_invite and \c NULL message
.
*/ */
void purple_account_add_buddy(PurpleAccount *account, PurpleBuddy *buddy); void purple_account_add_buddy(PurpleAccount *account, PurpleBuddy *buddy);
/** /**
* Adds a buddy to the server-side buddy list for the specified account.
*
* @param account The account.
* @param buddy The buddy to add.
* @param message The invite message. This may be ignored by a prpl.
*
* @since 2.8.0
*/
void purple_account_add_buddy_with_invite(PurpleAccount *account, PurpleBud
dy *buddy, const char *message);
/**
* Adds a list of buddies to the server-side buddy list. * Adds a list of buddies to the server-side buddy list.
* *
* @param account The account. * @param account The account.
* @param buddies The list of PurpleBlistNodes representing the buddies to add. * @param buddies The list of PurpleBlistNodes representing the buddies to add.
*
* @deprecated Use purple_account_add_buddies_with_invite and \c NULL messa
ge.
*/ */
void purple_account_add_buddies(PurpleAccount *account, GList *buddies); void purple_account_add_buddies(PurpleAccount *account, GList *buddies);
/**
* Adds a list of buddies to the server-side buddy list.
*
* @param account The account.
* @param buddies The list of PurpleBlistNodes representing the buddies to
add.
* @param message The invite message. This may be ignored by a prpl.
*
* @since 2.8.0
*/
void purple_account_add_buddies_with_invite(PurpleAccount *account, GList *
buddies, const char *message);
/** /**
* Removes a buddy from the server-side buddy list. * Removes a buddy from the server-side buddy list.
* *
* @param account The account. * @param account The account.
* @param buddy The buddy to remove. * @param buddy The buddy to remove.
* @param group The group to remove the buddy from. * @param group The group to remove the buddy from.
*/ */
void purple_account_remove_buddy(PurpleAccount *account, PurpleBuddy *buddy , void purple_account_remove_buddy(PurpleAccount *account, PurpleBuddy *buddy ,
PurpleGroup *group); PurpleGroup *group);
 End of changes. 6 change blocks. 
0 lines changed or deleted 61 lines changed or added


 backend-iface.h   backend-iface.h 
skipping to change at line 71 skipping to change at line 71
const gchar *sess_id); const gchar *sess_id);
GList *(*get_codecs) (PurpleMediaBackend *self, GList *(*get_codecs) (PurpleMediaBackend *self,
const gchar *sess_id); const gchar *sess_id);
GList *(*get_local_candidates) (PurpleMediaBackend *self, GList *(*get_local_candidates) (PurpleMediaBackend *self,
const gchar *sess_id, const gchar *participant); const gchar *sess_id, const gchar *participant);
gboolean (*set_remote_codecs) (PurpleMediaBackend *self, gboolean (*set_remote_codecs) (PurpleMediaBackend *self,
const gchar *sess_id, const gchar *participant, const gchar *sess_id, const gchar *participant,
GList *codecs); GList *codecs);
gboolean (*set_send_codec) (PurpleMediaBackend *self, gboolean (*set_send_codec) (PurpleMediaBackend *self,
const gchar *sess_id, PurpleMediaCodec *codec); const gchar *sess_id, PurpleMediaCodec *codec);
void (*set_params) (PurpleMediaBackend *self,
guint num_params, GParameter *params);
const gchar **(*get_available_params) (void);
}; };
/** /**
* Gets the media backend's GType. * Gets the media backend's GType.
* *
* @return The media backend's GType. * @return The media backend's GType.
* *
* @since 2.7.0 * @since 2.7.0
*/ */
GType purple_media_backend_get_type(void); GType purple_media_backend_get_type(void);
skipping to change at line 194 skipping to change at line 197
* @param sess_id The session id of the session to set the codec for. * @param sess_id The session id of the session to set the codec for.
* @param codec The codec to set. * @param codec The codec to set.
* *
* @return True if set successfully, otherwise False. * @return True if set successfully, otherwise False.
* *
* @since 2.7.0 * @since 2.7.0
*/ */
gboolean purple_media_backend_set_send_codec(PurpleMediaBackend *self, gboolean purple_media_backend_set_send_codec(PurpleMediaBackend *self,
const gchar *sess_id, PurpleMediaCodec *codec); const gchar *sess_id, PurpleMediaCodec *codec);
/**
* Sets various optional parameters of the media backend.
*
* @param self The media backend to set the parameters on.
* @param num_params The number of parameters to pass to backend
* @param params Array of @c GParameter to pass to backend
*
* @since 2.8.0
*/
void purple_media_backend_set_params(PurpleMediaBackend *self,
guint num_params, GParameter *params);
/**
* Gets the list of optional parameters supported by the media backend.
*
* The list should NOT be freed.
*
* @param self The media backend
*
* @return NULL-terminated array of names of supported parameters.
*
* @since 2.8.0
*/
const gchar **purple_media_backend_get_available_params(PurpleMediaBackend
*self);
G_END_DECLS G_END_DECLS
#endif /* _MEDIA_BACKEND_IFACE_H_ */ #endif /* _MEDIA_BACKEND_IFACE_H_ */
 End of changes. 2 change blocks. 
0 lines changed or deleted 29 lines changed or added


 conversation.h   conversation.h 
skipping to change at line 141 skipping to change at line 141
/** /**
* Flags applicable to users in Chats. * Flags applicable to users in Chats.
*/ */
typedef enum typedef enum
{ {
PURPLE_CBFLAGS_NONE = 0x0000, /**< No flags */ PURPLE_CBFLAGS_NONE = 0x0000, /**< No flags */
PURPLE_CBFLAGS_VOICE = 0x0001, /**< Voiced user or "Particip ant" */ PURPLE_CBFLAGS_VOICE = 0x0001, /**< Voiced user or "Particip ant" */
PURPLE_CBFLAGS_HALFOP = 0x0002, /**< Half-op */ PURPLE_CBFLAGS_HALFOP = 0x0002, /**< Half-op */
PURPLE_CBFLAGS_OP = 0x0004, /**< Channel Op or Moderator */ PURPLE_CBFLAGS_OP = 0x0004, /**< Channel Op or Moderator */
PURPLE_CBFLAGS_FOUNDER = 0x0008, /**< Channel Founder */ PURPLE_CBFLAGS_FOUNDER = 0x0008, /**< Channel Founder */
PURPLE_CBFLAGS_TYPING = 0x0010 /**< Currently typing PURPLE_CBFLAGS_TYPING = 0x0010, /**< Currently typing
*/ */
PURPLE_CBFLAGS_AWAY = 0x0020 /**< Currently away. @since 2
.8.0 */
} PurpleConvChatBuddyFlags; } PurpleConvChatBuddyFlags;
#include "account.h" #include "account.h"
#include "buddyicon.h" #include "buddyicon.h"
#include "log.h" #include "log.h"
#include "server.h" #include "server.h"
/** /**
* Conversation operations and events. * Conversation operations and events.
skipping to change at line 302 skipping to change at line 303
* or @c NULL if the buddy should be sorted by * or @c NULL if the buddy should be sorted by
* its @c name. (This is current ly always @c * its @c name. (This is current ly always @c
* NULL.) * NULL.)
*/ */
gboolean buddy; /**< @a TRUE if this chat participa nt is on the gboolean buddy; /**< @a TRUE if this chat participa nt is on the
* buddy list; @a FALSE otherwise . * buddy list; @a FALSE otherwise .
*/ */
PurpleConvChatBuddyFlags flags; /**< A bitwise OR of flags for this participant, PurpleConvChatBuddyFlags flags; /**< A bitwise OR of flags for this participant,
* such as whether they are a cha nnel operator. * such as whether they are a cha nnel operator.
*/ */
GHashTable *attributes; /**< A hash table of attributes abo
ut the user, such as
* real name, user@host, etc.
*/
}; };
/** /**
* Description of a conversation message * Description of a conversation message
* *
* @since 2.2.0 * @since 2.2.0
*/ */
struct _PurpleConvMessage struct _PurpleConvMessage
{ {
char *who; char *who;
skipping to change at line 512 skipping to change at line 516
* Returns the specified conversation's name. * Returns the specified conversation's name.
* *
* @param conv The conversation. * @param conv The conversation.
* *
* @return The conversation's name. If the conversation is an IM with a Pur pleBuddy, * @return The conversation's name. If the conversation is an IM with a Pur pleBuddy,
* then it's the name of the PurpleBuddy. * then it's the name of the PurpleBuddy.
*/ */
const char *purple_conversation_get_name(const PurpleConversation *conv); const char *purple_conversation_get_name(const PurpleConversation *conv);
/** /**
* Get an attribute of a chat buddy
*
* @param cb The chat buddy.
* @param key The key of the attribute.
*
* @return The value of the attribute key.
*/
const char *purple_conv_chat_cb_get_attribute(PurpleConvChatBuddy *cb, cons
t char *key);
/**
* Get the keys of all atributes of a chat buddy
*
* @param cb The chat buddy.
*
* @return A list of the attributes of a chat buddy.
*/
GList *purple_conv_chat_cb_get_attribute_keys(PurpleConvChatBuddy *cb);
/**
* Set an attribute of a chat buddy
*
* @param chat The chat.
* @param cb The chat buddy.
* @param key The key of the attribute.
* @param value The value of the attribute.
*/
void purple_conv_chat_cb_set_attribute(PurpleConvChat *chat, PurpleConvChat
Buddy *cb, const char *key, const char *value);
/**
* Set attributes of a chat buddy
*
* @param chat The chat.
* @param cb The chat buddy.
* @param keys A GList of the keys.
* @param values A GList of the values.
*/
void
purple_conv_chat_cb_set_attributes(PurpleConvChat *chat, PurpleConvChatBudd
y *cb, GList *keys, GList *values);
/**
* Enables or disables logging for this conversation. * Enables or disables logging for this conversation.
* *
* @param conv The conversation. * @param conv The conversation.
* @param log @c TRUE if logging should be enabled, or @c FALSE otherwise. * @param log @c TRUE if logging should be enabled, or @c FALSE otherwise.
*/ */
void purple_conversation_set_logging(PurpleConversation *conv, gboolean log ); void purple_conversation_set_logging(PurpleConversation *conv, gboolean log );
/** /**
* Returns whether or not logging is enabled for this conversation. * Returns whether or not logging is enabled for this conversation.
* *
 End of changes. 3 change blocks. 
2 lines changed or deleted 51 lines changed or added


 dbus-types.h   dbus-types.h 
skipping to change at line 88 skipping to change at line 88
PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlist) PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlist)
PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistRoom) PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistRoom)
PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistField) PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistField)
PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistUiOps) PURPLE_DBUS_DECLARE_TYPE(PurpleRoomlistUiOps)
PURPLE_DBUS_DECLARE_TYPE(PurpleSavedStatus) PURPLE_DBUS_DECLARE_TYPE(PurpleSavedStatus)
PURPLE_DBUS_DECLARE_TYPE(PurpleSavedStatusSub) PURPLE_DBUS_DECLARE_TYPE(PurpleSavedStatusSub)
PURPLE_DBUS_DECLARE_TYPE(PurpleSmiley) PURPLE_DBUS_DECLARE_TYPE(PurpleSmiley)
PURPLE_DBUS_DECLARE_TYPE(PurpleSmileyClass) PURPLE_DBUS_DECLARE_TYPE(PurpleSmileyClass)
PURPLE_DBUS_DECLARE_TYPE(PurpleDnsQueryData) PURPLE_DBUS_DECLARE_TYPE(PurpleDnsQueryData)
PURPLE_DBUS_DECLARE_TYPE(PurpleDnsQueryUiOps) PURPLE_DBUS_DECLARE_TYPE(PurpleDnsQueryUiOps)
PURPLE_DBUS_DECLARE_TYPE(PurpleSrvQueryData) PURPLE_DBUS_DECLARE_TYPE(PurpleSrvTxtQueryData)
PURPLE_DBUS_DECLARE_TYPE(PurpleSrvResponse) PURPLE_DBUS_DECLARE_TYPE(PurpleSrvResponse)
PURPLE_DBUS_DECLARE_TYPE(PurpleTxtResponse) PURPLE_DBUS_DECLARE_TYPE(PurpleTxtResponse)
PURPLE_DBUS_DECLARE_TYPE(PurpleSrvQueryData)
PURPLE_DBUS_DECLARE_TYPE(PurpleSrvTxtQueryUiOps)
PURPLE_DBUS_DECLARE_TYPE(PurpleStatusType) PURPLE_DBUS_DECLARE_TYPE(PurpleStatusType)
PURPLE_DBUS_DECLARE_TYPE(PurpleStatusAttr) PURPLE_DBUS_DECLARE_TYPE(PurpleStatusAttr)
PURPLE_DBUS_DECLARE_TYPE(PurplePresence) PURPLE_DBUS_DECLARE_TYPE(PurplePresence)
PURPLE_DBUS_DECLARE_TYPE(PurpleStatus) PURPLE_DBUS_DECLARE_TYPE(PurpleStatus)
PURPLE_DBUS_DECLARE_TYPE(PurpleMood) PURPLE_DBUS_DECLARE_TYPE(PurpleMood)
PURPLE_DBUS_DECLARE_TYPE(PurpleStringref) PURPLE_DBUS_DECLARE_TYPE(PurpleStringref)
PURPLE_DBUS_DECLARE_TYPE(PurpleStunNatDiscovery) PURPLE_DBUS_DECLARE_TYPE(PurpleStunNatDiscovery)
PURPLE_DBUS_DECLARE_TYPE(PurpleSoundUiOps) PURPLE_DBUS_DECLARE_TYPE(PurpleSoundUiOps)
PURPLE_DBUS_DECLARE_TYPE(PurpleSoundTheme) PURPLE_DBUS_DECLARE_TYPE(PurpleSoundTheme)
PURPLE_DBUS_DECLARE_TYPE(PurpleSoundThemeClass) PURPLE_DBUS_DECLARE_TYPE(PurpleSoundThemeClass)
 End of changes. 2 change blocks. 
1 lines changed or deleted 3 lines changed or added


 dnsquery.h   dnsquery.h 
skipping to change at line 61 skipping to change at line 61
typedef void (*PurpleDnsQueryFailedCallback) (PurpleDnsQueryData *query_da ta, const gchar *error_message); typedef void (*PurpleDnsQueryFailedCallback) (PurpleDnsQueryData *query_da ta, const gchar *error_message);
/** /**
* DNS Request UI operations; UIs should implement this if they want to do DNS * DNS Request UI operations; UIs should implement this if they want to do DNS
* lookups themselves, rather than relying on the core. * lookups themselves, rather than relying on the core.
* *
* @see @ref ui-ops * @see @ref ui-ops
*/ */
typedef struct typedef struct
{ {
/** If implemented, the UI is responsible for DNS queries */ /** If implemented, return TRUE if the UI takes responsibility for D
NS
* queries. When returning FALSE, the standard implementation is us
ed. */
gboolean (*resolve_host)(PurpleDnsQueryData *query_data, gboolean (*resolve_host)(PurpleDnsQueryData *query_data,
PurpleDnsQueryResolvedCallback resolved_cb, PurpleDnsQueryResolvedCallback resolved_cb,
PurpleDnsQueryFailedCallback failed_cb); PurpleDnsQueryFailedCallback failed_cb);
/** Called just before @a query_data is freed; this should cancel an y /** Called just before @a query_data is freed; this should cancel an y
* further use of @a query_data the UI would make. Unneeded if * further use of @a query_data the UI would make. Unneeded if
* #resolve_host is not implemented. * #resolve_host is not implemented.
*/ */
void (*destroy)(PurpleDnsQueryData *query_data); void (*destroy)(PurpleDnsQueryData *query_data);
skipping to change at line 90 skipping to change at line 91
#endif #endif
/************************************************************************** / /************************************************************************** /
/** @name DNS query API * / /** @name DNS query API * /
/************************************************************************** / /************************************************************************** /
/*@{*/ /*@{*/
/** /**
* Perform an asynchronous DNS query. * Perform an asynchronous DNS query.
* *
* @param account the account that the query is being done for (or NULL)
* @param hostname The hostname to resolve.
* @param port A port number which is stored in the struct sockaddr.
* @param callback The callback function to call after resolving.
* @param data Extra data to pass to the callback function.
*
* @return NULL if there was an error, otherwise return a reference to
* a data structure that can be used to cancel the pending
* DNS query, if needed.
*
* @since 2.8.0
*/
PurpleDnsQueryData *purple_dnsquery_a_account(PurpleAccount *account, const
char *hostname, int port, PurpleDnsQueryConnectFunction callback, gpointer
data);
#if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_DNSQUERY_C_)
/**
* Perform an asynchronous DNS query.
*
* @param hostname The hostname to resolve. * @param hostname The hostname to resolve.
* @param port A port number which is stored in the struct sockaddr. * @param port A port number which is stored in the struct sockaddr.
* @param callback The callback function to call after resolving. * @param callback The callback function to call after resolving.
* @param data Extra data to pass to the callback function. * @param data Extra data to pass to the callback function.
* *
* @return NULL if there was an error, otherwise return a reference to * @return NULL if there was an error, otherwise return a reference to
* a data structure that can be used to cancel the pending * a data structure that can be used to cancel the pending
* DNS query, if needed. * DNS query, if needed.
*
* @deprecated Use purple_dnsquery_a_account instead
*/ */
PurpleDnsQueryData *purple_dnsquery_a(const char *hostname, int port, Purpl eDnsQueryConnectFunction callback, gpointer data); PurpleDnsQueryData *purple_dnsquery_a(const char *hostname, int port, Purpl eDnsQueryConnectFunction callback, gpointer data);
#endif
/** /**
* Cancel a DNS query and destroy the associated data structure. * Cancel a DNS query and destroy the associated data structure.
* *
* @param query_data The DNS query to cancel. This data structure * @param query_data The DNS query to cancel. This data structure
* is freed by this function. * is freed by this function.
*/ */
void purple_dnsquery_destroy(PurpleDnsQueryData *query_data); void purple_dnsquery_destroy(PurpleDnsQueryData *query_data);
/** /**
 End of changes. 4 change blocks. 
1 lines changed or deleted 27 lines changed or added


 dnssrv.h   dnssrv.h 
skipping to change at line 31 skipping to change at line 31
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-130 1 USA * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-130 1 USA
*/ */
#ifndef _PURPLE_DNSSRV_H #ifndef _PURPLE_DNSSRV_H
#define _PURPLE_DNSSRV_H #define _PURPLE_DNSSRV_H
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
typedef struct _PurpleSrvQueryData PurpleSrvQueryData; typedef struct _PurpleSrvTxtQueryData PurpleSrvTxtQueryData;
typedef struct _PurpleSrvResponse PurpleSrvResponse; typedef struct _PurpleSrvResponse PurpleSrvResponse;
typedef struct _PurpleTxtResponse PurpleTxtResponse; typedef struct _PurpleTxtResponse PurpleTxtResponse;
/* For compatibility, should be removed for 3.0.0
*/
typedef struct _PurpleSrvTxtQueryData PurpleSrvQueryData;
#include <glib.h> #include <glib.h>
enum PurpleDnsType {
PurpleDnsTypeTxt = 16,
PurpleDnsTypeSrv = 33
};
struct _PurpleSrvResponse { struct _PurpleSrvResponse {
char hostname[256]; char hostname[256];
int port; int port;
int weight; int weight;
int pref; int pref;
}; };
struct _PurpleTxtResponse {
char *content;
};
typedef void (*PurpleSrvTxtQueryResolvedCallback) (PurpleSrvTxtQueryData *
query_data, GList *records);
typedef void (*PurpleSrvTxtQueryFailedCallback) (PurpleSrvTxtQueryData *qu
ery_data, const gchar *error_message);
/**
* SRV Request UI operations; UIs should implement this if they want to do
SRV
* lookups themselves, rather than relying on the core.
*
* @see @ref ui-ops
*/
typedef struct
{
/** If implemented, return TRUE if the UI takes responsibility for S
RV
* queries. When returning FALSE, the standard implementation is us
ed.
* These callbacks MUST be called asynchronously. */
gboolean (*resolve)(PurpleSrvTxtQueryData *query_data,
PurpleSrvTxtQueryResolvedCallback resolved_cb,
PurpleSrvTxtQueryFailedCallback failed_cb);
/** Called just before @a query_data is freed; this should cancel an
y
* further use of @a query_data the UI would make. Unneeded if
* #resolve_host is not implemented.
*/
void (*destroy)(PurpleSrvTxtQueryData *query_data);
void (*_purple_reserved1)(void);
void (*_purple_reserved2)(void);
void (*_purple_reserved3)(void);
void (*_purple_reserved4)(void);
} PurpleSrvTxtQueryUiOps;
/** /**
* @param resp An array of PurpleSrvResponse of size results. The array * @param resp An array of PurpleSrvResponse of size results. The array
* is sorted based on the order described in the DNS SRV RFC. * is sorted based on the order described in the DNS SRV RFC.
* Users of this API should try each record in resp in order, * Users of this API should try each record in resp in order,
* starting at the beginning. * starting at the beginning.
*/ */
typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpo inter data); typedef void (*PurpleSrvCallback)(PurpleSrvResponse *resp, int results, gpo inter data);
/** /**
* Callback that returns the data retrieved from a DNS TXT lookup. * Callback that returns the data retrieved from a DNS TXT lookup.
* *
* @param responses A GList of PurpleTxtResponse objects. * @param responses A GList of PurpleTxtResponse objects.
* @param data The extra data passed to purple_txt_resolve. * @param data The extra data passed to purple_txt_resolve.
*/ */
typedef void (*PurpleTxtCallback)(GList *responses, gpointer data); typedef void (*PurpleTxtCallback)(GList *responses, gpointer data);
/** /**
* Queries an SRV record. * Queries an SRV record.
* *
* @param account the account that the query is being done for (or NULL)
* @param protocol Name of the protocol (e.g. "sip") * @param protocol Name of the protocol (e.g. "sip")
* @param transport Name of the transport ("tcp" or "udp") * @param transport Name of the transport ("tcp" or "udp")
* @param domain Domain name to query (e.g. "blubb.com") * @param domain Domain name to query (e.g. "blubb.com")
* @param cb A callback which will be called with the results * @param cb A callback which will be called with the results
* @param extradata Extra data to be passed to the callback * @param extradata Extra data to be passed to the callback
*
* @since 2.8.0
*/ */
PurpleSrvQueryData *purple_srv_resolve(const char *protocol, const char *tr ansport, const char *domain, PurpleSrvCallback cb, gpointer extradata); PurpleSrvTxtQueryData *purple_srv_resolve_account(PurpleAccount *account, c onst char *protocol, const char *transport, const char *domain, PurpleSrvCa llback cb, gpointer extradata);
#if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_DNSSRV_C_)
/** /**
* Cancel an SRV DNS query. * Queries an SRV record.
*
* @param protocol Name of the protocol (e.g. "sip")
* @param transport Name of the transport ("tcp" or "udp")
* @param domain Domain name to query (e.g. "blubb.com")
* @param cb A callback which will be called with the results
* @param extradata Extra data to be passed to the callback
*
* @deprecated Use purple_srv_resolve_account instead
*/
PurpleSrvTxtQueryData *purple_srv_resolve(const char *protocol, const char
*transport, const char *domain, PurpleSrvCallback cb, gpointer extradata);
#endif
/**
* Cancel an SRV or DNS query.
* *
* @param query_data The request to cancel. * @param query_data The request to cancel.
*/ */
void purple_srv_cancel(PurpleSrvQueryData *query_data); void purple_srv_cancel(PurpleSrvTxtQueryData *query_data);
/** /**
* Queries an TXT record. * Queries an TXT record.
* *
* @param account the account that the query is being done for (or NULL)
* @param owner Name of the protocol (e.g. "_xmppconnect")
* @param domain Domain name to query (e.g. "blubb.com")
* @param cb A callback which will be called with the results
* @param extradata Extra data to be passed to the callback
*
* @since 2.8.0
*/
PurpleSrvTxtQueryData *purple_txt_resolve_account(PurpleAccount *account, c
onst char *owner, const char *domain, PurpleTxtCallback cb, gpointer extrad
ata);
#if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_DNSSRV_C_)
/**
* Queries an TXT record.
*
* @param owner Name of the protocol (e.g. "_xmppconnect") * @param owner Name of the protocol (e.g. "_xmppconnect")
* @param domain Domain name to query (e.g. "blubb.com") * @param domain Domain name to query (e.g. "blubb.com")
* @param cb A callback which will be called with the results * @param cb A callback which will be called with the results
* @param extradata Extra data to be passed to the callback * @param extradata Extra data to be passed to the callback
* *
* @deprecated Use purple_txt_resolve_account instead
*
* @since 2.6.0 * @since 2.6.0
*/ */
PurpleSrvQueryData *purple_txt_resolve(const char *owner, const char *domai PurpleSrvTxtQueryData *purple_txt_resolve(const char *owner, const char *do
n, PurpleTxtCallback cb, gpointer extradata); main, PurpleTxtCallback cb, gpointer extradata);
#endif
/** /**
* Cancel an TXT DNS query. * Cancel an TXT DNS query.
* *
* @param query_data The request to cancel. * @param query_data The request to cancel.
* @since 2.6.0 * @since 2.6.0
*/ */
void purple_txt_cancel(PurpleSrvQueryData *query_data); void purple_txt_cancel(PurpleSrvTxtQueryData *query_data);
/** /**
* Get the value of the current TXT record. * Get the value of the current TXT record.
* *
* @param response The TXT response record * @param response The TXT response record
* @returns The value of the current TXT record. * @returns The value of the current TXT record.
* @since 2.6.0 * @since 2.6.0
*/ */
const gchar *purple_txt_response_get_content(PurpleTxtResponse *response); const gchar *purple_txt_response_get_content(PurpleTxtResponse *response);
/** /**
* Destroy a TXT DNS response object. * Destroy a TXT DNS response object.
* *
* @param response The PurpleTxtResponse to destroy. * @param response The PurpleTxtResponse to destroy.
* @since 2.6.0 * @since 2.6.0
*/ */
void purple_txt_response_destroy(PurpleTxtResponse *response); void purple_txt_response_destroy(PurpleTxtResponse *response);
/**
* Cancel a SRV/TXT query and destroy the associated data structure.
*
* @param query_data The SRV/TXT query to cancel. This data structure
* is freed by this function.
*/
void purple_srv_txt_query_destroy(PurpleSrvTxtQueryData *query_data);
/**
* Sets the UI operations structure to be used when doing a SRV/TXT
* resolve. The UI operations need only be set if the UI wants to
* handle the resolve itself; otherwise, leave it as NULL.
*
* @param ops The UI operations structure.
*/
void purple_srv_txt_query_set_ui_ops(PurpleSrvTxtQueryUiOps *ops);
/**
* Returns the UI operations structure to be used when doing a SRV/TXT
* resolve.
*
* @return The UI operations structure.
*/
PurpleSrvTxtQueryUiOps *purple_srv_txt_query_get_ui_ops(void);
/**
* Get the query from a PurpleDnsQueryData
*
* @param query_data The SRV/TXT query
* @return The query.
*/
char *purple_srv_txt_query_get_query(PurpleSrvTxtQueryData *query_data);
/**
* Get the type from a PurpleDnsQueryData (TXT or SRV)
*
* @param query_data The query
* @return The query.
*/
int purple_srv_txt_query_get_type(PurpleSrvTxtQueryData *query_data);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* _PURPLE_DNSSRV_H */ #endif /* _PURPLE_DNSSRV_H */
 End of changes. 15 change blocks. 
7 lines changed or deleted 135 lines changed or added


 gaim-compat.h   gaim-compat.h 
skipping to change at line 837 skipping to change at line 837
#define gaim_dnsquery_destroy purple_dnsquery_destroy #define gaim_dnsquery_destroy purple_dnsquery_destroy
#define gaim_dnsquery_init purple_dnsquery_init #define gaim_dnsquery_init purple_dnsquery_init
#define gaim_dnsquery_uninit purple_dnsquery_uninit #define gaim_dnsquery_uninit purple_dnsquery_uninit
#define gaim_dnsquery_set_ui_ops purple_dnsquery_set_ui_ops #define gaim_dnsquery_set_ui_ops purple_dnsquery_set_ui_ops
#define gaim_dnsquery_get_host purple_dnsquery_get_host #define gaim_dnsquery_get_host purple_dnsquery_get_host
#define gaim_dnsquery_get_port purple_dnsquery_get_port #define gaim_dnsquery_get_port purple_dnsquery_get_port
/* from dnssrv.h */ /* from dnssrv.h */
#define GaimSrvResponse PurpleSrvResponse #define GaimSrvResponse PurpleSrvResponse
#define GaimSrvQueryData PurpleSrvQueryData #define GaimSrvQueryData PurpleSrvTxtQueryData
#define GaimSrvCallback PurpleSrvCallback #define GaimSrvCallback PurpleSrvCallback
#define gaim_srv_resolve purple_srv_resolve #define gaim_srv_resolve purple_srv_resolve
#define gaim_srv_cancel purple_srv_cancel #define gaim_srv_cancel purple_srv_cancel
/* from eventloop.h */ /* from eventloop.h */
#define GAIM_INPUT_READ PURPLE_INPUT_READ #define GAIM_INPUT_READ PURPLE_INPUT_READ
#define GAIM_INPUT_WRITE PURPLE_INPUT_WRITE #define GAIM_INPUT_WRITE PURPLE_INPUT_WRITE
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 gtkconv.h   gtkconv.h 
skipping to change at line 181 skipping to change at line 181
GtkListStore *infopane_model; GtkListStore *infopane_model;
GtkTreeIter infopane_iter; GtkTreeIter infopane_iter;
/* Used when attaching a PidginConversation to a PurpleConversation /* Used when attaching a PidginConversation to a PurpleConversation
* with message history */ * with message history */
struct { struct {
int timer; int timer;
GList *current; GList *current;
} attach; } attach;
/* Quick Find (since 2.7.0) */ /**
* Quick Find.
*
* @since 2.7.0
*/
struct { struct {
GtkWidget *entry; GtkWidget *entry;
GtkWidget *container; GtkWidget *container;
} quickfind; } quickfind;
}; };
/*@}*/ /*@}*/
/************************************************************************** /**************************************************************************
* @name GTK+ Conversation API * @name GTK+ Conversation API
 End of changes. 1 change blocks. 
1 lines changed or deleted 5 lines changed or added


 gtkutils.h   gtkutils.h 
skipping to change at line 362 skipping to change at line 362
* @param optmenu The GtkOptionMenu created by * @param optmenu The GtkOptionMenu created by
* pidgin_account_option_menu_new. * pidgin_account_option_menu_new.
* @param account The PurpleAccount to select. * @param account The PurpleAccount to select.
*/ */
void pidgin_account_option_menu_set_selected(GtkWidget *optmenu, PurpleAcco unt *account); void pidgin_account_option_menu_set_selected(GtkWidget *optmenu, PurpleAcco unt *account);
/** /**
* Add autocompletion of screenames to an entry, supporting a filtering fun ction. * Add autocompletion of screenames to an entry, supporting a filtering fun ction.
* *
* @param entry The GtkEntry on which to setup autocomplete. * @param entry The GtkEntry on which to setup autocomplete.
* @param optmenu A menu for accounts, returned by gaim_gtk_account_opt ion_menu_new(). * @param optmenu A menu for accounts, returned by pidgin_account_optio n_menu_new().
* If @a optmenu is not @c NULL, it'll be updated when a username is chosen * If @a optmenu is not @c NULL, it'll be updated when a username is chosen
* from the autocomplete list. * from the autocomplete list.
* @param filter_func A function for checking if an autocomplete entry * @param filter_func A function for checking if an autocomplete entry
* should be shown. This can be @c NULL. * should be shown. This can be @c NULL.
* @param user_data The data to be passed to the filter_func function. * @param user_data The data to be passed to the filter_func function.
*/ */
void pidgin_setup_screenname_autocomplete_with_filter(GtkWidget *entry, Gtk Widget *optmenu, PidginFilterBuddyCompletionEntryFunc filter_func, gpointer user_data); void pidgin_setup_screenname_autocomplete_with_filter(GtkWidget *entry, Gtk Widget *optmenu, PidginFilterBuddyCompletionEntryFunc filter_func, gpointer user_data);
/** /**
* The default filter function for username autocomplete. * The default filter function for username autocomplete.
skipping to change at line 843 skipping to change at line 843
* *
* @param image A PurpleStoredImage. * @param image A PurpleStoredImage.
* *
* @return A GdkPixbuf created from the stored image. * @return A GdkPixbuf created from the stored image.
* *
* @since 2.5.0 * @since 2.5.0
*/ */
GdkPixbuf *pidgin_pixbuf_from_imgstore(PurpleStoredImage *image); GdkPixbuf *pidgin_pixbuf_from_imgstore(PurpleStoredImage *image);
/** /**
* Add scrollbars to a widget
* @param widget The child widget
* @hscrollbar_policy Horizontal scrolling policy
* @vscrollbar_policy Vertical scrolling policy
* @shadow Shadow type
* @width Desired widget width, or -1 for default
* @height Desired widget height, or -1 for default
*
* @since 2.8.0
*/
GtkWidget *pidgin_make_scrollable(GtkWidget *child, GtkPolicyType hscrollba
r_policy, GtkPolicyType vscrollbar_policy, GtkShadowType shadow_type, int w
idth, int height);
/**
* Initialize some utility functions. * Initialize some utility functions.
* *
* @since 2.6.0 * @since 2.6.0
*/ */
void pidgin_utils_init(void); void pidgin_utils_init(void);
/** /**
* Uninitialize some utility functions. * Uninitialize some utility functions.
* *
* @since 2.6.0 * @since 2.6.0
 End of changes. 2 change blocks. 
1 lines changed or deleted 16 lines changed or added


 media-gst.h   media-gst.h 
skipping to change at line 161 skipping to change at line 161
PurpleMediaManager *manager, const gchar *name); PurpleMediaManager *manager, const gchar *name);
gboolean purple_media_manager_register_element(PurpleMediaManager *manager, gboolean purple_media_manager_register_element(PurpleMediaManager *manager,
PurpleMediaElementInfo *info); PurpleMediaElementInfo *info);
gboolean purple_media_manager_unregister_element(PurpleMediaManager *manage r, gboolean purple_media_manager_unregister_element(PurpleMediaManager *manage r,
const gchar *name); const gchar *name);
gboolean purple_media_manager_set_active_element(PurpleMediaManager *manage r, gboolean purple_media_manager_set_active_element(PurpleMediaManager *manage r,
PurpleMediaElementInfo *info); PurpleMediaElementInfo *info);
PurpleMediaElementInfo *purple_media_manager_get_active_element( PurpleMediaElementInfo *purple_media_manager_get_active_element(
PurpleMediaManager *manager, PurpleMediaElementType type); PurpleMediaManager *manager, PurpleMediaElementType type);
/**
* Reduces media formats supported by the video source to given set.
*
* Useful to force negotiation of smaller picture resolution more suitable
for
* use with particular codec and communication protocol without rescaling.
*
* @param manager The media manager to set the media formats.
* @param caps Set of allowed media formats.
*
* @since 2.8.0
*/
void purple_media_manager_set_video_caps(PurpleMediaManager *manager,
GstCaps *caps);
/**
* Returns current set of media formats limiting the output from video sour
ce.
*
* @param manager The media manager to get the media formats from.
*
* @return @c GstCaps limiting the video source's formats.
*
* @since 2.8.0
*/
GstCaps *purple_media_manager_get_video_caps(PurpleMediaManager *manager);
gchar *purple_media_element_info_get_id(PurpleMediaElementInfo *info); gchar *purple_media_element_info_get_id(PurpleMediaElementInfo *info);
gchar *purple_media_element_info_get_name(PurpleMediaElementInfo *info); gchar *purple_media_element_info_get_name(PurpleMediaElementInfo *info);
PurpleMediaElementType purple_media_element_info_get_element_type( PurpleMediaElementType purple_media_element_info_get_element_type(
PurpleMediaElementInfo *info); PurpleMediaElementInfo *info);
GstElement *purple_media_element_info_call_create( GstElement *purple_media_element_info_call_create(
PurpleMediaElementInfo *info, PurpleMedia *media, PurpleMediaElementInfo *info, PurpleMedia *media,
const gchar *session_id, const gchar *participant); const gchar *session_id, const gchar *participant);
#ifdef __cplusplus #ifdef __cplusplus
} }
 End of changes. 1 change blocks. 
0 lines changed or deleted 27 lines changed or added


 media.h   media.h 
skipping to change at line 147 skipping to change at line 147
* @param participant The participant of the stream being signaled. * @param participant The participant of the stream being signaled.
* @param local TRUE if the info originated locally, FALSE if on the remote end. * @param local TRUE if the info originated locally, FALSE if on the remote end.
* *
* @since 2.6.0 * @since 2.6.0
*/ */
void purple_media_stream_info(PurpleMedia *media, PurpleMediaInfoType type, void purple_media_stream_info(PurpleMedia *media, PurpleMediaInfoType type,
const gchar *session_id, const gchar *participant, const gchar *session_id, const gchar *participant,
gboolean local); gboolean local);
/** /**
* Sets various optional parameters of the media call.
*
* Currently supported are:
* - "sdes-cname" : The CNAME for the RTP sessions
* - "sdes-name" : Real name used to describe the source in SDES mess
ages
* - "sdes-tool" : The TOOL to put in SDES messages
* - "sdes-email" : Email address to put in SDES messages
* - "sdes-location" : The LOCATION to put in SDES messages
* - "sdes-note" : The NOTE to put in SDES messages
* - "sdes-phone" : The PHONE to put in SDES messages
*
* @param media The media object to set the parameters on.
* @param num_params The number of parameters to pass
* @param params Array of @c GParameter to pass
*
* @since 2.8.0
*/
void purple_media_set_params(PurpleMedia *media,
guint num_params, GParameter *params);
/**
* Gets the list of optional parameters supported by the media backend.
*
* The list is owned by the @c PurpleMedia internals and should NOT be free
d.
*
* @param media The media object
*
* @return NULL-terminated array of names of supported parameters.
*
* @since 2.8.0
*/
const gchar **purple_media_get_available_params(PurpleMedia *media);
/**
* Checks if given optional parameter is supported by the media backend.
*
* @param media The media object
* @param param name of parameter
*
* @return @c TRUE if backend recognizes the parameter, @c FALSE otherwise.
*
* @since 2.8.0
*/
gboolean purple_media_param_is_supported(PurpleMedia *media, const gchar *p
aram);
/**
* Adds a stream to a session. * Adds a stream to a session.
* *
* It only adds a stream to one audio session or video session as * It only adds a stream to one audio session or video session as
* the @c sess_id must be unique between sessions. * the @c sess_id must be unique between sessions.
* *
* @param media The media object to find the session in. * @param media The media object to find the session in.
* @param sess_id The session id of the session to add the stream to. * @param sess_id The session id of the session to add the stream to.
* @param who The name of the remote user to add the stream for. * @param who The name of the remote user to add the stream for.
* @param type The type of stream to create. * @param type The type of stream to create.
* @param initiator Whether or not the local user initiated the stream. * @param initiator Whether or not the local user initiated the stream.
skipping to change at line 233 skipping to change at line 279
* @param media The media object to find the session in. * @param media The media object to find the session in.
* @param sess_id The session id of the session to find the stream in. * @param sess_id The session id of the session to find the stream in.
* @param participant The name of the remote user to get the candidates fro m. * @param participant The name of the remote user to get the candidates fro m.
* *
* @since 2.6.0 * @since 2.6.0
*/ */
GList *purple_media_get_local_candidates(PurpleMedia *media, GList *purple_media_get_local_candidates(PurpleMedia *media,
const gchar *sess_id, const gchar *sess_id,
const gchar *participant); const gchar *participant);
#if 0
/*
* These two functions aren't being used and I'd rather not lock in the API
* until they are needed. If they ever are.
*/
/** /**
* Gets the active local candidates for the stream. * Gets the active local candidates for the stream.
* *
* @param media The media object to find the session in. * @param media The media object to find the session in.
* @param sess_id The session id of the session to find the stream in. * @param sess_id The session id of the session to find the stream in.
* @param participant The name of the remote user to get the active candida te * @param participant The name of the remote user to get the active candida te
* from. * from.
* *
* @return The active candidates retrieved. * @return The active candidates retrieved.
*
* @since 2.8.0
*/ */
GList *purple_media_get_active_local_candidates(PurpleMedia *media, GList *purple_media_get_active_local_candidates(PurpleMedia *media,
const gchar *sess_id, const gchar *participant); const gchar *sess_id, const gchar *participant);
/** /**
* Gets the active remote candidates for the stream. * Gets the active remote candidates for the stream.
* *
* @param media The media object to find the session in. * @param media The media object to find the session in.
* @param sess_id The session id of the session to find the stream in. * @param sess_id The session id of the session to find the stream in.
* @param participant The name of the remote user to get the remote candida te * @param participant The name of the remote user to get the remote candida te
* from. * from.
* *
* @return The remote candidates retrieved. * @return The remote candidates retrieved.
*
* @since 2.8.0
*/ */
GList *purple_media_get_active_remote_candidates(PurpleMedia *media, GList *purple_media_get_active_remote_candidates(PurpleMedia *media,
const gchar *sess_id, const gchar *participant); const gchar *sess_id, const gchar *participant);
#endif
/** /**
* Sets remote candidates from the stream. * Sets remote candidates from the stream.
* *
* @param media The media object to find the session in. * @param media The media object to find the session in.
* @param sess_id The session id of the session find the stream in. * @param sess_id The session id of the session find the stream in.
* @param participant The name of the remote user to set the candidates fro m. * @param participant The name of the remote user to set the candidates fro m.
* @param codecs The list of remote codecs to set. * @param codecs The list of remote codecs to set.
* *
* @return @c TRUE The codecs were set successfully, or @c FALSE otherwise. * @return @c TRUE The codecs were set successfully, or @c FALSE otherwise.
 End of changes. 5 change blocks. 
7 lines changed or deleted 53 lines changed or added


 minidialog.h   minidialog.h 
skipping to change at line 142 skipping to change at line 142
const char *title); const char *title);
/** Shortcut for setting a mini-dialog's description via GObject properties . /** Shortcut for setting a mini-dialog's description via GObject properties .
* @param mini_dialog a mini-dialog * @param mini_dialog a mini-dialog
* @param description the new description for @a mini_dialog, or @c NULL t o * @param description the new description for @a mini_dialog, or @c NULL t o
* hide the description widget. * hide the description widget.
*/ */
void pidgin_mini_dialog_set_description(PidginMiniDialog *mini_dialog, void pidgin_mini_dialog_set_description(PidginMiniDialog *mini_dialog,
const char *description); const char *description);
/** Enable GMarkup elements in the mini-dialog's description.
* @param mini_dialog a mini-dialog
*/
void pidgin_mini_dialog_enable_description_markup(PidginMiniDialog *mini_di
alog);
/** Mini-dialogs support hyperlinks in their description
* (you should first call pidgin_mini_dialog_enable_description_markup() o
n a given
* dialog to enable them). */
gboolean pidgin_mini_dialog_links_supported(void);
/** Sets a callback which gets invoked when a hyperlink in the dialog's des
cription is clicked on.
* @param mini_dialog a mini-dialog
* @param cb the callback to invoke
* @param user_data the user data to pass to the callback
*/
void pidgin_mini_dialog_set_link_callback(PidginMiniDialog *mini_dialog, GC
allback cb, gpointer user_data);
/** Shortcut for setting a mini-dialog's icon via GObject properties. /** Shortcut for setting a mini-dialog's icon via GObject properties.
* @param mini_dialog a mini-dialog * @param mini_dialog a mini-dialog
* @param icon_name the Gtk stock ID of an icon, or @c NULL for no icon. * @param icon_name the Gtk stock ID of an icon, or @c NULL for no icon.
*/ */
void pidgin_mini_dialog_set_icon_name(PidginMiniDialog *mini_dialog, void pidgin_mini_dialog_set_icon_name(PidginMiniDialog *mini_dialog,
const char *icon_name); const char *icon_name);
/** Shortcut for setting a mini-dialog's custom icon via GObject properties . /** Shortcut for setting a mini-dialog's custom icon via GObject properties .
* @param mini_dialog a mini-dialog * @param mini_dialog a mini-dialog
* @param icon_name the pixbuf to use as a custom icon * @param custom_icon the pixbuf to use as a custom icon
*/ */
void pidgin_mini_dialog_set_custom_icon(PidginMiniDialog *mini_dialog, void pidgin_mini_dialog_set_custom_icon(PidginMiniDialog *mini_dialog,
GdkPixbuf *custom_icon); GdkPixbuf *custom_icon);
/** Adds a new button to a mini-dialog, and attaches the supplied callback to /** Adds a new button to a mini-dialog, and attaches the supplied callback to
* its <tt>clicked</tt> signal. After a button is clicked, the dialog is * its <tt>clicked</tt> signal. After a button is clicked, the dialog is
* destroyed. * destroyed.
* @param mini_dialog a mini-dialog * @param mini_dialog a mini-dialog
* @param text the text to display on the new button * @param text the text to display on the new button
* @param clicked_cb the function to call when the button is clicked * @param clicked_cb the function to call when the button is clicked
* @param user_data arbitrary data to pass to @a clicked_cb when it is * @param user_data arbitrary data to pass to @a clicked_cb when it is
* called. * called.
*/ */
void pidgin_mini_dialog_add_button(PidginMiniDialog *mini_dialog, void pidgin_mini_dialog_add_button(PidginMiniDialog *mini_dialog,
const char *text, PidginMiniDialogCallback clicked_cb, const char *text, PidginMiniDialogCallback clicked_cb,
gpointer user_data); gpointer user_data);
/** Equivalent to pidgin_mini_dialog_add_button(), the only difference
* is that the mini-dialog won't be closed after the button is clicked.
*/
void pidgin_mini_dialog_add_non_closing_button(PidginMiniDialog *mini_dialo
g,
const char *text, PidginMiniDialogCallback clicked_cb,
gpointer user_data);
/** Gets the number of widgets packed into PidginMiniDialog.contents. /** Gets the number of widgets packed into PidginMiniDialog.contents.
* @param mini_dialog a mini-dialog * @param mini_dialog a mini-dialog
* @return the number of widgets in @a mini_dialog->contents. * @return the number of widgets in @a mini_dialog->contents.
*/ */
guint pidgin_mini_dialog_get_num_children(PidginMiniDialog *mini_dialog); guint pidgin_mini_dialog_get_num_children(PidginMiniDialog *mini_dialog);
G_END_DECLS G_END_DECLS
#endif /* __PIDGIN_MINI_DIALOG_H__ */ #endif /* __PIDGIN_MINI_DIALOG_H__ */
 End of changes. 3 change blocks. 
1 lines changed or deleted 30 lines changed or added


 notify.h   notify.h 
skipping to change at line 531 skipping to change at line 531
/** /**
* Add a label/value pair to a PurpleNotifyUserInfo object. * Add a label/value pair to a PurpleNotifyUserInfo object.
* PurpleNotifyUserInfo keeps track of the order in which pairs are added. * PurpleNotifyUserInfo keeps track of the order in which pairs are added.
* *
* @param user_info The PurpleNotifyUserInfo * @param user_info The PurpleNotifyUserInfo
* @param label A label, which for example might be displayed by a * @param label A label, which for example might be displayed by a
* UI with a colon after it ("Status:"). Do not include * UI with a colon after it ("Status:"). Do not include
* a colon. If NULL, value will be displayed without a * a colon. If NULL, value will be displayed without a
* label. * label.
* @param value The value, which might be displayed by a UI after * @param value The value, which might be displayed by a UI after
* the label. If NULL, label will still be displayed; * the label. This should be valid HTML. If you want
* the UI should then treat label as independent and not * to insert plaintext then use
* purple_notify_user_info_add_pair_plaintext(), instead.
* If this is NULL the label will still be displayed;
* the UI should treat label as independent and not
* include a colon if it would otherwise. * include a colon if it would otherwise.
*/ */
/*
* TODO: In 3.0.0 this function should be renamed to
* purple_notify_user_info_add_pair_html(). And optionally
* purple_notify_user_info_add_pair_plaintext() could be renamed to
* purple_notify_user_info_add_pair().
*/
void purple_notify_user_info_add_pair(PurpleNotifyUserInfo *user_info, cons t char *label, const char *value); void purple_notify_user_info_add_pair(PurpleNotifyUserInfo *user_info, cons t char *label, const char *value);
/** /**
* Like purple_notify_user_info_add_pair, but value should be plaintext
* and will be escaped using g_markup_escape_text().
*/
void purple_notify_user_info_add_pair_plaintext(PurpleNotifyUserInfo *user_
info, const char *label, const char *value);
/**
* Prepend a label/value pair to a PurpleNotifyUserInfo object * Prepend a label/value pair to a PurpleNotifyUserInfo object
* *
* @param user_info The PurpleNotifyUserInfo * @param user_info The PurpleNotifyUserInfo
* @param label A label, which for example might be displayed by a * @param label A label, which for example might be displayed by a
* UI with a colon after it ("Status:"). Do not include * UI with a colon after it ("Status:"). Do not include
* a colon. If NULL, value will be displayed without a * a colon. If NULL, value will be displayed without a
* label. * label.
* @param value The value, which might be displayed by a UI after * @param value The value, which might be displayed by a UI after
* the label. If NULL, label will still be displayed; * the label. If NULL, label will still be displayed;
* the UI should then treat label as independent and not * the UI should then treat label as independent and not
 End of changes. 3 change blocks. 
2 lines changed or deleted 18 lines changed or added


 pounce.h   pounce.h 
skipping to change at line 126 skipping to change at line 126
void purple_pounce_destroy(PurplePounce *pounce); void purple_pounce_destroy(PurplePounce *pounce);
/** /**
* Destroys all buddy pounces for the account * Destroys all buddy pounces for the account
* *
* @param account The account to remove all pounces from. * @param account The account to remove all pounces from.
*/ */
void purple_pounce_destroy_all_by_account(PurpleAccount *account); void purple_pounce_destroy_all_by_account(PurpleAccount *account);
/** /**
* Destroys all buddy pounces for a buddy
*
* @param buddy The buddy whose pounces are to be removed
*
* @since 2.8.0
*/
void purple_pounce_destroy_all_by_buddy(PurpleBuddy *buddy);
/**
* Sets the events a pounce should watch for. * Sets the events a pounce should watch for.
* *
* @param pounce The buddy pounce. * @param pounce The buddy pounce.
* @param events The events to watch for. * @param events The events to watch for.
*/ */
void purple_pounce_set_events(PurplePounce *pounce, PurplePounceEvent event s); void purple_pounce_set_events(PurplePounce *pounce, PurplePounceEvent event s);
/** /**
* Sets the options for a pounce. * Sets the options for a pounce.
* *
 End of changes. 1 change blocks. 
0 lines changed or deleted 9 lines changed or added


 proxy.h   proxy.h 
skipping to change at line 42 skipping to change at line 42
/** /**
* A type of proxy connection. * A type of proxy connection.
*/ */
typedef enum typedef enum
{ {
PURPLE_PROXY_USE_GLOBAL = -1, /**< Use the global proxy information . */ PURPLE_PROXY_USE_GLOBAL = -1, /**< Use the global proxy information . */
PURPLE_PROXY_NONE = 0, /**< No proxy. */ PURPLE_PROXY_NONE = 0, /**< No proxy. */
PURPLE_PROXY_HTTP, /**< HTTP proxy. */ PURPLE_PROXY_HTTP, /**< HTTP proxy. */
PURPLE_PROXY_SOCKS4, /**< SOCKS 4 proxy. */ PURPLE_PROXY_SOCKS4, /**< SOCKS 4 proxy. */
PURPLE_PROXY_SOCKS5, /**< SOCKS 5 proxy. */ PURPLE_PROXY_SOCKS5, /**< SOCKS 5 proxy. */
PURPLE_PROXY_USE_ENVVAR /**< Use environmental settings. PURPLE_PROXY_USE_ENVVAR, /**< Use environmental settings.
*/ */
PURPLE_PROXY_TOR /**< Use a Tor proxy (SOCKS 5 really)
*/
} PurpleProxyType; } PurpleProxyType;
/** /**
* Information on proxy settings. * Information on proxy settings.
*/ */
typedef struct typedef struct
{ {
PurpleProxyType type; /**< The proxy type. */ PurpleProxyType type; /**< The proxy type. */
skipping to change at line 290 skipping to change at line 291
* the pending connection, if needed. * the pending connection, if needed.
*/ */
PurpleProxyConnectData *purple_proxy_connect_udp(void *handle, PurpleProxyConnectData *purple_proxy_connect_udp(void *handle,
PurpleAccount *account, PurpleAccount *account,
const char *host, int port, const char *host, int port,
PurpleProxyConnectFunction connect_cb, gpointer data ); PurpleProxyConnectFunction connect_cb, gpointer data );
/** /**
* Makes a connection through a SOCKS5 proxy. * Makes a connection through a SOCKS5 proxy.
* *
* Note that if the account that is making the connection uses a proxy, thi
s
* connection to a SOCKS5 proxy will be made through the account proxy.
*
* @param handle A handle that should be associated with this
* connection attempt. The handle can be used
* to cancel the connection attempt using the
* purple_proxy_connect_cancel_with_handle()
* function.
* @param account The account making the connection.
* @param gpi The PurpleProxyInfo specifying the proxy settings
* @param host The destination host.
* @param port The destination port.
* @param connect_cb The function to call when the connection is
* established. If the connection failed then
* fd will be -1 and error message will be set
* to something descriptive (hopefully).
* @param data User-defined data.
*
* @return NULL if there was an error, or a reference to an
* opaque data structure that can be used to cancel
* the pending connection, if needed.
*/
PurpleProxyConnectData *purple_proxy_connect_socks5_account(void *handle,
PurpleAccount *account, PurpleProxyInfo *gpi,
const char *host, int port,
PurpleProxyConnectFunction connect_cb, gpointer data
);
#if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_PROXY_C_)
/**
* Makes a connection through a SOCKS5 proxy.
*
* @param handle A handle that should be associated with this * @param handle A handle that should be associated with this
* connection attempt. The handle can be used * connection attempt. The handle can be used
* to cancel the connection attempt using the * to cancel the connection attempt using the
* purple_proxy_connect_cancel_with_handle() * purple_proxy_connect_cancel_with_handle()
* function. * function.
* @param gpi The PurpleProxyInfo specifying the proxy settings * @param gpi The PurpleProxyInfo specifying the proxy settings
* @param host The destination host. * @param host The destination host.
* @param port The destination port. * @param port The destination port.
* @param connect_cb The function to call when the connection is * @param connect_cb The function to call when the connection is
* established. If the connection failed then * established. If the connection failed then
* fd will be -1 and error message will be set * fd will be -1 and error message will be set
* to something descriptive (hopefully). * to something descriptive (hopefully).
* @param data User-defined data. * @param data User-defined data.
* *
* @return NULL if there was an error, or a reference to an * @return NULL if there was an error, or a reference to an
* opaque data structure that can be used to cancel * opaque data structure that can be used to cancel
* the pending connection, if needed. * the pending connection, if needed.
* @deprecated Use purple_proxy_connect_socks5_account instead
*/ */
PurpleProxyConnectData *purple_proxy_connect_socks5(void *handle, PurpleProxyConnectData *purple_proxy_connect_socks5(void *handle,
PurpleProxyInfo *gpi, PurpleProxyInfo *gpi,
const char *host, int port, const char *host, int port,
PurpleProxyConnectFunction connect_cb, gpointer data ); PurpleProxyConnectFunction connect_cb, gpointer data );
#endif
/** /**
* Cancel an in-progress connection attempt. This should be called * Cancel an in-progress connection attempt. This should be called
* by the PRPL if the user disables an account while it is still * by the PRPL if the user disables an account while it is still
* performing the initial sign on. Or when establishing a file * performing the initial sign on. Or when establishing a file
* transfer, if we attempt to connect to a remote user but they * transfer, if we attempt to connect to a remote user but they
* are behind a firewall then the PRPL can cancel the connection * are behind a firewall then the PRPL can cancel the connection
* attempt early rather than just letting the OS's TCP/IP stack * attempt early rather than just letting the OS's TCP/IP stack
* time-out the connection. * time-out the connection.
*/ */
 End of changes. 4 change blocks. 
2 lines changed or deleted 39 lines changed or added


 prpl.h   prpl.h 
skipping to change at line 203 skipping to change at line 203
* Gadu-Gadu doesn't need a username to register new account (becaus e * Gadu-Gadu doesn't need a username to register new account (becaus e
* usernames are assigned by the server). * usernames are assigned by the server).
*/ */
OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200, OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200,
/** /**
* Indicates that slash commands are native to this protocol. * Indicates that slash commands are native to this protocol.
* Used as a hint that unknown commands should not be sent as messag es. * Used as a hint that unknown commands should not be sent as messag es.
* @since 2.1.0 * @since 2.1.0
*/ */
OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400 OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400,
/**
* Indicates that this protocol supports sending a user-supplied mes
sage
* along with an invitation.
* @since 2.8.0
*/
OPT_PROTO_INVITE_MESSAGE = 0x00000800
} PurpleProtocolOptions; } PurpleProtocolOptions;
/** /**
* A protocol plugin information structure. * A protocol plugin information structure.
* *
* Every protocol plugin initializes this structure. It is the gateway * Every protocol plugin initializes this structure. It is the gateway
* between purple and the protocol plugin. Many of these callbacks can be * between purple and the protocol plugin. Many of these callbacks can be
* NULL. If a callback must be implemented, it has a comment indicating so . * NULL. If a callback must be implemented, it has a comment indicating so .
*/ */
skipping to change at line 334 skipping to change at line 341
void (*set_idle)(PurpleConnection *, int idletime); void (*set_idle)(PurpleConnection *, int idletime);
void (*change_passwd)(PurpleConnection *, const char *old_pass, void (*change_passwd)(PurpleConnection *, const char *old_pass,
const char *new_pass); const char *new_pass);
/** /**
* Add a buddy to a group on the server. * Add a buddy to a group on the server.
* *
* This PRPL function may be called in situations in which the buddy is * This PRPL function may be called in situations in which the buddy is
* already in the specified group. If the protocol supports * already in the specified group. If the protocol supports
* authorization and the user is not already authorized to see the * authorization and the user is not already authorized to see the
* status of \a buddy, \a add_buddy should request authorization. * status of \a buddy, \a add_buddy should request authorization.
*
* @deprecated Since 2.8.0, add_buddy_with_invite is preferred.
* @see add_buddy_with_invite
*/ */
void (*add_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGrou p *group); void (*add_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGrou p *group);
void (*add_buddies)(PurpleConnection *, GList *buddies, GList *group s); void (*add_buddies)(PurpleConnection *, GList *buddies, GList *group s);
void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleG roup *group); void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleG roup *group);
void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *gr oups); void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *gr oups);
void (*add_permit)(PurpleConnection *, const char *name); void (*add_permit)(PurpleConnection *, const char *name);
void (*add_deny)(PurpleConnection *, const char *name); void (*add_deny)(PurpleConnection *, const char *name);
void (*rem_permit)(PurpleConnection *, const char *name); void (*rem_permit)(PurpleConnection *, const char *name);
void (*rem_deny)(PurpleConnection *, const char *name); void (*rem_deny)(PurpleConnection *, const char *name);
void (*set_permit_deny)(PurpleConnection *); void (*set_permit_deny)(PurpleConnection *);
skipping to change at line 623 skipping to change at line 633
* @param gc The connection for which to retireve the alias * @param gc The connection for which to retireve the alias
* @param success_cb Callback to be called with the retrieved alias * @param success_cb Callback to be called with the retrieved alias
* @param failure_cb Callback to be called if the prpl is unable to * @param failure_cb Callback to be called if the prpl is unable to
* retrieve the alias * retrieve the alias
* @see purple_account_get_public_alias * @see purple_account_get_public_alias
* @since 2.7.0 * @since 2.7.0
*/ */
void (*get_public_alias)(PurpleConnection *gc, void (*get_public_alias)(PurpleConnection *gc,
PurpleGetPublicAliasSuccessCallback success _cb, PurpleGetPublicAliasSuccessCallback success _cb,
PurpleGetPublicAliasFailureCallback failure _cb); PurpleGetPublicAliasFailureCallback failure _cb);
/**
* Add a buddy to a group on the server.
*
* This PRPL function may be called in situations in which the buddy
is
* already in the specified group. If the protocol supports
* authorization and the user is not already authorized to see the
* status of \a buddy, \a add_buddy should request authorization.
*
* If authorization is required, then use the supplied invite messag
e.
*
* @since 2.8.0
*/
void (*add_buddy_with_invite)(PurpleConnection *pc, PurpleBuddy *bud
dy, PurpleGroup *group, const char *message);
void (*add_buddies_with_invite)(PurpleConnection *pc, GList *buddies
, GList *groups, const char *message);
}; };
#define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) \ #define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) \
(((G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < G_STRUCT_OFFS ET(PurplePluginProtocolInfo, struct_size)) \ (((G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < G_STRUCT_OFFS ET(PurplePluginProtocolInfo, struct_size)) \
|| (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < prpl->stru ct_size)) && \ || (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < prpl->stru ct_size)) && \
prpl->member != NULL) prpl->member != NULL)
#define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \ #define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \
((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL)
 End of changes. 3 change blocks. 
1 lines changed or deleted 31 lines changed or added


 signals.h   signals.h 
skipping to change at line 333 skipping to change at line 333
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT( void purple_marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_INT__INT( void purple_marshal_INT__INT(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_INT__INT_INT( void purple_marshal_INT__INT_INT(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_INT__POINTER_POINTER( void purple_marshal_INT__POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_INT__POINTER_POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v
al);
void purple_marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER( void purple_marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER( void purple_marshal_BOOLEAN__POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_POINTER( void purple_marshal_BOOLEAN__POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_BOOLEAN(
PurpleCallback cb, va_list args, void *data, void **return_v
al);
void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER( void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_POINTER_UINT( void purple_marshal_BOOLEAN__POINTER_POINTER_UINT(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_UINT( void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_UINT(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER( void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER( void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER(
PurpleCallback cb, va_list args, void *data, void **return_v al); PurpleCallback cb, va_list args, void *data, void **return_v al);
 End of changes. 2 change blocks. 
0 lines changed or deleted 6 lines changed or added


 version.h   version.h 
skipping to change at line 30 skipping to change at line 30
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-130 1 USA * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-130 1 USA
*/ */
#ifndef _PURPLE_VERSION_H_ #ifndef _PURPLE_VERSION_H_
#define _PURPLE_VERSION_H_ #define _PURPLE_VERSION_H_
/** The major version of the running libpurple. */ /** The major version of the running libpurple. */
#define PURPLE_MAJOR_VERSION (2) #define PURPLE_MAJOR_VERSION (2)
/** The minor version of the running libpurple. */ /** The minor version of the running libpurple. */
#define PURPLE_MINOR_VERSION (7) #define PURPLE_MINOR_VERSION (8)
/** The micro version of the running libpurple. */ /** The micro version of the running libpurple. */
#define PURPLE_MICRO_VERSION (11) #define PURPLE_MICRO_VERSION (0)
#define PURPLE_VERSION_CHECK(x,y,z) ((x) == PURPLE_MAJOR_VERSION && \ #define PURPLE_VERSION_CHECK(x,y,z) ((x) == PURPLE_MAJOR_VERSION && \
((y ) < PURPLE_MINOR_VERSION || \ ((y ) < PURPLE_MINOR_VERSION || \
(( y) == PURPLE_MINOR_VERSION && (z) <= PURPLE_MICRO_VERSION))) (( y) == PURPLE_MINOR_VERSION && (z) <= PURPLE_MICRO_VERSION)))
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/** /**
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/