account.h | account.h | |||
---|---|---|---|---|
skipping to change at line 258 | skipping to change at line 258 | |||
* Notifies the user that a remote user has wants to add the local user | * Notifies the user that a remote user has wants to add the local user | |||
* to his or her buddy list and requires authorization to do so. | * to his or her buddy list and requires authorization to do so. | |||
* | * | |||
* This will present a dialog informing the user of this and ask if the | * This will present a dialog informing the user of this and ask if the | |||
* user authorizes or denies the remote user from adding him. | * user authorizes or denies the remote user from adding him. | |||
* | * | |||
* @param account The account that was added | * @param account The account that was added | |||
* @param remote_user The name of the user that added this account. | * @param remote_user The name of the user that added this account. | |||
* @param id The optional ID of the local account. Rarely used. | * @param id The optional ID of the local account. Rarely used. | |||
* @param alias The optional alias of the remote user. | * @param alias The optional alias of the remote user. | |||
* @param message The optional message sent from the uer requesting yo u | * @param message The optional message sent by the user wanting to add you. | |||
* @param on_list Is the remote user already on the buddy list? | * @param on_list Is the remote user already on the buddy list? | |||
* @param auth_cb The callback called when the local user accepts | * @param auth_cb The callback called when the local user accepts | |||
* @param deny_cb The callback called when the local user rejects | * @param deny_cb The callback called when the local user rejects | |||
* @param user_data Data to be passed back to the above callbacks | * @param user_data Data to be passed back to the above callbacks | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_account_request_authorization(PurpleAccount *account, const ch ar *remote_user, | void *purple_account_request_authorization(PurpleAccount *account, const ch ar *remote_user, | |||
const char *id, const char *alias, c onst char *message, gboolean on_list, | const char *id, const char *alias, c onst char *message, gboolean on_list, | |||
PurpleAccountRequestAuthorizationCb auth_cb, PurpleAccountRequestAuthorizationCb deny_cb, void *user_data); | PurpleAccountRequestAuthorizationCb auth_cb, PurpleAccountRequestAuthorizationCb deny_cb, void *user_data); | |||
skipping to change at line 412 | skipping to change at line 412 | |||
/** | /** | |||
* Sets the account's status types. | * Sets the account's status types. | |||
* | * | |||
* @param account The account. | * @param account The account. | |||
* @param status_types The list of status types. | * @param status_types The list of status types. | |||
*/ | */ | |||
void purple_account_set_status_types(PurpleAccount *account, GList *status_ types); | void purple_account_set_status_types(PurpleAccount *account, GList *status_ types); | |||
/** | /** | |||
* Activates or deactivates a status. All changes to the statuses of | * Variadic version of purple_account_set_status_list(); the variadic list | |||
* an account go through this function or purple_account_set_status_list. | * replaces @a attrs, and should be <tt>NULL</tt>-terminated. | |||
* | ||||
* Only independent statuses can be deactivated with this. To deactivate | ||||
* an exclusive status, activate a different (and exclusive?) status. | ||||
* | * | |||
* @param account The account. | * @copydoc purple_account_set_status_list() | |||
* @param status_id The ID of the status. | ||||
* @param active The active state. | ||||
* @param ... Pairs of attributes for the new status passed in | ||||
* as a NULL-terminated list of id/value pairs. | ||||
*/ | */ | |||
void purple_account_set_status(PurpleAccount *account, const char *status_i d, | void purple_account_set_status(PurpleAccount *account, const char *status_i d, | |||
gboolean active, .. .) G_GNUC_NULL_TERMINATED; | gboolean active, ...) G_GNUC_NULL_TERMINATED; | |||
/** | /** | |||
* Activates or deactivates a status. All changes to the statuses of | * Activates or deactivates a status. All changes to the statuses of | |||
* an account go through this function or purple_account_set_status. | * an account go through this function or purple_account_set_status(). | |||
* | * | |||
* Only independent statuses can be deactivated with this. To deactivate | * You can only deactivate an exclusive status by activating another exclus | |||
* an exclusive status, activate a different (and exclusive?) status. | ive | |||
* status. So, if @a status_id is an exclusive status and @a active is @c | ||||
* FALSE, this function does nothing. | ||||
* | * | |||
* @param account The account. | * @param account The account. | |||
* @param status_id The ID of the status. | * @param status_id The ID of the status. | |||
* @param active The active state. | * @param active Whether @a status_id is to be activated (<tt>TRUE</tt>) | |||
* @param attrs A list of attributes in key/value pairs | or | |||
* deactivated (<tt>FALSE</tt>). | ||||
* @param attrs A list of <tt>const char *</tt> attribute names followe | ||||
d by | ||||
* <tt>const char *</tt> attribute values for the status. | ||||
* (For example, one pair might be <tt>"message"</tt> foll | ||||
owed | ||||
* by <tt>"hello, talk to me!"</tt>.) | ||||
*/ | */ | |||
void purple_account_set_status_list(PurpleAccount *account, | void purple_account_set_status_list(PurpleAccount *account, | |||
const char | const char *status_id, gboolean active, GList *attrs); | |||
*status_id, | ||||
gboolean a | ||||
ctive, GList *attrs); | ||||
/** | /** | |||
* 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); | |||
/** | /** | |||
* Sets a protocol-specific integer setting for an account. | * Sets a protocol-specific integer setting for an account. | |||
End of changes. 8 change blocks. | ||||
21 lines changed or deleted | 20 lines changed or added | |||
accountopt.h | accountopt.h | |||
---|---|---|---|---|
skipping to change at line 86 | skipping to change at line 86 | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Account Option API * / | /** @name Account Option API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Creates a new account option. | * Creates a new account option. If you know what @a type will be in advan | |||
ce, | ||||
* consider using purple_account_option_bool_new(), | ||||
* purple_account_option_int_new(), purple_account_option_string_new() or | ||||
* purple_account_option_list_new() (as appropriate) instead. | ||||
* | * | |||
* @param type The type of option. | * @param type The type of option. | |||
* @param text The text of the option. | * @param text The text of the option. | |||
* @param pref_name The account preference name for the option. | * @param pref_name The account preference name for the option. | |||
* | * | |||
* @return The account option. | * @return The account option. | |||
*/ | */ | |||
PurpleAccountOption *purple_account_option_new(PurplePrefType type, const c | PurpleAccountOption *purple_account_option_new(PurplePrefType type, | |||
har *text, | const char *text, const char *pref_name); | |||
const char *pref_name); | ||||
/** | /** | |||
* Creates a new boolean account option. | * Creates a new boolean account option. | |||
* | * | |||
* @param text The text of the option. | * @param text The text of the option. | |||
* @param pref_name The account preference name for the option. | * @param pref_name The account preference name for the option. | |||
* @param default_value The default value. | * @param default_value The default value. | |||
* | * | |||
* @return The account option. | * @return The account option. | |||
*/ | */ | |||
PurpleAccountOption *purple_account_option_bool_new(const char *text, | PurpleAccountOption *purple_account_option_bool_new(const char *text, | |||
const char *pref_name, gboolean default_value); | ||||
const char *pref_name, | ||||
gboolean default_value); | ||||
/** | /** | |||
* Creates a new integer account option. | * Creates a new integer account option. | |||
* | * | |||
* @param text The text of the option. | * @param text The text of the option. | |||
* @param pref_name The account preference name for the option. | * @param pref_name The account preference name for the option. | |||
* @param default_value The default value. | * @param default_value The default value. | |||
* | * | |||
* @return The account option. | * @return The account option. | |||
*/ | */ | |||
PurpleAccountOption *purple_account_option_int_new(const char *text, | PurpleAccountOption *purple_account_option_int_new(const char *text, | |||
const char *pref_name, int default_value); | ||||
const char *pref_name, | ||||
int default_value); | ||||
/** | /** | |||
* Creates a new string account option. | * Creates a new string account option. | |||
* | * | |||
* @param text The text of the option. | * @param text The text of the option. | |||
* @param pref_name The account preference name for the option. | * @param pref_name The account preference name for the option. | |||
* @param default_value The default value. | * @param default_value The default value. | |||
* | * | |||
* @return The account option. | * @return The account option. | |||
*/ | */ | |||
PurpleAccountOption *purple_account_option_string_new(const char *text, | PurpleAccountOption *purple_account_option_string_new(const char *text, | |||
const char *pref_name, const char *default_value); | ||||
const char *pref_name, | ||||
const char *default_value); | ||||
/** | /** | |||
* Creates a new list account option. | * Creates a new list account option. | |||
* | * | |||
* The list passed will be owned by the account option, and the | * The list passed will be owned by the account option, and the | |||
* strings inside will be freed automatically. | * strings inside will be freed automatically. | |||
* | * | |||
* The list is a list of PurpleKeyValuePair items. The key is the ID stored and | * The list is a list of PurpleKeyValuePair items. The key is the ID stored and | |||
* used internally, and the value is the label displayed. | * used internally, and the <tt>(const char *)</tt> value is the label disp layed. | |||
* | * | |||
* @param text The text of the option. | * @param text The text of the option. | |||
* @param pref_name The account preference name for the option. | * @param pref_name The account preference name for the option. | |||
* @param list The key, value list. | * @param list The key, value list. | |||
* | * | |||
* @return The account option. | * @return The account option. | |||
*/ | */ | |||
PurpleAccountOption *purple_account_option_list_new(const char *text, | PurpleAccountOption *purple_account_option_list_new(const char *text, | |||
const char *pref_name, GList *list); | ||||
const char *pref_name, | ||||
GList *list); | ||||
/** | /** | |||
* Destroys an account option. | * Destroys an account option. | |||
* | * | |||
* @param option The option to destroy. | * @param option The option to destroy. | |||
*/ | */ | |||
void purple_account_option_destroy(PurpleAccountOption *option); | void purple_account_option_destroy(PurpleAccountOption *option); | |||
/** | /** | |||
* Sets the default boolean value for an account option. | * Sets the default boolean value for an account option. | |||
skipping to change at line 243 | skipping to change at line 242 | |||
/** | /** | |||
* Returns the text for an account option. | * Returns the text for an account option. | |||
* | * | |||
* @param option The account option. | * @param option The account option. | |||
* | * | |||
* @return The account option's text. | * @return The account option's text. | |||
*/ | */ | |||
const char *purple_account_option_get_text(const PurpleAccountOption *optio n); | const char *purple_account_option_get_text(const PurpleAccountOption *optio n); | |||
/** | /** | |||
* Returns the account setting for an account option. | * Returns the name of an account option. This corresponds to the @c pref_ | |||
name | ||||
* parameter supplied to purple_account_option_new() or one of the | ||||
* type-specific constructors. | ||||
* | * | |||
* @param option The account option. | * @param option The account option. | |||
* | * | |||
* @return The account setting. | * @return The option's name. | |||
*/ | */ | |||
const char *purple_account_option_get_setting(const PurpleAccountOption *op tion); | const char *purple_account_option_get_setting(const PurpleAccountOption *op tion); | |||
/** | /** | |||
* Returns the default boolean value for an account option. | * Returns the default boolean value for an account option. | |||
* | * | |||
* @param option The account option. | * @param option The account option. | |||
* | * | |||
* @return The default boolean value. | * @return The default boolean value. | |||
*/ | */ | |||
End of changes. 9 change blocks. | ||||
24 lines changed or deleted | 17 lines changed or added | |||
blist.h | blist.h | |||
---|---|---|---|---|
skipping to change at line 56 | skipping to change at line 56 | |||
typedef enum | typedef enum | |||
{ | { | |||
PURPLE_BLIST_GROUP_NODE, | PURPLE_BLIST_GROUP_NODE, | |||
PURPLE_BLIST_CONTACT_NODE, | PURPLE_BLIST_CONTACT_NODE, | |||
PURPLE_BLIST_BUDDY_NODE, | PURPLE_BLIST_BUDDY_NODE, | |||
PURPLE_BLIST_CHAT_NODE, | PURPLE_BLIST_CHAT_NODE, | |||
PURPLE_BLIST_OTHER_NODE | PURPLE_BLIST_OTHER_NODE | |||
} PurpleBlistNodeType; | } PurpleBlistNodeType; | |||
#define PURPLE_BLIST_NODE_IS_CHAT(n) ((n)->type == PURPLE_BLIST_CHAT_NOD | #define PURPLE_BLIST_NODE_IS_CHAT(n) (purple_blist_node_get_type(n) == P | |||
E) | URPLE_BLIST_CHAT_NODE) | |||
#define PURPLE_BLIST_NODE_IS_BUDDY(n) ((n)->type == PURPLE_BLIST_BUDDY_NO | #define PURPLE_BLIST_NODE_IS_BUDDY(n) (purple_blist_node_get_type(n) == P | |||
DE) | URPLE_BLIST_BUDDY_NODE) | |||
#define PURPLE_BLIST_NODE_IS_CONTACT(n) ((n)->type == PURPLE_BLIST_CONTACT_ | #define PURPLE_BLIST_NODE_IS_CONTACT(n) (purple_blist_node_get_type(n) == P | |||
NODE) | URPLE_BLIST_CONTACT_NODE) | |||
#define PURPLE_BLIST_NODE_IS_GROUP(n) ((n)->type == PURPLE_BLIST_GROUP_NO | #define PURPLE_BLIST_NODE_IS_GROUP(n) (purple_blist_node_get_type(n) == P | |||
DE) | URPLE_BLIST_GROUP_NODE) | |||
#define PURPLE_BUDDY_IS_ONLINE(b) \ | #define PURPLE_BUDDY_IS_ONLINE(b) \ | |||
((b) != NULL && purple_account_is_connected((b)->account) && \ | ((b) != NULL && purple_account_is_connected(purple_buddy_get_account (b)) && \ | |||
purple_presence_is_online(purple_buddy_get_presence(b))) | purple_presence_is_online(purple_buddy_get_presence(b))) | |||
typedef enum | typedef enum | |||
{ | { | |||
PURPLE_BLIST_NODE_FLAG_NO_SAVE = 1 << 0, /**< node should not b e saved with the buddy list */ | PURPLE_BLIST_NODE_FLAG_NO_SAVE = 1 << 0, /**< node should not b e saved with the buddy list */ | |||
} PurpleBlistNodeFlags; | } PurpleBlistNodeFlags; | |||
#define PURPLE_BLIST_NODE_HAS_FLAG(b, f) (((PurpleBlistNode*)(b))->flags & (f)) | #define PURPLE_BLIST_NODE_HAS_FLAG(b, f) (((PurpleBlistNode*)(b))->flags & (f)) | |||
#define PURPLE_BLIST_NODE_SHOULD_SAVE(b) (! PURPLE_BLIST_NODE_HAS_FLAG(b, P URPLE_BLIST_NODE_FLAG_NO_SAVE)) | #define PURPLE_BLIST_NODE_SHOULD_SAVE(b) (! PURPLE_BLIST_NODE_HAS_FLAG(b, P URPLE_BLIST_NODE_FLAG_NO_SAVE)) | |||
skipping to change at line 232 | skipping to change at line 232 | |||
*/ | */ | |||
PurpleBlistNode *purple_blist_get_root(void); | PurpleBlistNode *purple_blist_get_root(void); | |||
/** | /** | |||
* Returns the next node of a given node. This function is to be used to it erate | * Returns the next node of a given node. This function is to be used to it erate | |||
* over the tree returned by purple_get_blist. | * over the tree returned by purple_get_blist. | |||
* | * | |||
* @param node A node. | * @param node A node. | |||
* @param offline Whether to include nodes for offline accounts | * @param offline Whether to include nodes for offline accounts | |||
* @return The next node | * @return The next node | |||
* @see purple_blist_node_get_parent | ||||
* @see purple_blist_node_get_first_child | ||||
* @see purple_blist_node_get_sibling_next | ||||
* @see purple_blist_node_get_sibling_prev | ||||
*/ | */ | |||
PurpleBlistNode *purple_blist_node_next(PurpleBlistNode *node, gboolean off line); | PurpleBlistNode *purple_blist_node_next(PurpleBlistNode *node, gboolean off line); | |||
/** | /** | |||
* Returns the parent node of a given node. | ||||
* | ||||
* @param node A node. | ||||
* @return The parent node. | ||||
* @since 2.4.0 | ||||
* @see purple_blist_node_get_first_child | ||||
* @see purple_blist_node_get_sibling_next | ||||
* @see purple_blist_node_get_sibling_prev | ||||
* @see purple_blist_node_next | ||||
*/ | ||||
PurpleBlistNode *purple_blist_node_get_parent(PurpleBlistNode *node); | ||||
/** | ||||
* Returns the the first child node of a given node. | ||||
* | ||||
* @param node A node. | ||||
* @return The child node. | ||||
* @since 2.4.0 | ||||
* @see purple_blist_node_get_parent | ||||
* @see purple_blist_node_get_sibling_next | ||||
* @see purple_blist_node_get_sibling_prev | ||||
* @see purple_blist_node_next | ||||
*/ | ||||
PurpleBlistNode *purple_blist_node_get_first_child(PurpleBlistNode *node); | ||||
/** | ||||
* Returns the sibling node of a given node. | ||||
* | ||||
* @param node A node. | ||||
* @return The sibling node. | ||||
* @since 2.4.0 | ||||
* @see purple_blist_node_get_parent | ||||
* @see purple_blist_node_get_first_child | ||||
* @see purple_blist_node_get_sibling_prev | ||||
* @see purple_blist_node_next | ||||
*/ | ||||
PurpleBlistNode *purple_blist_node_get_sibling_next(PurpleBlistNode *node); | ||||
/** | ||||
* Returns the previous sibling node of a given node. | ||||
* | ||||
* @param node A node. | ||||
* @return The sibling node. | ||||
* @since 2.4.0 | ||||
* @see purple_blist_node_get_parent | ||||
* @see purple_blist_node_get_first_child | ||||
* @see purple_blist_node_get_sibling_next | ||||
* @see purple_blist_node_next | ||||
*/ | ||||
PurpleBlistNode *purple_blist_node_get_sibling_prev(PurpleBlistNode *node); | ||||
/** | ||||
* Shows the buddy list, creating a new one if necessary. | * Shows the buddy list, creating a new one if necessary. | |||
*/ | */ | |||
void purple_blist_show(void); | void purple_blist_show(void); | |||
/** | /** | |||
* Destroys the buddy list window. | * Destroys the buddy list window. | |||
*/ | */ | |||
void purple_blist_destroy(void); | void purple_blist_destroy(void); | |||
/** | /** | |||
skipping to change at line 666 | skipping to change at line 722 | |||
/** | /** | |||
* Returns the group of which the chat is a member. | * Returns the group of which the chat is a member. | |||
* | * | |||
* @param chat The chat. | * @param chat The chat. | |||
* | * | |||
* @return The parent group, or @c NULL if the chat is not in a group. | * @return The parent group, or @c NULL if the chat is not in a group. | |||
*/ | */ | |||
PurpleGroup *purple_chat_get_group(PurpleChat *chat); | PurpleGroup *purple_chat_get_group(PurpleChat *chat); | |||
/** | /** | |||
* Returns the account the chat belongs to. | ||||
* | ||||
* @param chat The chat. | ||||
* | ||||
* @return The account the chat belongs to. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurpleAccount *purple_chat_get_account(PurpleChat *chat); | ||||
/** | ||||
* Get a hashtable containing information about a chat. | ||||
* | ||||
* @param chat The chat. | ||||
* | ||||
* @constreturn The hashtable. | ||||
* @since 2.4.0 | ||||
*/ | ||||
GHashTable *purple_chat_get_components(PurpleChat *chat); | ||||
/** | ||||
* Returns the group of which the buddy is a member. | * Returns the group of which the buddy is a member. | |||
* | * | |||
* @param buddy The buddy | * @param buddy The buddy | |||
* @return The group or NULL if the buddy is not in a group | * @return The group or NULL if the buddy is not in a group | |||
*/ | */ | |||
PurpleGroup *purple_buddy_get_group(PurpleBuddy *buddy); | PurpleGroup *purple_buddy_get_group(PurpleBuddy *buddy); | |||
/** | /** | |||
* Returns a list of accounts that have buddies in this group | * Returns a list of accounts that have buddies in this group | |||
* | * | |||
* @param g The group | * @param g The group | |||
* | * | |||
* @return A list of purple_accounts | * @return A GSList of accounts (which must be freed), or NULL if the group | |||
* has no accounts. | ||||
*/ | */ | |||
GSList *purple_group_get_accounts(PurpleGroup *g); | GSList *purple_group_get_accounts(PurpleGroup *g); | |||
/** | /** | |||
* Determines whether an account owns any buddies in a given group | * Determines whether an account owns any buddies in a given group | |||
* | * | |||
* @param g The group to search through. | * @param g The group to search through. | |||
* @param account The account. | * @param account The account. | |||
* | * | |||
* @return TRUE if there are any buddies in the group, or FALSE otherwise. | * @return TRUE if there are any buddies in the group, or FALSE otherwise. | |||
End of changes. 6 change blocks. | ||||
10 lines changed or deleted | 87 lines changed or added | |||
certificate.h | certificate.h | |||
---|---|---|---|---|
skipping to change at line 34 | skipping to change at line 34 | |||
* GNU General Public License for more details. | * GNU General Public License for more details. | |||
* | * | |||
* 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_CERTIFICATE_H | #ifndef _PURPLE_CERTIFICATE_H | |||
#define _PURPLE_CERTIFICATE_H | #define _PURPLE_CERTIFICATE_H | |||
#include <time.h> | ||||
#include <glib.h> | #include <glib.h> | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /* __cplusplus */ | #endif /* __cplusplus */ | |||
typedef enum | typedef enum | |||
{ | { | |||
PURPLE_CERTIFICATE_INVALID = 0, | PURPLE_CERTIFICATE_INVALID = 0, | |||
PURPLE_CERTIFICATE_VALID = 1 | PURPLE_CERTIFICATE_VALID = 1 | |||
skipping to change at line 786 | skipping to change at line 788 | |||
/** | /** | |||
* Displays a window showing X.509 certificate information | * Displays a window showing X.509 certificate information | |||
* | * | |||
* @param crt Certificate under an "x509" Scheme | * @param crt Certificate under an "x509" Scheme | |||
* @todo Will break on CA certs, as they have no Common Name | * @todo Will break on CA certs, as they have no Common Name | |||
*/ | */ | |||
void | void | |||
purple_certificate_display_x509(PurpleCertificate *crt); | purple_certificate_display_x509(PurpleCertificate *crt); | |||
/** | ||||
* Add a search path for certificates. | ||||
* | ||||
* @param path Path to search for certificates. | ||||
*/ | ||||
void purple_certificate_add_ca_search_path(const char *path); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /* __cplusplus */ | #endif /* __cplusplus */ | |||
#endif /* _PURPLE_CERTIFICATE_H */ | #endif /* _PURPLE_CERTIFICATE_H */ | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 9 lines changed or added | |||
cipher.h | cipher.h | |||
---|---|---|---|---|
skipping to change at line 41 | skipping to change at line 41 | |||
#define PURPLE_CIPHER(obj) ((PurpleCipher *)(obj)) /**< PurpleCipher typecast helper */ | #define PURPLE_CIPHER(obj) ((PurpleCipher *)(obj)) /**< PurpleCipher typecast helper */ | |||
#define PURPLE_CIPHER_OPS(obj) ((PurpleCipherOps *)(obj)) /**< PurpleCipherInfo typecase helper */ | #define PURPLE_CIPHER_OPS(obj) ((PurpleCipherOps *)(obj)) /**< PurpleCipherInfo typecase helper */ | |||
#define PURPLE_CIPHER_CONTEXT(obj) ((PurpleCipherContext *)(obj)) /**< PurpleCipherContext typecast helper */ | #define PURPLE_CIPHER_CONTEXT(obj) ((PurpleCipherContext *)(obj)) /**< PurpleCipherContext typecast helper */ | |||
typedef struct _PurpleCipher PurpleCipher; /**< A handle to a PurpleCipher */ | typedef struct _PurpleCipher PurpleCipher; /**< A handle to a PurpleCipher */ | |||
typedef struct _PurpleCipherOps PurpleCipherOps; /**< Ops for a PurpleCipher */ | typedef struct _PurpleCipherOps PurpleCipherOps; /**< Ops for a PurpleCipher */ | |||
typedef struct _PurpleCipherContext PurpleCipherContext; /**< A conte xt for a PurpleCipher */ | typedef struct _PurpleCipherContext PurpleCipherContext; /**< A conte xt for a PurpleCipher */ | |||
/** | /** | |||
* Modes for batch encrypters | ||||
*/ | ||||
typedef enum _PurpleCipherBatchMode { | ||||
PURPLE_CIPHER_BATCH_MODE_ECB, | ||||
PURPLE_CIPHER_BATCH_MODE_CBC | ||||
} PurpleCipherBatchMode; | ||||
/** | ||||
* The operation flags for a cipher | * The operation flags for a cipher | |||
*/ | */ | |||
typedef enum _PurpleCipherCaps { | typedef enum _PurpleCipherCaps { | |||
PURPLE_CIPHER_CAPS_SET_OPT = 1 << 1, | PURPLE_CIPHER_CAPS_SET_OPT = 1 << 1, /**< Set option flag | |||
/**< Set option flag */ | */ | |||
PURPLE_CIPHER_CAPS_GET_OPT = 1 << 2, | PURPLE_CIPHER_CAPS_GET_OPT = 1 << 2, /**< Get option flag | |||
/**< Get option flag */ | */ | |||
PURPLE_CIPHER_CAPS_INIT = 1 << 3, | PURPLE_CIPHER_CAPS_INIT = 1 << 3, /**< Init flag | |||
/**< Init flag */ | */ | |||
PURPLE_CIPHER_CAPS_RESET = 1 << 4, | PURPLE_CIPHER_CAPS_RESET = 1 << 4, /**< Reset flag | |||
/**< Reset flag */ | */ | |||
PURPLE_CIPHER_CAPS_UNINIT = 1 << 5, | PURPLE_CIPHER_CAPS_UNINIT = 1 << 5, /**< Uninit flag | |||
/**< Uninit flag */ | */ | |||
PURPLE_CIPHER_CAPS_SET_IV = 1 << 6, | PURPLE_CIPHER_CAPS_SET_IV = 1 << 6, /**< Set IV flag | |||
/**< Set IV flag */ | */ | |||
PURPLE_CIPHER_CAPS_APPEND = 1 << 7, | PURPLE_CIPHER_CAPS_APPEND = 1 << 7, /**< Append flag | |||
/**< Append flag */ | */ | |||
PURPLE_CIPHER_CAPS_DIGEST = 1 << 8, | PURPLE_CIPHER_CAPS_DIGEST = 1 << 8, /**< Digest flag | |||
/**< Digest flag */ | */ | |||
PURPLE_CIPHER_CAPS_ENCRYPT = 1 << 9, | PURPLE_CIPHER_CAPS_ENCRYPT = 1 << 9, /**< Encrypt flag | |||
/**< Encrypt flag */ | */ | |||
PURPLE_CIPHER_CAPS_DECRYPT = 1 << 10, | PURPLE_CIPHER_CAPS_DECRYPT = 1 << 10, /**< Decrypt flag | |||
/**< Decrypt flag */ | */ | |||
PURPLE_CIPHER_CAPS_SET_SALT = 1 << 11, | PURPLE_CIPHER_CAPS_SET_SALT = 1 << 11, /**< Set salt flag | |||
/**< Set salt flag */ | */ | |||
PURPLE_CIPHER_CAPS_GET_SALT_SIZE = 1 << 12, | PURPLE_CIPHER_CAPS_GET_SALT_SIZE = 1 << 12, /**< Get salt size f | |||
/**< Get salt size flag */ | lag */ | |||
PURPLE_CIPHER_CAPS_SET_KEY = 1 << 13, | PURPLE_CIPHER_CAPS_SET_KEY = 1 << 13, /**< Set key flag | |||
/**< Set key flag */ | */ | |||
PURPLE_CIPHER_CAPS_GET_KEY_SIZE = 1 << 14, /**< | PURPLE_CIPHER_CAPS_GET_KEY_SIZE = 1 << 14, /**< Get key size fl | |||
Get key size flag */ | ag */ | |||
PURPLE_CIPHER_CAPS_UNKNOWN = 1 << 16 | PURPLE_CIPHER_CAPS_SET_BATCH_MODE = 1 << 15, /**< Set batch mode | |||
/**< Unknown */ | flag */ | |||
PURPLE_CIPHER_CAPS_GET_BATCH_MODE = 1 << 16, /**< Get batch mode | ||||
flag */ | ||||
PURPLE_CIPHER_CAPS_GET_BLOCK_SIZE = 1 << 17, /**< The get block s | ||||
ize flag */ | ||||
PURPLE_CIPHER_CAPS_SET_KEY_WITH_LEN = 1 << 18, /**< The set key wit | ||||
h length flag */ | ||||
PURPLE_CIPHER_CAPS_UNKNOWN = 1 << 19 /**< Unknown | ||||
*/ | ||||
} PurpleCipherCaps; | } PurpleCipherCaps; | |||
/** | /** | |||
* The operations of a cipher. Every cipher must implement one of these. | * The operations of a cipher. Every cipher must implement one of these. | |||
*/ | */ | |||
struct _PurpleCipherOps { | struct _PurpleCipherOps { | |||
/** The set option function */ | /** The set option function */ | |||
void (*set_option)(PurpleCipherContext *context, const gchar *name, void *value); | void (*set_option)(PurpleCipherContext *context, const gchar *name, void *value); | |||
/** The get option function */ | /** The get option function */ | |||
skipping to change at line 107 | skipping to change at line 119 | |||
/** The get salt size function */ | /** The get salt size function */ | |||
size_t (*get_salt_size)(PurpleCipherContext *context); | size_t (*get_salt_size)(PurpleCipherContext *context); | |||
/** The set key function */ | /** The set key function */ | |||
void (*set_key)(PurpleCipherContext *context, const guchar *key); | void (*set_key)(PurpleCipherContext *context, const guchar *key); | |||
/** The get key size function */ | /** The get key size function */ | |||
size_t (*get_key_size)(PurpleCipherContext *context); | size_t (*get_key_size)(PurpleCipherContext *context); | |||
void (*_purple_reserved1)(void); | /** The set batch mode function */ | |||
void (*_purple_reserved2)(void); | void (*set_batch_mode)(PurpleCipherContext *context, PurpleCipherBat | |||
void (*_purple_reserved3)(void); | chMode mode); | |||
void (*_purple_reserved4)(void); | ||||
/** The get batch mode function */ | ||||
PurpleCipherBatchMode (*get_batch_mode)(PurpleCipherContext *context | ||||
); | ||||
/** The get block size function */ | ||||
size_t (*get_block_size)(PurpleCipherContext *context); | ||||
/** The set key with length function */ | ||||
void (*set_key_with_len)(PurpleCipherContext *context, const guchar | ||||
*key, size_t len); | ||||
}; | }; | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /* __cplusplus */ | #endif /* __cplusplus */ | |||
/************************************************************************** ***/ | /************************************************************************** ***/ | |||
/** @name PurpleCipher API */ | /** @name PurpleCipher API */ | |||
/************************************************************************** ***/ | /************************************************************************** ***/ | |||
/*@{*/ | /*@{*/ | |||
skipping to change at line 347 | skipping to change at line 366 | |||
* @param output The output buffer | * @param output The output buffer | |||
* @param outlen The len of data that was outputed | * @param outlen The len of data that was outputed | |||
* | * | |||
* @return A cipher specific status code | * @return A cipher specific status code | |||
*/ | */ | |||
gint purple_cipher_context_decrypt(PurpleCipherContext *context, const guch ar data[], size_t len, guchar output[], size_t *outlen); | gint purple_cipher_context_decrypt(PurpleCipherContext *context, const guch ar data[], size_t len, guchar output[], size_t *outlen); | |||
/** | /** | |||
* Sets the salt on a context | * Sets the salt on a context | |||
* | * | |||
* @param context The context who's salt to set | * @param context The context whose salt to set | |||
* @param salt The salt | * @param salt The salt | |||
*/ | */ | |||
void purple_cipher_context_set_salt(PurpleCipherContext *context, guchar *s alt); | void purple_cipher_context_set_salt(PurpleCipherContext *context, guchar *s alt); | |||
/** | /** | |||
* Gets the size of the salt if the cipher supports it | * Gets the size of the salt if the cipher supports it | |||
* | * | |||
* @param context The context who's salt size to get | * @param context The context whose salt size to get | |||
* | * | |||
* @return The size of the salt | * @return The size of the salt | |||
*/ | */ | |||
size_t purple_cipher_context_get_salt_size(PurpleCipherContext *context); | size_t purple_cipher_context_get_salt_size(PurpleCipherContext *context); | |||
/** | /** | |||
* Sets the key on a context | * Sets the key on a context | |||
* | * | |||
* @param context The context who's key to set | * @param context The context whose key to set | |||
* @param key The key | * @param key The key | |||
*/ | */ | |||
void purple_cipher_context_set_key(PurpleCipherContext *context, const guch ar *key); | void purple_cipher_context_set_key(PurpleCipherContext *context, const guch ar *key); | |||
/** | /** | |||
* Gets the key size for a context | * Gets the key size for a context | |||
* | * | |||
* @param context The context who's key size to get | * @param context The context whose key size to get | |||
* | * | |||
* @return The size of the key | * @return The size of the key | |||
*/ | */ | |||
size_t purple_cipher_context_get_key_size(PurpleCipherContext *context); | size_t purple_cipher_context_get_key_size(PurpleCipherContext *context); | |||
/** | /** | |||
* Sets the batch mode of a context | ||||
* | ||||
* @param context The context whose batch mode to set | ||||
* @param mode The batch mode under which the cipher should operate | ||||
* | ||||
*/ | ||||
void purple_cipher_context_set_batch_mode(PurpleCipherContext *context, Pur | ||||
pleCipherBatchMode mode); | ||||
/** | ||||
* Gets the batch mode of a context | ||||
* | ||||
* @param context The context whose batch mode to get | ||||
* | ||||
* @return The batch mode under which the cipher is operating | ||||
*/ | ||||
PurpleCipherBatchMode purple_cipher_context_get_batch_mode(PurpleCipherCont | ||||
ext *context); | ||||
/** | ||||
* Gets the block size of a context | ||||
* | ||||
* @param context The context whose block size to get | ||||
* | ||||
* @return The block size of the context | ||||
*/ | ||||
size_t purple_cipher_context_get_block_size(PurpleCipherContext *context); | ||||
/** | ||||
* Sets the key with a given length on a context | ||||
* | ||||
* @param context The context whose key to set | ||||
* @param key The key | ||||
* @param len The length of the key | ||||
* | ||||
*/ | ||||
void purple_cipher_context_set_key_with_len(PurpleCipherContext *context, c | ||||
onst guchar *key, size_t len); | ||||
/** | ||||
* Sets the cipher data for a context | * Sets the cipher data for a context | |||
* | * | |||
* @param context The context who's cipher data to set | * @param context The context whose cipher data to set | |||
* @param data The cipher data to set | * @param data The cipher data to set | |||
*/ | */ | |||
void purple_cipher_context_set_data(PurpleCipherContext *context, gpointer data); | void purple_cipher_context_set_data(PurpleCipherContext *context, gpointer data); | |||
/** | /** | |||
* Gets the cipher data for a context | * Gets the cipher data for a context | |||
* | * | |||
* @param context The context who's cipher data to get | * @param context The context whose cipher data to get | |||
* | * | |||
* @return The cipher data | * @return The cipher data | |||
*/ | */ | |||
gpointer purple_cipher_context_get_data(PurpleCipherContext *context); | gpointer purple_cipher_context_get_data(PurpleCipherContext *context); | |||
/*@}*/ | /*@}*/ | |||
/************************************************************************** ***/ | /************************************************************************** ***/ | |||
/** @name Purple Cipher HTTP Digest Helper Functions */ | /** @name Purple Cipher HTTP Digest Helper Functions */ | |||
/************************************************************************** ***/ | /************************************************************************** ***/ | |||
/*@{*/ | /*@{*/ | |||
End of changes. 10 change blocks. | ||||
40 lines changed or deleted | 106 lines changed or added | |||
cmds.h | cmds.h | |||
---|---|---|---|---|
skipping to change at line 33 | skipping to change at line 33 | |||
#ifndef _PURPLE_CMDS_H_ | #ifndef _PURPLE_CMDS_H_ | |||
#define _PURPLE_CMDS_H_ | #define _PURPLE_CMDS_H_ | |||
#include "conversation.h" | #include "conversation.h" | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Structures * / | /** @name Structures * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
enum _PurpleCmdStatus { | typedef enum _PurpleCmdStatus { | |||
PURPLE_CMD_STATUS_OK, | PURPLE_CMD_STATUS_OK, | |||
PURPLE_CMD_STATUS_FAILED, | PURPLE_CMD_STATUS_FAILED, | |||
PURPLE_CMD_STATUS_NOT_FOUND, | PURPLE_CMD_STATUS_NOT_FOUND, | |||
PURPLE_CMD_STATUS_WRONG_ARGS, | PURPLE_CMD_STATUS_WRONG_ARGS, | |||
PURPLE_CMD_STATUS_WRONG_PRPL, | PURPLE_CMD_STATUS_WRONG_PRPL, | |||
PURPLE_CMD_STATUS_WRONG_TYPE, | PURPLE_CMD_STATUS_WRONG_TYPE, | |||
}; | } PurpleCmdStatus; | |||
enum _PurpleCmdRet { | typedef enum _PurpleCmdRet { | |||
PURPLE_CMD_RET_OK, /**< Everything's okay. Don't look for anot her command to call. */ | PURPLE_CMD_RET_OK, /**< Everything's okay. Don't look for anot her command to call. */ | |||
PURPLE_CMD_RET_FAILED, /**< The command failed, but stop looking.* / | PURPLE_CMD_RET_FAILED, /**< The command failed, but stop looking.* / | |||
PURPLE_CMD_RET_CONTINUE, /**< Continue, looking for other commands w ith the same name to call. */ | PURPLE_CMD_RET_CONTINUE, /**< Continue, looking for other commands w ith the same name to call. */ | |||
}; | } PurpleCmdRet; | |||
#define PURPLE_CMD_FUNC(func) ((PurpleCmdFunc)func) | #define PURPLE_CMD_FUNC(func) ((PurpleCmdFunc)func) | |||
typedef enum _PurpleCmdRet (*PurpleCmdFunc)(PurpleConversation *, const gch ar *cmd, | typedef PurpleCmdRet (*PurpleCmdFunc)(PurpleConversation *, const gchar *cm d, | |||
gchar **args, gchar **error, void *data); | gchar **args, gchar **error, void *data); | |||
typedef guint PurpleCmdId; | typedef guint PurpleCmdId; | |||
enum _PurpleCmdPriority { | typedef enum _PurpleCmdPriority { | |||
PURPLE_CMD_P_VERY_LOW = -1000, | PURPLE_CMD_P_VERY_LOW = -1000, | |||
PURPLE_CMD_P_LOW = 0, | PURPLE_CMD_P_LOW = 0, | |||
PURPLE_CMD_P_DEFAULT = 1000, | PURPLE_CMD_P_DEFAULT = 1000, | |||
PURPLE_CMD_P_PRPL = 2000, | PURPLE_CMD_P_PRPL = 2000, | |||
PURPLE_CMD_P_PLUGIN = 3000, | PURPLE_CMD_P_PLUGIN = 3000, | |||
PURPLE_CMD_P_ALIAS = 4000, | PURPLE_CMD_P_ALIAS = 4000, | |||
PURPLE_CMD_P_HIGH = 5000, | PURPLE_CMD_P_HIGH = 5000, | |||
PURPLE_CMD_P_VERY_HIGH = 6000, | PURPLE_CMD_P_VERY_HIGH = 6000, | |||
}; | } PurpleCmdPriority; | |||
/** Flags used to set various properties of commands. Every command should | /** Flags used to set various properties of commands. Every command should | |||
* have at least one of #PURPLE_CMD_FLAG_IM and #PURPLE_CMD_FLAG_CHAT set in | * have at least one of #PURPLE_CMD_FLAG_IM and #PURPLE_CMD_FLAG_CHAT set in | |||
* order to be even slighly useful. | * order to be even slighly useful. | |||
* | * | |||
* @see purple_cmd_register | * @see purple_cmd_register | |||
*/ | */ | |||
enum _PurpleCmdFlag { | typedef enum _PurpleCmdFlag { | |||
/** Command is usable in IMs. */ | /** Command is usable in IMs. */ | |||
PURPLE_CMD_FLAG_IM = 0x01, | PURPLE_CMD_FLAG_IM = 0x01, | |||
/** Command is usable in multi-user chats. */ | /** Command is usable in multi-user chats. */ | |||
PURPLE_CMD_FLAG_CHAT = 0x02, | PURPLE_CMD_FLAG_CHAT = 0x02, | |||
/** Command is usable only for a particular prpl. */ | /** Command is usable only for a particular prpl. */ | |||
PURPLE_CMD_FLAG_PRPL_ONLY = 0x04, | PURPLE_CMD_FLAG_PRPL_ONLY = 0x04, | |||
/** Incorrect arguments to this command should be accepted anyway. * / | /** Incorrect arguments to this command should be accepted anyway. * / | |||
PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS = 0x08, | PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS = 0x08, | |||
}; | } PurpleCmdFlag; | |||
typedef enum _PurpleCmdPriority PurpleCmdPriority; | ||||
typedef enum _PurpleCmdFlag PurpleCmdFlag; | ||||
typedef enum _PurpleCmdStatus PurpleCmdStatus; | ||||
typedef enum _PurpleCmdRet PurpleCmdRet; | ||||
/*@}*/ | /*@}*/ | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Commands API * / | /** @name Commands API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
End of changes. 9 change blocks. | ||||
14 lines changed or deleted | 9 lines changed or added | |||
connection.h | connection.h | |||
---|---|---|---|---|
skipping to change at line 199 | skipping to change at line 199 | |||
* @deprecated in favour of | * @deprecated in favour of | |||
* #PurpleConnectionUiOps.report_disconnect_reason. | * #PurpleConnectionUiOps.report_disconnect_reason. | |||
*/ | */ | |||
void (*report_disconnect)(PurpleConnection *gc, const char *text); | void (*report_disconnect)(PurpleConnection *gc, const char *text); | |||
/** Called when libpurple discovers that the computer's network | /** Called when libpurple discovers that the computer's network | |||
* connection is active. On Linux, this uses Network Manager if | * connection is active. On Linux, this uses Network Manager if | |||
* available; on Windows, it uses Win32's network change notificati on | * available; on Windows, it uses Win32's network change notificati on | |||
* infrastructure. | * infrastructure. | |||
*/ | */ | |||
void (*network_connected)(); | void (*network_connected)(void); | |||
/** Called when libpurple discovers that the computer's network | /** Called when libpurple discovers that the computer's network | |||
* connection has gone away. | * connection has gone away. | |||
*/ | */ | |||
void (*network_disconnected)(); | void (*network_disconnected)(void); | |||
/** Called when an error causes a connection to be disconnected. | /** Called when an error causes a connection to be disconnected. | |||
* Called before #disconnected. This op is intended to replace | * Called before #disconnected. This op is intended to replace | |||
* #report_disconnect. If both are implemented, this will be calle d | * #report_disconnect. If both are implemented, this will be calle d | |||
* first; however, there's no real reason to implement both. | * first; however, there's no real reason to implement both. | |||
* @param reason why the connection ended, if known, or | * @param reason why the connection ended, if known, or | |||
* #PURPLE_CONNECTION_ERROR_OTHER_ERROR, if not. | * #PURPLE_CONNECTION_ERROR_OTHER_ERROR, if not. | |||
* @param text a localized message describing the disconnection | * @param text a localized message describing the disconnection | |||
* in more detail to the user. | * in more detail to the user. | |||
* @see #purple_connection_error_reason | * @see #purple_connection_error_reason | |||
skipping to change at line 254 | skipping to change at line 254 | |||
/** Wants to Die state. This is set when the user chooses to log ou t, or | /** Wants to Die state. This is set when the user chooses to log ou t, or | |||
* when the protocol is disconnected and should not be automatically | * when the protocol is disconnected and should not be automatically | |||
* reconnected (incorrect password, etc.). prpls should rely on | * reconnected (incorrect password, etc.). prpls should rely on | |||
* purple_connection_error_reason() to set this for them rather than | * purple_connection_error_reason() to set this for them rather than | |||
* setting it themselves. | * setting it themselves. | |||
* @see purple_connection_error_is_fatal | * @see purple_connection_error_is_fatal | |||
*/ | */ | |||
gboolean wants_to_die; | gboolean wants_to_die; | |||
guint disconnect_timeout; /**< Timer used for nasty stack tricks */ | guint disconnect_timeout; /**< Timer used for nasty stack tricks */ | |||
time_t last_received; /**< When we last received a packet. Se | ||||
t by the | ||||
prpl to avoid sending unneeded kee | ||||
palives */ | ||||
}; | }; | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Connection API * / | /** @name Connection API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
skipping to change at line 365 | skipping to change at line 367 | |||
* @return The connection state. | * @return The connection state. | |||
*/ | */ | |||
PurpleConnectionState purple_connection_get_state(const PurpleConnection *g c); | PurpleConnectionState purple_connection_get_state(const PurpleConnection *g c); | |||
/** | /** | |||
* Returns TRUE if the account is connected, otherwise returns FALSE. | * Returns TRUE if the account is connected, otherwise returns FALSE. | |||
* | * | |||
* @return TRUE if the account is connected, otherwise returns FALSE. | * @return TRUE if the account is connected, otherwise returns FALSE. | |||
*/ | */ | |||
#define PURPLE_CONNECTION_IS_CONNECTED(gc) \ | #define PURPLE_CONNECTION_IS_CONNECTED(gc) \ | |||
(gc->state == PURPLE_CONNECTED) | (purple_connection_get_state(gc) == PURPLE_CONNECTED) | |||
/** | /** | |||
* Returns the connection's account. | * Returns the connection's account. | |||
* | * | |||
* @param gc The connection. | * @param gc The connection. | |||
* | * | |||
* @return The connection's account. | * @return The connection's account. | |||
*/ | */ | |||
PurpleAccount *purple_connection_get_account(const PurpleConnection *gc); | PurpleAccount *purple_connection_get_account(const PurpleConnection *gc); | |||
/** | /** | |||
* Returns the protocol plugin managing a connection. | ||||
* | ||||
* @param gc The connection. | ||||
* | ||||
* @return The protocol plugin. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurplePlugin * purple_connection_get_prpl(const PurpleConnection *gc); | ||||
/** | ||||
* Returns the connection's password. | * Returns the connection's password. | |||
* | * | |||
* @param gc The connection. | * @param gc The connection. | |||
* | * | |||
* @return The connection's password. | * @return The connection's password. | |||
*/ | */ | |||
const char *purple_connection_get_password(const PurpleConnection *gc); | const char *purple_connection_get_password(const PurpleConnection *gc); | |||
/** | /** | |||
* Returns the connection's displayed name. | * Returns the connection's displayed name. | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 17 lines changed or added | |||
conversation.h | conversation.h | |||
---|---|---|---|---|
skipping to change at line 489 | skipping to change at line 489 | |||
* @param conv The conversation. | * @param conv The conversation. | |||
* @param name The conversation's name. | * @param name The conversation's name. | |||
*/ | */ | |||
void purple_conversation_set_name(PurpleConversation *conv, const char *nam e); | void purple_conversation_set_name(PurpleConversation *conv, const char *nam e); | |||
/** | /** | |||
* 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. | * @return The conversation's name. If the conversation is an IM with a Pur | |||
pleBuddy, | ||||
* 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); | |||
/** | /** | |||
* 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 ); | |||
skipping to change at line 715 | skipping to change at line 716 | |||
* | * | |||
* @since 2.2.0 | * @since 2.2.0 | |||
*/ | */ | |||
const char *purple_conversation_message_get_message(PurpleConvMessage *msg) ; | const char *purple_conversation_message_get_message(PurpleConvMessage *msg) ; | |||
/** | /** | |||
* Get the message-flags of a PurpleConvMessage | * Get the message-flags of a PurpleConvMessage | |||
* | * | |||
* @param msg A PurpleConvMessage | * @param msg A PurpleConvMessage | |||
* | * | |||
* @return The name of the sender of the message | * @return The message flags | |||
* | * | |||
* @since 2.2.0 | * @since 2.2.0 | |||
*/ | */ | |||
PurpleMessageFlags purple_conversation_message_get_flags(PurpleConvMessage *msg); | PurpleMessageFlags purple_conversation_message_get_flags(PurpleConvMessage *msg); | |||
/** | /** | |||
* Get the timestamp of a PurpleConvMessage | * Get the timestamp of a PurpleConvMessage | |||
* | * | |||
* @param msg A PurpleConvMessage | * @param msg A PurpleConvMessage | |||
* | * | |||
* @return The name of the sender of the message | * @return The timestamp of the message | |||
* | * | |||
* @since 2.2.0 | * @since 2.2.0 | |||
*/ | */ | |||
time_t purple_conversation_message_get_timestamp(PurpleConvMessage *msg); | time_t purple_conversation_message_get_timestamp(PurpleConvMessage *msg); | |||
/*@}*/ | /*@}*/ | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name IM Conversation API * / | /** @name IM Conversation API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 5 lines changed or added | |||
core.h | core.h | |||
---|---|---|---|---|
skipping to change at line 70 | skipping to change at line 70 | |||
/** | /** | |||
* Quits the core of purple, which, depending on the UI, may quit the | * Quits the core of purple, which, depending on the UI, may quit the | |||
* application using the purple core. | * application using the purple core. | |||
*/ | */ | |||
void purple_core_quit(void); | void purple_core_quit(void); | |||
/** | /** | |||
* Calls purple_core_quit(). This can be used as the function | * Calls purple_core_quit(). This can be used as the function | |||
* passed to purple_timeout_add() when you want to shutdown Purple | * passed to purple_timeout_add() when you want to shutdown Purple | |||
* in a specified amount of time. When shutting down Purple | * in a specified amount of time. When shutting down Purple | |||
* from a plugin, you must use this with a timeout value of 0: | * from a plugin, you must use this instead of purple_core_quit(); | |||
* for an immediate exit, use a timeout value of 0: | ||||
* purple_timeout_add(0, purple_core_quitcb, NULL); | * purple_timeout_add(0, purple_core_quitcb, NULL); | |||
* This is ensures that code from your plugin is not being | * This is ensures that code from your plugin is not being | |||
* executed when purple_core_quit() is called. Otherwise you | * executed when purple_core_quit() is called. If the plugin | |||
* would get a core dump after purple_core_quit() executes and | * called purple_core_quit() directly, you would get a core dump | |||
* control returns to your plugin because purple_core_quit() frees | * after purple_core_quit() executes and control returns to your | |||
* all plugins. | * plugin because purple_core_quit() frees all plugins. | |||
*/ | */ | |||
gboolean purple_core_quit_cb(gpointer unused); | gboolean purple_core_quit_cb(gpointer unused); | |||
/** | /** | |||
* Returns the version of the core library. | * Returns the version of the core library. | |||
* | * | |||
* @return The version of the core library. | * @return The version of the core library. | |||
*/ | */ | |||
const char *purple_core_get_version(void); | const char *purple_core_get_version(void); | |||
End of changes. 2 change blocks. | ||||
5 lines changed or deleted | 6 lines changed or added | |||
finch.h | finch.h | |||
---|---|---|---|---|
skipping to change at line 32 | skipping to change at line 32 | |||
* 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 | |||
*/ | */ | |||
#include <glib.h> | #include <glib.h> | |||
#include "libpurple/internal.h" | #include "libpurple/internal.h" | |||
#define FINCH_UI "gnt-purple" | #define FINCH_UI "gnt-purple" | |||
#define FINCH_PREFS_ROOT "/finch" | #define FINCH_PREFS_ROOT "/finch" | |||
#define FINCH_GET_DATA(obj) (obj)->ui_data | ||||
#define FINCH_SET_DATA(obj, data) (obj)->ui_data = data | ||||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 0 lines changed or added | |||
ft.h | ft.h | |||
---|---|---|---|---|
skipping to change at line 361 | skipping to change at line 361 | |||
/** | /** | |||
* Returns the remote port number in the file transfer. | * Returns the remote port number in the file transfer. | |||
* | * | |||
* @param xfer The file transfer. | * @param xfer The file transfer. | |||
* | * | |||
* @return The port number on the other end. | * @return The port number on the other end. | |||
*/ | */ | |||
unsigned int purple_xfer_get_remote_port(const PurpleXfer *xfer); | unsigned int purple_xfer_get_remote_port(const PurpleXfer *xfer); | |||
/** | /** | |||
* Returns the time the transfer of a file started. | ||||
* | ||||
* @param xfer The file transfer. | ||||
* | ||||
* @return The time when the transfer started. | ||||
* @since 2.4.0 | ||||
*/ | ||||
time_t purple_xfer_get_start_time(const PurpleXfer *xfer); | ||||
/** | ||||
* Returns the time the transfer of a file ended. | ||||
* | ||||
* @param xfer The file transfer. | ||||
* | ||||
* @return The time when the transfer ended. | ||||
* @since 2.4.0 | ||||
*/ | ||||
time_t purple_xfer_get_end_time(const PurpleXfer *xfer); | ||||
/** | ||||
* Sets the completed state for the file transfer. | * Sets the completed state for the file transfer. | |||
* | * | |||
* @param xfer The file transfer. | * @param xfer The file transfer. | |||
* @param completed The completed state. | * @param completed The completed state. | |||
*/ | */ | |||
void purple_xfer_set_completed(PurpleXfer *xfer, gboolean completed); | void purple_xfer_set_completed(PurpleXfer *xfer, gboolean completed); | |||
/** | /** | |||
* Sets the filename for the file transfer. | * Sets the filename for the file transfer. | |||
* | * | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 20 lines changed or added | |||
gnt.h | gnt.h | |||
---|---|---|---|---|
skipping to change at line 144 | skipping to change at line 144 | |||
* @param widget The widget to set the URGENT hint for. | * @param widget The widget to set the URGENT hint for. | |||
*/ | */ | |||
void gnt_widget_set_urgent(GntWidget *widget); | void gnt_widget_set_urgent(GntWidget *widget); | |||
/** | /** | |||
* Register a global action. | * Register a global action. | |||
* | * | |||
* @param label The user-visible label for the action. | * @param label The user-visible label for the action. | |||
* @param callback The callback function for the action. | * @param callback The callback function for the action. | |||
*/ | */ | |||
void gnt_register_action(const char *label, void (*callback)()); | void gnt_register_action(const char *label, void (*callback)(void)); | |||
/** | /** | |||
* Show a menu. | * Show a menu. | |||
* | * | |||
* @param menu The menu to display. | * @param menu The menu to display. | |||
* | * | |||
* @return @c TRUE if the menu is displayed, @c FALSE otherwise (e.g., if a nother menu is currently displayed). | * @return @c TRUE if the menu is displayed, @c FALSE otherwise (e.g., if a nother menu is currently displayed). | |||
*/ | */ | |||
gboolean gnt_screen_menu_show(gpointer menu); | gboolean gnt_screen_menu_show(gpointer menu); | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
gntblist.h | gntblist.h | |||
---|---|---|---|---|
skipping to change at line 30 | skipping to change at line 30 | |||
* GNU General Public License for more details. | * GNU General Public License for more details. | |||
* | * | |||
* 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 _GNT_BLIST_H | #ifndef _GNT_BLIST_H | |||
#define _GNT_BLIST_H | #define _GNT_BLIST_H | |||
#include "blist.h" | #include "blist.h" | |||
#include "gnttree.h" | ||||
/********************************************************************** | /********************************************************************** | |||
* @name GNT BuddyList API | * @name GNT BuddyList API | |||
**********************************************************************/ | **********************************************************************/ | |||
/*@{*/ | /*@{*/ | |||
typedef struct | ||||
{ | ||||
const char *id; /**< An identifie | ||||
r for the manager. */ | ||||
const char *name; /**< Displayable | ||||
name for the manager. */ | ||||
gboolean (*init)(void); /**< Called right | ||||
before it's being used. */ | ||||
gboolean (*uninit)(void); /**< Called right | ||||
after it's not being used any more. */ | ||||
gboolean (*can_add_node)(PurpleBlistNode *node); /**< Whether a no | ||||
de should be added to the view. */ | ||||
gpointer (*find_parent)(PurpleBlistNode *node); /**< Find the par | ||||
ent row for a node. */ | ||||
gboolean (*create_tooltip)(gpointer selected_row, GString **body, ch | ||||
ar **title); /**< Create tooltip for a selected row. */ | ||||
gpointer reserved[4]; | ||||
} FinchBlistManager; | ||||
/** | /** | |||
* Get the ui-functions. | * Get the ui-functions. | |||
* | * | |||
* @return The PurpleBlistUiOps structure populated with the appropriate fu nctions. | * @return The PurpleBlistUiOps structure populated with the appropriate fu nctions. | |||
*/ | */ | |||
PurpleBlistUiOps * finch_blist_get_ui_ops(void); | PurpleBlistUiOps * finch_blist_get_ui_ops(void); | |||
/** | /** | |||
* Perform necessary initializations. | * Perform necessary initializations. | |||
*/ | */ | |||
skipping to change at line 106 | skipping to change at line 119 | |||
* | * | |||
* @param conn The connection to get information fro | * @param conn The connection to get information fro | |||
* @param name The user to get information about. | * @param name The user to get information about. | |||
* | * | |||
* @return Returns the ui-handle for the userinfo notification. | * @return Returns the ui-handle for the userinfo notification. | |||
* | * | |||
* @since 2.1.0 | * @since 2.1.0 | |||
*/ | */ | |||
gpointer finch_retrieve_user_info(PurpleConnection *conn, const char *name) ; | gpointer finch_retrieve_user_info(PurpleConnection *conn, const char *name) ; | |||
/** | ||||
* Get the tree list of the buddy list. | ||||
* @return The GntTree widget. | ||||
* @since 2.4.0 | ||||
*/ | ||||
GntTree * finch_blist_get_tree(void); | ||||
/** | ||||
* Add an alternate buddy list manager. | ||||
* | ||||
* @param manager The alternate buddylist manager. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void finch_blist_install_manager(const FinchBlistManager *manager); | ||||
/** | ||||
* Remove an alternate buddy list manager. | ||||
* | ||||
* @param manager The buddy list manager to remove. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void finch_blist_uninstall_manager(const FinchBlistManager *manager); | ||||
/** | ||||
* Find a buddy list manager. | ||||
* | ||||
* @param id The identifier for the desired buddy list manager. | ||||
* | ||||
* @return The manager with the requested identifier, if available. @c NUL | ||||
L otherwise. | ||||
* @since 2.4.0 | ||||
*/ | ||||
FinchBlistManager * finch_blist_manager_find(const char *id); | ||||
/** | ||||
* Request the active buddy list manager to add a node. | ||||
* | ||||
* @param node The node to add | ||||
* @since 2.4.0 | ||||
*/ | ||||
void finch_blist_manager_add_node(PurpleBlistNode *node); | ||||
/*@}*/ | /*@}*/ | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 62 lines changed or added | |||
gntcolors.h | gntcolors.h | |||
---|---|---|---|---|
skipping to change at line 89 | skipping to change at line 89 | |||
*/ | */ | |||
void gnt_colors_parse(GKeyFile *kfile); | void gnt_colors_parse(GKeyFile *kfile); | |||
/** | /** | |||
* Parse color-pair information from a file. | * Parse color-pair information from a file. | |||
* | * | |||
* @param kfile The file containing the color-pair information. | * @param kfile The file containing the color-pair information. | |||
*/ | */ | |||
void gnt_color_pairs_parse(GKeyFile *kfile); | void gnt_color_pairs_parse(GKeyFile *kfile); | |||
/** | ||||
* Parse a string color | ||||
* | ||||
* @param kfile The string value | ||||
* | ||||
* @return A color | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
int gnt_colors_get_color(char *key); | ||||
#endif | #endif | |||
/** | /** | |||
* Return the appropriate character attribute for a specified color. | * Return the appropriate character attribute for a specified color. | |||
* If the terminal doesn't have color support, this returns A_STANDOUT | * If the terminal doesn't have color support, this returns A_STANDOUT | |||
* when deemed appropriate. | * when deemed appropriate. | |||
* | * | |||
* @param color The color code. | * @param color The color code. | |||
* | * | |||
* @return A character attribute. | * @return A character attribute. | |||
* | * | |||
* @since 2.3.0 | * @since 2.3.0 | |||
*/ | */ | |||
int gnt_color_pair(int color); | int gnt_color_pair(int color); | |||
/** | ||||
* Adds a color definition | ||||
* | ||||
* @param fg Foreground | ||||
* @param bg Background | ||||
* | ||||
* @return A color pair | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
int gnt_color_add_pair(int fg, int bg); | ||||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
gntft.h | gntft.h | |||
---|---|---|---|---|
skipping to change at line 57 | skipping to change at line 57 | |||
/** | /** | |||
* Displays the file transfer dialog given. | * Displays the file transfer dialog given. | |||
* If dialog is @c NULL, displays the default dialog, creating one if neces sary | * If dialog is @c NULL, displays the default dialog, creating one if neces sary | |||
*/ | */ | |||
void finch_xfer_dialog_show(void); | void finch_xfer_dialog_show(void); | |||
/** | /** | |||
* Hides the file transfer dialog. | * Hides the file transfer dialog. | |||
*/ | */ | |||
void finch_xfer_dialog_hide(); | void finch_xfer_dialog_hide(void); | |||
/** | /** | |||
* Adds a file transfer to the dialog. | * Adds a file transfer to the dialog. | |||
* | * | |||
* @param xfer The file transfer. | * @param xfer The file transfer. | |||
*/ | */ | |||
void finch_xfer_dialog_add_xfer(PurpleXfer *xfer); | void finch_xfer_dialog_add_xfer(PurpleXfer *xfer); | |||
/** | /** | |||
* Removes a file transfer from the dialog. | * Removes a file transfer from the dialog. | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
gntplugin.h | gntplugin.h | |||
---|---|---|---|---|
skipping to change at line 43 | skipping to change at line 43 | |||
#include <string.h> | #include <string.h> | |||
#include "finch.h" | #include "finch.h" | |||
/********************************************************************** | /********************************************************************** | |||
* @name GNT Plugins API | * @name GNT Plugins API | |||
**********************************************************************/ | **********************************************************************/ | |||
/*@{*/ | /*@{*/ | |||
typedef GntWidget* (*FinchPluginFrame) (); | typedef GntWidget* (*FinchPluginFrame) (void); | |||
/* Guess where these came from */ | /* Guess where these came from */ | |||
#define FINCH_PLUGIN_TYPE FINCH_UI | #define FINCH_PLUGIN_TYPE FINCH_UI | |||
/** | /** | |||
* Decide whether a plugin is a GNT-plugin. | * Decide whether a plugin is a GNT-plugin. | |||
*/ | */ | |||
#define PURPLE_IS_GNT_PLUGIN(plugin) \ | #define PURPLE_IS_GNT_PLUGIN(plugin) \ | |||
((plugin)->info != NULL && (plugin)->info->ui_info != NULL && \ | ((plugin)->info != NULL && (plugin)->info->ui_info != NULL && \ | |||
!strcmp((plugin)->info->ui_requirement, FINCH_PLUGIN_TYPE)) | !strcmp((plugin)->info->ui_requirement, FINCH_PLUGIN_TYPE)) | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
gntrequest.h | gntrequest.h | |||
---|---|---|---|---|
skipping to change at line 30 | skipping to change at line 30 | |||
* GNU General Public License for more details. | * GNU General Public License for more details. | |||
* | * | |||
* 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 _GNT_REQUEST_H | #ifndef _GNT_REQUEST_H | |||
#define _GNT_REQUEST_H | #define _GNT_REQUEST_H | |||
#include "request.h" | #include "request.h" | |||
#include "gnt.h" | ||||
/********************************************************************** | /********************************************************************** | |||
* @name GNT Request API | * @name GNT Request API | |||
**********************************************************************/ | **********************************************************************/ | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Get the ui-functions. | * Get the ui-functions. | |||
* | * | |||
* @return The PurpleRequestUiOps structure populated with the appropriate functions. | * @return The PurpleRequestUiOps structure populated with the appropriate functions. | |||
skipping to change at line 59 | skipping to change at line 60 | |||
* Perform necessary uninitializations. | * Perform necessary uninitializations. | |||
*/ | */ | |||
void finch_request_uninit(void); | void finch_request_uninit(void); | |||
/** | /** | |||
* Save the request fields in preferences where the id attribute of each fi eld is the | * Save the request fields in preferences where the id attribute of each fi eld is the | |||
* id of a preference. | * id of a preference. | |||
*/ | */ | |||
void finch_request_save_in_prefs(gpointer null, PurpleRequestFields *fields ); | void finch_request_save_in_prefs(gpointer null, PurpleRequestFields *fields ); | |||
/** | ||||
* Create a widget field for a request-field. | ||||
* | ||||
* @param field The request field. | ||||
* | ||||
* @return A GntWidget for the request field. | ||||
* @since 2.4.0 | ||||
*/ | ||||
GntWidget *finch_request_field_get_widget(PurpleRequestField *field); | ||||
/*@}*/ | /*@}*/ | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 10 lines changed or added | |||
gntstyle.h | gntstyle.h | |||
---|---|---|---|---|
skipping to change at line 68 | skipping to change at line 68 | |||
* will be used first, if available. Otherwise, "general" wi ll be used. | * will be used first, if available. Otherwise, "general" wi ll be used. | |||
* @param key The key | * @param key The key | |||
* | * | |||
* @return The value of the setting as a string, or @c NULL | * @return The value of the setting as a string, or @c NULL | |||
* | * | |||
* @since 2.0.0 (gnt), 2.1.0 (pidgin) | * @since 2.0.0 (gnt), 2.1.0 (pidgin) | |||
*/ | */ | |||
char *gnt_style_get_from_name(const char *group, const char *key); | char *gnt_style_get_from_name(const char *group, const char *key); | |||
/** | /** | |||
* Get the value of a preference in ~/.gntrc. | ||||
* | ||||
* @param group The name of the group in the keyfile. If @c NULL, the prg | ||||
name | ||||
* will be used first, if available. Otherwise, "general" wi | ||||
ll be used. | ||||
* @param key The key | ||||
* @param length Return location for the number of strings returned, or NU | ||||
LL | ||||
* | ||||
* @return NULL terminated string array. The array should be freed w | ||||
ith g_strfreev(). | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
char **gnt_style_get_string_list(const char *group, const char *key, gsize | ||||
*length); | ||||
/** | ||||
* Get the value of a color pair in ~/.gntrc. | ||||
* | ||||
* @param group The name of the group in the keyfile. If @c NULL, the prg | ||||
name | ||||
* will be used first, if available. Otherwise, "general" wi | ||||
ll be used. | ||||
* @param key The key | ||||
* | ||||
* @return The value of the color as an int, or 0 on error. | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
int gnt_style_get_color(char *group, char *key); | ||||
/** | ||||
* Parse a boolean preference. For example, if 'value' is "false" (ignoring case) | * Parse a boolean preference. For example, if 'value' is "false" (ignoring case) | |||
* or "0", the return value will be @c FALSE, otherwise @c TRUE. | * or "0", the return value will be @c FALSE, otherwise @c TRUE. | |||
* | * | |||
* @param value The value of the boolean setting as a string | * @param value The value of the boolean setting as a string | |||
* @return The boolean value | * @return The boolean value | |||
* | * | |||
* @since 2.0.0 (gnt), 2.1.0 (pidgin) | * @since 2.0.0 (gnt), 2.1.0 (pidgin) | |||
*/ | */ | |||
gboolean gnt_style_parse_bool(const char *value); | gboolean gnt_style_parse_bool(const char *value); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 34 lines changed or added | |||
gnttree.h | gnttree.h | |||
---|---|---|---|---|
skipping to change at line 328 | skipping to change at line 328 | |||
/** | /** | |||
* Set flags for the text in a row in the tree. | * Set flags for the text in a row in the tree. | |||
* | * | |||
* @param tree The tree | * @param tree The tree | |||
* @param key The key for the row | * @param key The key for the row | |||
* @param flags The flags to set | * @param flags The flags to set | |||
*/ | */ | |||
void gnt_tree_set_row_flags(GntTree *tree, void *key, GntTextFormatFlags fl ags); | void gnt_tree_set_row_flags(GntTree *tree, void *key, GntTextFormatFlags fl ags); | |||
/** | /** | |||
* Set color for the text in a row in the tree. | ||||
* | ||||
* @param tree The tree | ||||
* @param key The key for the row | ||||
* @param color The color | ||||
* @since 2.4.0 | ||||
*/ | ||||
void gnt_tree_set_row_color(GntTree *tree, void *key, int color); | ||||
/** | ||||
* Select a row. | * Select a row. | |||
* | * | |||
* @param tree The tree | * @param tree The tree | |||
* @param key The key of the row to select | * @param key The key of the row to select | |||
*/ | */ | |||
void gnt_tree_set_selected(GntTree *tree , void *key); | void gnt_tree_set_selected(GntTree *tree , void *key); | |||
/** | /** | |||
* Create a row to insert in the tree. | * Create a row to insert in the tree. | |||
* | * | |||
skipping to change at line 568 | skipping to change at line 578 | |||
* sent the tree itself, the key of a row, the search | * sent the tree itself, the key of a row, the search | |||
* string and the content of row in the search column. | * string and the content of row in the search column. | |||
* If the function returns @c TRUE, the row is dislayed, | * If the function returns @c TRUE, the row is dislayed, | |||
* otherwise it's not. | * otherwise it's not. | |||
* | * | |||
* @since 2.0.0 (gnt), 2.1.0 (pidgin) | * @since 2.0.0 (gnt), 2.1.0 (pidgin) | |||
*/ | */ | |||
void gnt_tree_set_search_function(GntTree *tree, | void gnt_tree_set_search_function(GntTree *tree, | |||
gboolean (*func)(GntTree *tree, gpointer key, const char *se arch, const char *current)); | gboolean (*func)(GntTree *tree, gpointer key, const char *se arch, const char *current)); | |||
/** | ||||
* Get the parent key for a row. | ||||
* | ||||
* @param tree The tree | ||||
* @param key The key for the row. | ||||
* | ||||
* @return The key of the parent row. | ||||
* @since 2.4.0 | ||||
*/ | ||||
gpointer gnt_tree_get_parent_key(GntTree *tree, gpointer key); | ||||
G_END_DECLS | G_END_DECLS | |||
#endif /* GNT_TREE_H */ | #endif /* GNT_TREE_H */ | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
gntwm.h | gntwm.h | |||
---|---|---|---|---|
skipping to change at line 76 | skipping to change at line 76 | |||
int x; | int x; | |||
int y; | int y; | |||
} GntPosition; | } GntPosition; | |||
/** | /** | |||
* An application can register actions which will show up in a 'start-menu' like popup | * An application can register actions which will show up in a 'start-menu' like popup | |||
*/ | */ | |||
typedef struct _GntAction | typedef struct _GntAction | |||
{ | { | |||
const char *label; | const char *label; | |||
void (*callback)(); | void (*callback)(void); | |||
} GntAction; | } GntAction; | |||
struct _GntWM | struct _GntWM | |||
{ | { | |||
GntBindable inherit; | GntBindable inherit; | |||
GMainLoop *loop; | GMainLoop *loop; | |||
GList *workspaces; | GList *workspaces; | |||
GList *tagged; /* tagged windows */ | GList *tagged; /* tagged windows */ | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
gtkdialogs.h | gtkdialogs.h | |||
---|---|---|---|---|
skipping to change at line 57 | skipping to change at line 57 | |||
void pidgin_dialogs_alias_buddy(PurpleBuddy *); | void pidgin_dialogs_alias_buddy(PurpleBuddy *); | |||
void pidgin_dialogs_alias_chat(PurpleChat *); | void pidgin_dialogs_alias_chat(PurpleChat *); | |||
void pidgin_dialogs_remove_buddy(PurpleBuddy *); | void pidgin_dialogs_remove_buddy(PurpleBuddy *); | |||
void pidgin_dialogs_remove_group(PurpleGroup *); | void pidgin_dialogs_remove_group(PurpleGroup *); | |||
void pidgin_dialogs_remove_chat(PurpleChat *); | void pidgin_dialogs_remove_chat(PurpleChat *); | |||
void pidgin_dialogs_remove_contact(PurpleContact *); | void pidgin_dialogs_remove_contact(PurpleContact *); | |||
void pidgin_dialogs_merge_groups(PurpleGroup *, const char *); | void pidgin_dialogs_merge_groups(PurpleGroup *, const char *); | |||
/* Everything after this should probably be moved elsewhere */ | /* Everything after this should probably be moved elsewhere */ | |||
/** | #ifndef PIDGIN_DISABLE_DEPRECATED | |||
* Our UI's identifier. | ||||
*/ | ||||
#define PIDGIN_DIALOG(x) x = gtk_window_new(GTK_WINDOW_TOPLEVEL); \ | #define PIDGIN_DIALOG(x) x = gtk_window_new(GTK_WINDOW_TOPLEVEL); \ | |||
gtk_window_set_type_hint(GTK_WINDOW(x), GDK_WINDOW_T YPE_HINT_DIALOG) | gtk_window_set_type_hint(GTK_WINDOW(x), GDK_WINDOW_T YPE_HINT_DIALOG) | |||
#endif | ||||
#define PIDGIN_WINDOW_ICONIFIED(x) (gdk_window_get_state(GTK_WIDGET(x)->win dow) & GDK_WINDOW_STATE_ICONIFIED) | #define PIDGIN_WINDOW_ICONIFIED(x) (gdk_window_get_state(GTK_WIDGET(x)->win dow) & GDK_WINDOW_STATE_ICONIFIED) | |||
#endif /* _PIDGINDIALOGS_H_ */ | #endif /* _PIDGINDIALOGS_H_ */ | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 2 lines changed or added | |||
gtkimhtml.h | gtkimhtml.h | |||
---|---|---|---|---|
skipping to change at line 228 | skipping to change at line 228 | |||
GTK_IMHTML_NO_COLOURS = 1 << 0, | GTK_IMHTML_NO_COLOURS = 1 << 0, | |||
GTK_IMHTML_NO_FONTS = 1 << 1, | GTK_IMHTML_NO_FONTS = 1 << 1, | |||
GTK_IMHTML_NO_COMMENTS = 1 << 2, /* Remove */ | GTK_IMHTML_NO_COMMENTS = 1 << 2, /* Remove */ | |||
GTK_IMHTML_NO_TITLE = 1 << 3, | GTK_IMHTML_NO_TITLE = 1 << 3, | |||
GTK_IMHTML_NO_NEWLINE = 1 << 4, | GTK_IMHTML_NO_NEWLINE = 1 << 4, | |||
GTK_IMHTML_NO_SIZES = 1 << 5, | GTK_IMHTML_NO_SIZES = 1 << 5, | |||
GTK_IMHTML_NO_SCROLL = 1 << 6, | GTK_IMHTML_NO_SCROLL = 1 << 6, | |||
GTK_IMHTML_RETURN_LOG = 1 << 7, | GTK_IMHTML_RETURN_LOG = 1 << 7, | |||
GTK_IMHTML_USE_POINTSIZE = 1 << 8, | GTK_IMHTML_USE_POINTSIZE = 1 << 8, | |||
GTK_IMHTML_NO_FORMATTING = 1 << 9, | GTK_IMHTML_NO_FORMATTING = 1 << 9, | |||
GTK_IMHTML_USE_SMOOTHSCROLLING = 1 << 10 | GTK_IMHTML_USE_SMOOTHSCROLLING = 1 << 10, | |||
GTK_IMHTML_NO_SMILEY = 1 << 11, | ||||
} GtkIMHtmlOptions; | } GtkIMHtmlOptions; | |||
enum { | enum { | |||
GTK_IMHTML_DRAG_URL = 0, | GTK_IMHTML_DRAG_URL = 0, | |||
GTK_IMHTML_DRAG_HTML, | GTK_IMHTML_DRAG_HTML, | |||
GTK_IMHTML_DRAG_UTF8_STRING, | GTK_IMHTML_DRAG_UTF8_STRING, | |||
GTK_IMHTML_DRAG_COMPOUND_TEXT, | GTK_IMHTML_DRAG_COMPOUND_TEXT, | |||
GTK_IMHTML_DRAG_STRING, | GTK_IMHTML_DRAG_STRING, | |||
GTK_IMHTML_DRAG_TEXT, | GTK_IMHTML_DRAG_TEXT, | |||
GTK_IMHTML_DRAG_NUM | GTK_IMHTML_DRAG_NUM | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
gtkutils.h | gtkutils.h | |||
---|---|---|---|---|
skipping to change at line 119 | skipping to change at line 119 | |||
* @param title The window title, or @c NULL | * @param title The window title, or @c NULL | |||
* @param border_width The window's desired border width | * @param border_width The window's desired border width | |||
* @param role A string indicating what the window is responsible f or doing, or @c NULL | * @param role A string indicating what the window is responsible f or doing, or @c NULL | |||
* @param resizable Whether the window should be resizable (@c TRUE) or not (@c FALSE) | * @param resizable Whether the window should be resizable (@c TRUE) or not (@c FALSE) | |||
* | * | |||
* @since 2.1.0 | * @since 2.1.0 | |||
*/ | */ | |||
GtkWidget *pidgin_create_window(const char *title, guint border_width, cons t char *role, gboolean resizable); | GtkWidget *pidgin_create_window(const char *title, guint border_width, cons t char *role, gboolean resizable); | |||
/** | /** | |||
* Creates a new dialog window | ||||
* | ||||
* @param title The window title, or @c NULL | ||||
* @param border_width The window's desired border width | ||||
* @param role A string indicating what the window is responsible f | ||||
or doing, or @c NULL | ||||
* @param resizable Whether the window should be resizable (@c TRUE) or | ||||
not (@c FALSE) | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_create_dialog(const char *title, guint border_width, cons | ||||
t char *role, gboolean resizable); | ||||
/** | ||||
* Retrieves the main content box (vbox) from a pidgin dialog window | ||||
* | ||||
* @param dialog The dialog window | ||||
* @param homogeneous TRUE if all children are to be given equal space all | ||||
otments. | ||||
* @param spacing the number of pixels to place by default between chi | ||||
ldren | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_dialog_get_vbox_with_properties(GtkDialog *dialog, gboole | ||||
an homogeneous, gint spacing); | ||||
/** | ||||
* Retrieves the main content box (vbox) from a pidgin dialog window | ||||
* | ||||
* @param dialog The dialog window | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_dialog_get_vbox(GtkDialog *dialog); | ||||
/** | ||||
* Add a button to a dialog created by #pidgin_create_dialog. | ||||
* | ||||
* @param dialog The dialog window | ||||
* @param label The stock-id or the label for the button | ||||
* @param callback The callback function for the button | ||||
* @param callbackdata The user data for the callback function | ||||
* | ||||
* @return The created button. | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_dialog_add_button(GtkDialog *dialog, const char *label, | ||||
GCallback callback, gpointer callbackdata); | ||||
/** | ||||
* Retrieves the action area (button box) from a pidgin dialog window | ||||
* | ||||
* @param dialog The dialog window | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_dialog_get_action_area(GtkDialog *dialog); | ||||
/** | ||||
* Toggles the sensitivity of a widget. | * Toggles the sensitivity of a widget. | |||
* | * | |||
* @param widget @c NULL. Used for signal handlers. | * @param widget @c NULL. Used for signal handlers. | |||
* @param to_toggle The widget to toggle. | * @param to_toggle The widget to toggle. | |||
*/ | */ | |||
void pidgin_toggle_sensitive(GtkWidget *widget, GtkWidget *to_toggle); | void pidgin_toggle_sensitive(GtkWidget *widget, GtkWidget *to_toggle); | |||
/** | /** | |||
* Checks if text has been entered into a GtkTextEntry widget. If | * Checks if text has been entered into a GtkTextEntry widget. If | |||
* so, the GTK_RESPONSE_OK on the given dialog is set to TRUE. | * so, the GTK_RESPONSE_OK on the given dialog is set to TRUE. | |||
skipping to change at line 317 | skipping to change at line 372 | |||
* The default filter function for screenname autocomplete. | * The default filter function for screenname autocomplete. | |||
* | * | |||
* @param completion_entry The completion entry to filter. | * @param completion_entry The completion entry to filter. | |||
* @param all_accounts If this is @c FALSE, only the autocompletion entrie s | * @param all_accounts If this is @c FALSE, only the autocompletion entrie s | |||
* which belong to an online account will be filter ed. | * which belong to an online account will be filter ed. | |||
* @return Returns @c TRUE if the autocompletion entry is filtered. | * @return Returns @c TRUE if the autocompletion entry is filtered. | |||
*/ | */ | |||
gboolean pidgin_screenname_autocomplete_default_filter(const PidginBuddyCom pletionEntry *completion_entry, gpointer all_accounts); | gboolean pidgin_screenname_autocomplete_default_filter(const PidginBuddyCom pletionEntry *completion_entry, gpointer all_accounts); | |||
/** | /** | |||
* @deprecated | ||||
* Add autocompletion of screenames to an entry. | * Add autocompletion of screenames to an entry. | |||
* The usage of this function is deprecated. For new code, use the equivale | * | |||
nt: | * @deprecated | |||
* pidgin_setup_screenname_autocomplete_with_filter(entry, optmenu, pidgin_ | * For new code, use the equivalent: | |||
screenname_autocomplete_default_filter, GINT_TO_POINTER(all)) | * #pidgin_setup_screenname_autocomplete_with_filter(@a entry, @a optmenu | |||
, | ||||
* #pidgin_screenname_autocomplete_default_filter, <tt>GINT_TO_POINTER(@a | ||||
* all)</tt>) | ||||
* | * | |||
* @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 pidgin_account_option_ | * @param optmenu A menu for accounts, returned by | |||
menu_new(). | * pidgin_account_option_menu_new(). If @a optmenu is not | |||
* If @a optmenu is not @c NULL, it'll be updated when a s | @c | |||
creenname is chosen | * NULL, it'll be updated when a screenname is chosen from | |||
* from the autocomplete list. | the | |||
* autocomplete list. | ||||
* @param all Whether to include screennames from disconnected accoun ts. | * @param all Whether to include screennames from disconnected accoun ts. | |||
*/ | */ | |||
void pidgin_setup_screenname_autocomplete(GtkWidget *entry, GtkWidget *optm enu, gboolean all); | void pidgin_setup_screenname_autocomplete(GtkWidget *entry, GtkWidget *optm enu, gboolean all); | |||
/** | /** | |||
* Check if the given path is a directory or not. If it is, then modify | * Check if the given path is a directory or not. If it is, then modify | |||
* the given GtkFileSelection dialog so that it displays the given path. | * the given GtkFileSelection dialog so that it displays the given path. | |||
* If the given path is not a directory, then do nothing. | * If the given path is not a directory, then do nothing. | |||
* | * | |||
* @param path The path entered in the file selection window by the user . | * @param path The path entered in the file selection window by the user . | |||
skipping to change at line 449 | skipping to change at line 508 | |||
* @param push_in This is an output parameter? | * @param push_in This is an output parameter? | |||
* @param data Not used by this particular position function. | * @param data Not used by this particular position function. | |||
* | * | |||
* @since 2.1.0 | * @since 2.1.0 | |||
*/ | */ | |||
void pidgin_menu_position_func_helper(GtkMenu *menu, gint *x, gint *y, | void pidgin_menu_position_func_helper(GtkMenu *menu, gint *x, gint *y, | |||
gboolean *push_in, gpointer data); | gboolean *push_in, gpointer data); | |||
/** | /** | |||
* A valid GtkMenuPositionFunc. This is used to determine where | * A valid GtkMenuPositionFunc. This is used to determine where | |||
* to draw context menu's when the menu is activated with the | * to draw context menus when the menu is activated with the | |||
* keyboard (shift+F10). If the menu is activated with the mouse, | * keyboard (shift+F10). If the menu is activated with the mouse, | |||
* then you should just use GTK's built-in position function, | * then you should just use GTK's built-in position function, | |||
* because it does a better job of positioning the menu. | * because it does a better job of positioning the menu. | |||
* | * | |||
* @param menu The menu we are positioning. | * @param menu The menu we are positioning. | |||
* @param x Address of the gint representing the horizontal position | * @param x Address of the gint representing the horizontal position | |||
* where the menu shall be drawn. This is an output parameter. | * where the menu shall be drawn. This is an output parameter. | |||
* @param y Address of the gint representing the vertical position | * @param y Address of the gint representing the vertical position | |||
* where the menu shall be drawn. This is an output parameter. | * where the menu shall be drawn. This is an output parameter. | |||
* @param push_in This is an output parameter? | * @param push_in This is an output parameter? | |||
skipping to change at line 722 | skipping to change at line 781 | |||
/** | /** | |||
* Set the text in the entry of the simple text GtkComboBoxEntry equivalent | * Set the text in the entry of the simple text GtkComboBoxEntry equivalent | |||
* | * | |||
* @param widget The simple text GtkComboBoxEntry equivalent widget | * @param widget The simple text GtkComboBoxEntry equivalent widget | |||
* @param text The text to set | * @param text The text to set | |||
* | * | |||
* @since 2.2.0 | * @since 2.2.0 | |||
*/ | */ | |||
void pidgin_text_combo_box_entry_set_text(GtkWidget *widget, const char *te xt); | void pidgin_text_combo_box_entry_set_text(GtkWidget *widget, const char *te xt); | |||
/** | ||||
* Automatically make a window transient to a suitable parent window. | ||||
* | ||||
* @param window The window to make transient. | ||||
* | ||||
* @return Whether the window was made transient or not. | ||||
* @since 2.4.0 | ||||
*/ | ||||
gboolean pidgin_auto_parent_window(GtkWidget *window); | ||||
/** | ||||
* Add a labelled widget to a GtkVBox | ||||
* | ||||
* @param vbox The GtkVBox to add the widget to. | ||||
* @param widget_label The label to give the widget, can be @c NULL. | ||||
* @param sg The GtkSizeGroup to add the label to, can be @c NULL | ||||
. | ||||
* @param widget The GtkWidget to add. | ||||
* @param expand Whether to expand the widget horizontally. | ||||
* @param p_label Place to store a pointer to the GtkLabel, or @c NULL | ||||
if you don't care. | ||||
* | ||||
* @return A GtkHBox already added to the GtkVBox containing the GtkLabel | ||||
and the GtkWidget. | ||||
* @since 2.4.0 | ||||
*/ | ||||
GtkWidget *pidgin_add_widget_to_vbox(GtkBox *vbox, const char *widget_label | ||||
, GtkSizeGroup *sg, GtkWidget *widget, gboolean expand, GtkWidget **p_label | ||||
); | ||||
#endif /* _PIDGINUTILS_H_ */ | #endif /* _PIDGINUTILS_H_ */ | |||
End of changes. 6 change blocks. | ||||
11 lines changed or deleted | 105 lines changed or added | |||
prpl.h | prpl.h | |||
---|---|---|---|---|
skipping to change at line 101 | skipping to change at line 101 | |||
int max; | int max; | |||
gboolean secret; | gboolean secret; | |||
}; | }; | |||
struct _PurpleAttentionType | struct _PurpleAttentionType | |||
{ | { | |||
const char *name; /**< Shown in GUI elements */ | const char *name; /**< Shown in GUI elements */ | |||
const char *incoming_description; /**< Shown when sent */ | const char *incoming_description; /**< Shown when sent */ | |||
const char *outgoing_description; /**< Shown when receied */ | const char *outgoing_description; /**< Shown when receied */ | |||
const char *icon_name; /**< Icon to display (optional) * / | const char *icon_name; /**< Icon to display (optional) * / | |||
const char *unlocalized_name; /**< Unlocalized name for UIs nee ding it */ | ||||
/* Reserved fields for future purposes */ | /* Reserved fields for future purposes */ | |||
gpointer _reserved1; | ||||
gpointer _reserved2; | gpointer _reserved2; | |||
gpointer _reserved3; | gpointer _reserved3; | |||
gpointer _reserved4; | gpointer _reserved4; | |||
}; | }; | |||
/** | /** | |||
* Protocol options | * Protocol options | |||
* | * | |||
* These should all be stuff that some plugins can do and others can't. | * These should all be stuff that some plugins can do and others can't. | |||
*/ | */ | |||
skipping to change at line 294 | skipping to change at line 294 | |||
void (*set_permit_deny)(PurpleConnection *); | void (*set_permit_deny)(PurpleConnection *); | |||
void (*join_chat)(PurpleConnection *, GHashTable *components); | void (*join_chat)(PurpleConnection *, GHashTable *components); | |||
void (*reject_chat)(PurpleConnection *, GHashTable *components); | void (*reject_chat)(PurpleConnection *, GHashTable *components); | |||
char *(*get_chat_name)(GHashTable *components); | char *(*get_chat_name)(GHashTable *components); | |||
void (*chat_invite)(PurpleConnection *, int id, | void (*chat_invite)(PurpleConnection *, int id, | |||
const char *message, const c har *who); | const char *message, const c har *who); | |||
void (*chat_leave)(PurpleConnection *, int id); | void (*chat_leave)(PurpleConnection *, int id); | |||
void (*chat_whisper)(PurpleConnection *, int id, | void (*chat_whisper)(PurpleConnection *, int id, | |||
const char *who, const char *message); | const char *who, const char *message); | |||
int (*chat_send)(PurpleConnection *, int id, const char *message, P urpleMessageFlags flags); | int (*chat_send)(PurpleConnection *, int id, const char *message, P urpleMessageFlags flags); | |||
/** If implemented, this will be called regularly for this prpl's | ||||
* active connections. You'd want to do this if you need to repeat | ||||
edly | ||||
* send some kind of keepalive packet to the server to avoid being | ||||
* disconnected. ("Regularly" is defined by | ||||
* <code>KEEPALIVE_INTERVAL</code> in <tt>libpurple/connection.c</t | ||||
t>.) | ||||
*/ | ||||
void (*keepalive)(PurpleConnection *); | void (*keepalive)(PurpleConnection *); | |||
/** new user registration */ | /** new user registration */ | |||
void (*register_user)(PurpleAccount *); | void (*register_user)(PurpleAccount *); | |||
/** | /** | |||
* @deprecated Use #PurplePluginProtocolInfo.get_info instead. | * @deprecated Use #PurplePluginProtocolInfo.get_info instead. | |||
*/ | */ | |||
void (*get_cb_info)(PurpleConnection *, int, const char *who); | void (*get_cb_info)(PurpleConnection *, int, const char *who); | |||
/** | /** | |||
skipping to change at line 407 | skipping to change at line 414 | |||
((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) | ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) | |||
#define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \ | #define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \ | |||
((PurplePluginProtocolInfo *)(plugin)->info->extra_info) | ((PurplePluginProtocolInfo *)(plugin)->info->extra_info) | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Attention Type API * | ||||
/ | ||||
/************************************************************************** | ||||
/ | ||||
/*@{*/ | ||||
/** | ||||
* Creates a new #PurpleAttentionType object and sets its mandatory paramet | ||||
ers. | ||||
* | ||||
* @param ulname A non-localized string that can be used by UIs in need of | ||||
such | ||||
* non-localized strings. This should be the same as @a name | ||||
, | ||||
* without localization. | ||||
* @param name A localized string that the UI may display for the event. Th | ||||
is | ||||
* should be the same string as @a ulname, with localization. | ||||
* @param inc_desc A localized description shown when the event is received | ||||
. | ||||
* @param out_desc A localized description shown when the event is sent. | ||||
* @return A pointer to the new object. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurpleAttentionType *purple_attention_type_new(const char *ulname, const ch | ||||
ar *name, | ||||
const char * | ||||
inc_desc, const char *out_desc); | ||||
/** | ||||
* Sets the displayed name of the attention-demanding event. | ||||
* | ||||
* @param type The attention type. | ||||
* @param name The localized name that will be displayed by UIs. This shoul | ||||
d be | ||||
* the same string given as the unlocalized name, but with | ||||
* localization. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_attention_type_set_name(PurpleAttentionType *type, const char * | ||||
name); | ||||
/** | ||||
* Sets the description of the attention-demanding event shown in conversa | ||||
tions | ||||
* when the event is received. | ||||
* | ||||
* @param type The attention type. | ||||
* @param desc The localized description for incoming events. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_attention_type_set_incoming_desc(PurpleAttentionType *type, con | ||||
st char *desc); | ||||
/** | ||||
* Sets the description of the attention-demanding event shown in conversat | ||||
ions | ||||
* when the event is sent. | ||||
* | ||||
* @param type The attention type. | ||||
* @param desc The localized description for outgoing events. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_attention_type_set_outgoing_desc(PurpleAttentionType *type, con | ||||
st char *desc); | ||||
/** | ||||
* Sets the name of the icon to display for the attention event; this is op | ||||
tional. | ||||
* | ||||
* @param type The attention type. | ||||
* @param name The icon's name. | ||||
* @note Icons are optional for attention events. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_attention_type_set_icon_name(PurpleAttentionType *type, const c | ||||
har *name); | ||||
/** | ||||
* Sets the unlocalized name of the attention event; some UIs may need this | ||||
, | ||||
* thus it is required. | ||||
* | ||||
* @param type The attention type. | ||||
* @param ulname The unlocalized name. This should be the same string give | ||||
n as | ||||
* the localized name, but without localization. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_attention_type_set_unlocalized_name(PurpleAttentionType *type, | ||||
const char *ulname); | ||||
/** | ||||
* Get the attention type's name as displayed by the UI. | ||||
* | ||||
* @param type The attention type. | ||||
* @return The name. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char *purple_attention_type_get_name(const PurpleAttentionType *type) | ||||
; | ||||
/** | ||||
* Get the attention type's description shown when the event is received. | ||||
* | ||||
* @param type The attention type. | ||||
* @return The description. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char *purple_attention_type_get_incoming_desc(const PurpleAttentionTy | ||||
pe *type); | ||||
/** | ||||
* Get the attention type's description shown when the event is sent. | ||||
* | ||||
* @param type The attention type. | ||||
* @return The description. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char *purple_attention_type_get_outgoing_desc(const PurpleAttentionTy | ||||
pe *type); | ||||
/** | ||||
* Get the attention type's icon name. | ||||
* | ||||
* @param type The attention type. | ||||
* @return The icon name or @c NULL if unset/empty. | ||||
* @note Icons are optional for attention events. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char *purple_attention_type_get_icon_name(const PurpleAttentionType * | ||||
type); | ||||
/** | ||||
* Get the attention type's unlocalized name; this is useful for some UIs. | ||||
* | ||||
* @param type The attention type | ||||
* @return The unlocalized name. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char *purple_attention_type_get_unlocalized_name(const PurpleAttentio | ||||
nType *type); | ||||
/*@}*/ | ||||
/************************************************************************** | ||||
/ | ||||
/** @name Protocol Plugin API * / | /** @name Protocol Plugin API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Notifies Purple that an account's idle state and time have changed. | * Notifies Purple that an account's idle state and time have changed. | |||
* | * | |||
* This is meant to be called from protocol plugins. | * This is meant to be called from protocol plugins. | |||
* | * | |||
* @param account The account. | * @param account The account. | |||
End of changes. 4 change blocks. | ||||
1 lines changed or deleted | 157 lines changed or added | |||
purple.h | purple.h | |||
---|---|---|---|---|
/** | /** | |||
* @file purple.h Header files and defines | * @file purple.h Header files and defines | |||
* This file contains all the necessary preprocessor directives to include | * This file contains all the necessary preprocessor directives to include | |||
* libpurple's headers and other preprocessor directives required for plugi ns | * libpurple's headers and other preprocessor directives required for plugi ns | |||
* or UIs to build. Inlcuding this file eliminates the need to directly | * or UIs to build. Including this file eliminates the need to directly | |||
* include any other libpurple files. | * include any other libpurple files. | |||
* | * | |||
* @ingroup core libpurple | * @ingroup core libpurple | |||
* @since 2.3.0 | ||||
*/ | */ | |||
/* purple | /* purple | |||
* | * | |||
* Purple is the legal property of its developers, whose names are too nume rous | * Purple is the legal property of its developers, whose names are too nume rous | |||
* to list here. Please refer to the COPYRIGHT file distributed with this | * to list here. Please refer to the COPYRIGHT file distributed with this | |||
* source distribution. | * source distribution. | |||
* | * | |||
* This program is free software; you can redistribute it and/or modify | * This program is free software; you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | * it under the terms of the GNU General Public License as published by | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
request.h | request.h | |||
---|---|---|---|---|
skipping to change at line 186 | skipping to change at line 186 | |||
void *ui_data; | void *ui_data; | |||
} PurpleRequestField; | } PurpleRequestField; | |||
/** | /** | |||
* Request UI operations. | * Request UI operations. | |||
*/ | */ | |||
typedef struct | typedef struct | |||
{ | { | |||
/** @see purple_request_input(). */ | ||||
void *(*request_input)(const char *title, const char *primary, | void *(*request_input)(const char *title, const char *primary, | |||
const char *secondary, co | const char *secondary, const char *default_va | |||
nst char *default_value, | lue, | |||
gboolean multiline, gbool | gboolean multiline, gboolean masked, gchar *h | |||
ean masked, gchar *hint, | int, | |||
const char *ok_text, GCal | const char *ok_text, GCallback ok_cb, | |||
lback ok_cb, | const char *cancel_text, GCallback cancel_cb, | |||
const char *cancel_text, | PurpleAccount *account, const char *who, | |||
GCallback cancel_cb, | PurpleConversation *conv, void *user_data); | |||
PurpleAccount *account, c | ||||
onst char *who, PurpleConversation *conv, | /** @see purple_request_choice_varg(). */ | |||
void *user_data); | ||||
void *(*request_choice)(const char *title, const char *primary, | void *(*request_choice)(const char *title, const char *primary, | |||
const char *secondar | const char *secondary, int default_value, | |||
y, int default_value, | const char *ok_text, GCallback ok_cb, | |||
const char *ok_text, | const char *cancel_text, GCallback cancel_cb | |||
GCallback ok_cb, | , | |||
const char *cancel_t | PurpleAccount *account, const char *who, | |||
ext, GCallback cancel_cb, | PurpleConversation *conv, void *user_data, | |||
PurpleAccount *accou | va_list choices); | |||
nt, const char *who, PurpleConversation *conv, | ||||
void *user_data, va_ | /** @see purple_request_action_varg(). */ | |||
list choices); | ||||
void *(*request_action)(const char *title, const char *primary, | void *(*request_action)(const char *title, const char *primary, | |||
const char *secondar | const char *secondary, int default_action, | |||
y, int default_action, | PurpleAccount *account, const char *who, | |||
PurpleAccount *accou | PurpleConversation *conv, void *user_data, | |||
nt, const char *who, PurpleConversation *conv, | size_t action_count, va_list actions); | |||
void *user_data, siz | ||||
e_t action_count, | /** @see purple_request_fields(). */ | |||
va_list actions); | ||||
void *(*request_fields)(const char *title, const char *primary, | void *(*request_fields)(const char *title, const char *primary, | |||
const char *secondar | const char *secondary, PurpleRequestFields * | |||
y, PurpleRequestFields *fields, | fields, | |||
const char *ok_text, | const char *ok_text, GCallback ok_cb, | |||
GCallback ok_cb, | const char *cancel_text, GCallback cancel_cb | |||
const char *cancel_t | , | |||
ext, GCallback cancel_cb, | PurpleAccount *account, const char *who, | |||
PurpleAccount *accou | PurpleConversation *conv, void *user_data); | |||
nt, const char *who, PurpleConversation *conv, | ||||
void *user_data); | /** @see purple_request_file(). */ | |||
void *(*request_file)(const char *title, const char *filename, | void *(*request_file)(const char *title, const char *filename, | |||
gboolean savedialog, GCall | gboolean savedialog, GCallback ok_cb, | |||
back ok_cb, GCallback cancel_cb, | GCallback cancel_cb, PurpleAccount *account, | |||
PurpleAccount *account, co | const char *who, PurpleConversation *conv, | |||
nst char *who, PurpleConversation *conv, | void *user_data); | |||
void *user_data); | ||||
void (*close_request)(PurpleRequestType type, void *ui_handle); | void (*close_request)(PurpleRequestType type, void *ui_handle); | |||
/** @see purple_request_folder(). */ | ||||
void *(*request_folder)(const char *title, const char *dirname, | void *(*request_folder)(const char *title, const char *dirname, | |||
GCallback ok_cb, GCa | GCallback ok_cb, GCallback cancel_cb, | |||
llback cancel_cb, | PurpleAccount *account, const char *who, | |||
PurpleAccount *accou | PurpleConversation *conv, void *user_data); | |||
nt, const char *who, PurpleConversation *conv, | ||||
void *user_data); | ||||
void (*_purple_reserved1)(void); | void (*_purple_reserved1)(void); | |||
void (*_purple_reserved2)(void); | void (*_purple_reserved2)(void); | |||
void (*_purple_reserved3)(void); | void (*_purple_reserved3)(void); | |||
void (*_purple_reserved4)(void); | void (*_purple_reserved4)(void); | |||
} PurpleRequestUiOps; | } PurpleRequestUiOps; | |||
typedef void (*PurpleRequestInputCb)(void *, const char *); | typedef void (*PurpleRequestInputCb)(void *, const char *); | |||
typedef void (*PurpleRequestActionCb)(void *, int); | typedef void (*PurpleRequestActionCb)(void *, int); | |||
typedef void (*PurpleRequestChoiceCb)(void *, int); | typedef void (*PurpleRequestChoiceCb)(void *, int); | |||
skipping to change at line 1162 | skipping to change at line 1176 | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Request API * / | /** @name Request API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Prompts the user for text input. | * Prompts the user for text input. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some | |||
* things this is EXTREMELY important. The | * things this is <em>extremely</em> important. The | |||
* handle is used to programmatically close | * handle is used to programmatically close the reques | |||
* the request dialog when it is no longer | t | |||
* needed. For PRPLs this is often a pointer | * dialog when it is no longer needed. For PRPLs this | |||
* to the PurpleConnection instance. For plugins | * is often a pointer to the #PurpleConnection | |||
* this should be a similar, unique memory | * instance. For plugins this should be a similar, | |||
* location. This value is important because | * unique memory location. This value is important | |||
* it allows a request to be closed, say, when | * because it allows a request to be closed with | |||
* you sign offline. If the request is NOT | * purple_request_close_with_handle() when, for | |||
* closed it is VERY likely to cause a crash | * example, you sign offline. If the request is | |||
* whenever the callback handler functions are | * <em>not</em> closed it is <strong>very</strong> | |||
* triggered. | * likely to cause a crash whenever the callback | |||
* @param title The title of the message. | * handler functions are triggered. | |||
* @param primary The main point of the message. | * @param title The title of the message, or @c NULL if it should h | |||
* @param secondary The secondary information. | ave | |||
* no title. | ||||
* @param primary The main point of the message, or @c NULL if you're | ||||
* feeling enigmatic. | ||||
* @param secondary Secondary information, or @c NULL if there is none. | ||||
* @param default_value The default value. | * @param default_value The default value. | |||
* @param multiline TRUE if the inputted text can span multiple lines. | * @param multiline @c TRUE if the inputted text can span multiple line | |||
* @param masked TRUE if the inputted text should be masked in some | s. | |||
way. | * @param masked @c TRUE if the inputted text should be masked in so | |||
me | ||||
* way (such as by displaying characters as stars). T | ||||
his | ||||
* might be because the input is some kind of password | ||||
. | ||||
* @param hint Optionally suggest how the input box should appear. | * @param hint Optionally suggest how the input box should appear. | |||
* Use "html," for example, to allow the user to enter | * Use "html", for example, to allow the user to enter | |||
* HTML. | * HTML. | |||
* @param ok_text The text for the @c OK button. | * @param ok_text The text for the @c OK button, which may not be @c | |||
* @param ok_cb The callback for the @c OK button. | NULL. | |||
* @param cancel_text The text for the @c Cancel button. | * @param ok_cb The callback for the @c OK button, which may not be | |||
* @param cancel_cb The callback for the @c Cancel button. | @c | |||
* @param account The PurpleAccount associated with this reque | * NULL. | |||
st, or NULL if none is | * @param cancel_text The text for the @c Cancel button, which may not be | |||
* @param who The username of the buddy assocaited with th | @c | |||
is request, or NULL if none is | * NULL. | |||
* @param conv The PurpleConversation associated with this | * @param cancel_cb The callback for the @c Cancel button, which may be | |||
request, or NULL if none is | * @c NULL. | |||
* @param account The #PurpleAccount associated with this request, or | ||||
@c | ||||
* NULL if none is. | ||||
* @param who The username of the buddy associated with this requ | ||||
est, | ||||
* or @c NULL if none is. | ||||
* @param conv The #PurpleConversation associated with this reques | ||||
t, or | ||||
* @c NULL if none is. | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_input(void *handle, const char *title, | void *purple_request_input(void *handle, const char *title, const char *pri | |||
const char *primary, const | mary, | |||
char *secondary, | const char *secondary, const char *default_value, gboolean multiline | |||
const char *default_value, | , | |||
gboolean multiline, gboolea | gboolean masked, gchar *hint, | |||
n masked, gchar *hint, | const char *ok_text, GCallback ok_cb, | |||
const char *ok_text, GCallb | const char *cancel_text, GCallback cancel_cb, | |||
ack ok_cb, | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
const char *cancel_text, GC | void *user_data); | |||
allback cancel_cb, | ||||
PurpleAccount *account, con | ||||
st char *who, PurpleConversation *conv, | ||||
void *user_data); | ||||
/** | /** | |||
* Prompts the user for multiple-choice input. | * Prompts the user for multiple-choice input. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things t | |||
* things this is EXTREMELY important. See | his | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments | |||
* @param title The title of the message. | on | |||
* @param primary The main point of the message. | * purple_request_input(). | |||
* @param secondary The secondary information. | * @param title The title of the message, or @c NULL if it should h | |||
* @param default_value The default value. | ave | |||
* @param ok_text The text for the @c OK button. | * no title. | |||
* @param ok_cb The callback for the @c OK button. | * @param primary The main point of the message, or @c NULL if you're | |||
* @param cancel_text The text for the @c Cancel button. | * feeling enigmatic. | |||
* @param cancel_cb The callback for the @c Cancel button. | * @param secondary Secondary information, or @c NULL if there is none. | |||
* @param account The PurpleAccount associated with this reque | * @param default_value The default choice; this should be one of the value | |||
st, or NULL if none is | s | |||
* @param who The username of the buddy assocaited with th | * listed in the varargs. | |||
is request, or NULL if none is | * @param ok_text The text for the @c OK button, which may not be @c | |||
* @param conv The PurpleConversation associated with this | NULL. | |||
request, or NULL if none is | * @param ok_cb The callback for the @c OK button, which may not be | |||
@c | ||||
* NULL. | ||||
* @param cancel_text The text for the @c Cancel button, which may not be | ||||
@c | ||||
* NULL. | ||||
* @param cancel_cb The callback for the @c Cancel button, or @c NULL t | ||||
o | ||||
* do nothing. | ||||
* @param account The #PurpleAccount associated with this request, or | ||||
@c | ||||
* NULL if none is. | ||||
* @param who The username of the buddy associated with this requ | ||||
est, | ||||
* or @c NULL if none is. | ||||
* @param conv The #PurpleConversation associated with this reques | ||||
t, or | ||||
* @c NULL if none is. | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* @param ... The choices. This argument list should be | * @param ... The choices, which should be pairs of <tt>char *</t | |||
* terminated with a NULL parameter. | t> | |||
* descriptions and <tt>int</tt> values, terminated wi | ||||
th a | ||||
* @c NULL parameter. | ||||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_choice(void *handle, const char *title, | void *purple_request_choice(void *handle, const char *title, const char *pr | |||
const char *primary, const | imary, | |||
char *secondary, | const char *secondary, int default_value, | |||
int default_value, | const char *ok_text, GCallback ok_cb, | |||
const char *ok_text, GCall | const char *cancel_text, GCallback cancel_cb, | |||
back ok_cb, | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
const char *cancel_text, G | void *user_data, ...) G_GNUC_NULL_TERMINATED; | |||
Callback cancel_cb, | ||||
PurpleAccount *account, co | ||||
nst char *who, PurpleConversation *conv, | ||||
void *user_data, ...) G_GN | ||||
UC_NULL_TERMINATED; | ||||
/** | /** | |||
* Prompts the user for multiple-choice input. | * Prompts the user for multiple-choice input. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things t | |||
* things this is EXTREMELY important. See | his | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments | |||
* @param title The title of the message. | on | |||
* @param primary The main point of the message. | * purple_request_input(). | |||
* @param secondary The secondary information. | * @param title The title of the message, or @c NULL if it should h | |||
* @param default_value The default value. | ave | |||
* @param ok_text The text for the @c OK button. | * no title. | |||
* @param ok_cb The callback for the @c OK button. | * @param primary The main point of the message, or @c NULL if you're | |||
* @param cancel_text The text for the @c Cancel button. | * feeling enigmatic. | |||
* @param cancel_cb The callback for the @c Cancel button. | * @param secondary Secondary information, or @c NULL if there is none. | |||
* @param account The PurpleAccount associated with this reque | * @param default_value The default choice; this should be one of the value | |||
st, or NULL if none is | s | |||
* @param who The username of the buddy assocaited with th | * listed in the varargs. | |||
is request, or NULL if none is | * @param ok_text The text for the @c OK button, which may not be @c | |||
* @param conv The PurpleConversation associated with this | NULL. | |||
request, or NULL if none is | * @param ok_cb The callback for the @c OK button, which may not be | |||
@c | ||||
* NULL. | ||||
* @param cancel_text The text for the @c Cancel button, which may not be | ||||
@c | ||||
* NULL. | ||||
* @param cancel_cb The callback for the @c Cancel button, or @c NULL t | ||||
o do | ||||
* nothing. | ||||
* @param account The #PurpleAccount associated with this request, or | ||||
@c | ||||
* NULL if none is | ||||
* @param who The username of the buddy associated with this requ | ||||
est, | ||||
* or @c NULL if none is | ||||
* @param conv The #PurpleConversation associated with this reques | ||||
t, or | ||||
* @c NULL if none is | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* @param choices The choices. This argument list should be | * @param choices The choices, which should be pairs of <tt>char *</t | |||
* terminated with a @c NULL parameter. | t> | |||
* descriptions and <tt>int</tt> values, terminated wi | ||||
th a | ||||
* @c NULL parameter. | ||||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_choice_varg(void *handle, const char *title, | void *purple_request_choice_varg(void *handle, const char *title, | |||
const char *prima | const char *primary, const char *secondary, int default_value, | |||
ry, const char *secondary, | const char *ok_text, GCallback ok_cb, | |||
int default_value | const char *cancel_text, GCallback cancel_cb, | |||
, | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
const char *ok_te | void *user_data, va_list choices); | |||
xt, GCallback ok_cb, | ||||
const char *cance | ||||
l_text, GCallback cancel_cb, | ||||
PurpleAccount *ac | ||||
count, const char *who, PurpleConversation *conv, | ||||
void *user_data, | ||||
va_list choices); | ||||
/** | /** | |||
* Prompts the user for an action. | * Prompts the user for an action. | |||
* | * | |||
* This is often represented as a dialog with a button for each action. | * This is often represented as a dialog with a button for each action. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things | |||
* things this is EXTREMELY important. See | this | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments | |||
* @param title The title of the message. | on | |||
* @param primary The main point of the message. | * purple_request_input(). | |||
* @param secondary The secondary information. | * @param title The title of the message, or @c NULL if it should | |||
* @param default_action The default value. | have | |||
* @param account The PurpleAccount associated with this requ | * no title. | |||
est, or NULL if none is | * @param primary The main point of the message, or @c NULL if you'r | |||
* @param who The username of the buddy assocaited with t | e | |||
his request, or NULL if none is | * feeling enigmatic. | |||
* @param conv The PurpleConversation associated with this | * @param secondary Secondary information, or @c NULL if there is none | |||
request, or NULL if none is | . | |||
* @param default_action The default action, zero-indexed; if the third act | ||||
ion | ||||
* supplied should be the default, supply <tt>2</tt>. | ||||
* The should be the action that users are most likel | ||||
y | ||||
* to select. | ||||
* @param account The #PurpleAccount associated with this request, o | ||||
r @c | ||||
* NULL if none is. | ||||
* @param who The username of the buddy associated with this req | ||||
uest, | ||||
* or @c NULL if none is. | ||||
* @param conv The #PurpleConversation associated with this reque | ||||
st, or | ||||
* @c NULL if none is. | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* @param action_count The number of actions. | * @param action_count The number of actions. | |||
* @param ... A list of actions. These are pairs of | * @param ... A list of actions. These are pairs of | |||
* arguments. The first of each pair is the | * arguments. The first of each pair is the | |||
* string that appears on the button. It should | * <tt>char *</tt> that appears on the button. It sh ould | |||
* have an underscore before the letter you want | * have an underscore before the letter you want | |||
* to use as the accelerator key for the button. | * to use as the accelerator key for the button. | |||
* The second of each pair is the callback | * The second of each pair is the <tt>GCallback</tt> | |||
* function to use when the button is clicked. | * function to use when the button is clicked. | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_action(void *handle, const char *title, | void *purple_request_action(void *handle, const char *title, const char *pr | |||
const char *primary, const | imary, | |||
char *secondary, | const char *secondary, int default_action, PurpleAccount *account, | |||
int default_action, | const char *who, PurpleConversation *conv, void *user_data, | |||
PurpleAccount *account, co | size_t action_count, ...); | |||
nst char *who, PurpleConversation *conv, | ||||
void *user_data, size_t ac | ||||
tion_count, ...); | ||||
/** | /** | |||
* Prompts the user for an action. | * Prompts the user for an action. | |||
* | * | |||
* This is often represented as a dialog with a button for each action. | * This is often represented as a dialog with a button for each action. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things | |||
* things this is EXTREMELY important. See | this | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments | |||
* @param title The title of the message. | on | |||
* @param primary The main point of the message. | * purple_request_input(). | |||
* @param secondary The secondary information. | * @param title The title of the message, or @c NULL if it should | |||
* @param default_action The default value. | have | |||
* @param account The PurpleAccount associated with this requ | * no title. | |||
est, or NULL if none is | * @param primary The main point of the message, or @c NULL if you'r | |||
* @param who The username of the buddy assocaited with t | e | |||
his request, or NULL if none is | * feeling enigmatic. | |||
* @param conv The PurpleConversation associated with this | * @param secondary Secondary information, or @c NULL if there is none | |||
request, or NULL if none is | . | |||
* @param default_action The default action, zero-indexed; if the third act | ||||
ion | ||||
* supplied should be the default, supply <tt>2</tt>. | ||||
* The should be the action that users are most likel | ||||
y | ||||
* to select. | ||||
* @param account The #PurpleAccount associated with this request, o | ||||
r @c | ||||
* NULL if none is. | ||||
* @param who The username of the buddy associated with this req | ||||
uest, | ||||
* or @c NULL if none is. | ||||
* @param conv The #PurpleConversation associated with this reque | ||||
st, or | ||||
* @c NULL if none is. | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* @param action_count The number of actions. | * @param action_count The number of actions. | |||
* @param actions A list of actions and callbacks. | * @param actions A list of actions. These are pairs of | |||
* arguments. The first of each pair is the | ||||
* <tt>char *</tt> that appears on the button. It sh | ||||
ould | ||||
* have an underscore before the letter you want | ||||
* to use as the accelerator key for the button. | ||||
* The second of each pair is the <tt>GCallback</tt> | ||||
* function to use when the button is clicked. | ||||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_action_varg(void *handle, const char *title, | void *purple_request_action_varg(void *handle, const char *title, | |||
const char *prima | const char *primary, const char *secondary, int default_action, | |||
ry, const char *secondary, | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
int default_actio | void *user_data, size_t action_count, va_list actions); | |||
n, | ||||
PurpleAccount *ac | ||||
count, const char *who, PurpleConversation *conv, | ||||
void *user_data, | ||||
size_t action_count, | ||||
va_list actions); | ||||
/** | /** | |||
* Displays groups of fields for the user to fill in. | * Displays groups of fields for the user to fill in. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things thi | |||
* things this is EXTREMELY important. See | s | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments on | |||
* @param title The title of the message. | * purple_request_input(). | |||
* @param primary The main point of the message. | * @param title The title of the message, or @c NULL if it should hav | |||
* @param secondary The secondary information. | e | |||
* no title. | ||||
* @param primary The main point of the message, or @c NULL if you're | ||||
* feeling enigmatic. | ||||
* @param secondary Secondary information, or @c NULL if there is none. | ||||
* @param fields The list of fields. | * @param fields The list of fields. | |||
* @param ok_text The text for the @c OK button. | * @param ok_text The text for the @c OK button, which may not be @c NU | |||
* @param ok_cb The callback for the @c OK button. | LL. | |||
* @param cancel_text The text for the @c Cancel button. | * @param ok_cb The callback for the @c OK button, which may not be @ | |||
* @param cancel_cb The callback for the @c Cancel button. | c | |||
* @param account The PurpleAccount associated with this request, or | * NULL. | |||
NULL if none is | * @param cancel_text The text for the @c Cancel button, which may not be @ | |||
* @param who The username of the buddy associated with this req | c | |||
uest, or NULL if none is | * NULL. | |||
* @param conv The PurpleConversation associated with this reques | * @param cancel_cb The callback for the @c Cancel button, which may be | |||
t, or NULL if none is | * @c NULL. | |||
* @param account The #PurpleAccount associated with this request, or @ | ||||
c | ||||
* NULL if none is | ||||
* @param who The username of the buddy associated with this reques | ||||
t, | ||||
* or @c NULL if none is | ||||
* @param conv The #PurpleConversation associated with this request, | ||||
or | ||||
* @c NULL if none is | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_fields(void *handle, const char *title, | void *purple_request_fields(void *handle, const char *title, const char *pr | |||
const char *primary, const | imary, | |||
char *secondary, | const char *secondary, PurpleRequestFields *fields, | |||
PurpleRequestFields *field | const char *ok_text, GCallback ok_cb, | |||
s, | const char *cancel_text, GCallback cancel_cb, | |||
const char *ok_text, GCall | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
back ok_cb, | void *user_data); | |||
const char *cancel_text, G | ||||
Callback cancel_cb, | ||||
PurpleAccount *account, co | ||||
nst char *who, PurpleConversation *conv, | ||||
void *user_data); | ||||
/** | /** | |||
* Closes a request. | * Closes a request. | |||
* | * | |||
* @param type The request type. | * @param type The request type. | |||
* @param uihandle The request UI handle. | * @param uihandle The request UI handle. | |||
*/ | */ | |||
void purple_request_close(PurpleRequestType type, void *uihandle); | void purple_request_close(PurpleRequestType type, void *uihandle); | |||
/** | /** | |||
* Closes all requests registered with the specified handle. | * Closes all requests registered with the specified handle. | |||
* | * | |||
* @param handle The handle. | * @param handle The handle, as supplied as the @a handle parameter to one | |||
of the | ||||
* <tt>purple_request_*</tt> functions. | ||||
* | ||||
* @see purple_request_input(). | ||||
*/ | */ | |||
void purple_request_close_with_handle(void *handle); | void purple_request_close_with_handle(void *handle); | |||
/** | /** | |||
* A wrapper for purple_request_action() that uses @c Yes and @c No buttons . | * A wrapper for purple_request_action() that uses @c Yes and @c No buttons . | |||
*/ | */ | |||
#define purple_request_yes_no(handle, title, primary, secondary, \ | #define purple_request_yes_no(handle, title, primary, secondary, \ | |||
default_action, acco unt, who, conv, \ | default_action, acco unt, who, conv, \ | |||
user_data, yes_cb, n o_cb) \ | user_data, yes_cb, n o_cb) \ | |||
purple_request_action((handle), (title), (primary), (secondary), \ | purple_request_action((handle), (title), (primary), (secondary), \ | |||
skipping to change at line 1404 | skipping to change at line 1474 | |||
default_a ction, account, who, conv, \ | default_a ction, account, who, conv, \ | |||
user_data , accept_cb, cancel_cb) \ | user_data , accept_cb, cancel_cb) \ | |||
purple_request_action((handle), (title), (primary), (secondary), \ | purple_request_action((handle), (title), (primary), (secondary), \ | |||
(default_action), account, w ho, conv, (user_data), 2, \ | (default_action), account, w ho, conv, (user_data), 2, \ | |||
_("_Accept"), (accept_cb), _ ("_Cancel"), (cancel_cb)) | _("_Accept"), (accept_cb), _ ("_Cancel"), (cancel_cb)) | |||
/** | /** | |||
* Displays a file selector request dialog. Returns the selected filename to | * Displays a file selector request dialog. Returns the selected filename to | |||
* the callback. Can be used for either opening a file or saving a file. | * the callback. Can be used for either opening a file or saving a file. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things thi | |||
* things this is EXTREMELY important. See | s | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments on | |||
* @param title The title for the dialog (may be @c NULL) | * purple_request_input(). | |||
* @param title The title of the message, or @c NULL if it should hav | ||||
e | ||||
* no title. | ||||
* @param filename The default filename (may be @c NULL) | * @param filename The default filename (may be @c NULL) | |||
* @param savedialog True if this dialog is being used to save a file. | * @param savedialog True if this dialog is being used to save a file. | |||
* False if it is being used to open a file. | * False if it is being used to open a file. | |||
* @param ok_cb The callback for the @c OK button. | * @param ok_cb The callback for the @c OK button. | |||
* @param cancel_cb The callback for the @c Cancel button. | * @param cancel_cb The callback for the @c Cancel button, which may be @ | |||
* @param account The PurpleAccount associated with this request, or | c NULL. | |||
NULL if none is | * @param account The #PurpleAccount associated with this request, or @ | |||
* @param who The username of the buddy assocaited with this req | c | |||
uest, or NULL if none is | * NULL if none is | |||
* @param conv The PurpleConversation associated with this reques | * @param who The username of the buddy associated with this reques | |||
t, or NULL if none is | t, | |||
* or @c NULL if none is | ||||
* @param conv The #PurpleConversation associated with this request, | ||||
or | ||||
* @c NULL if none is | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_file(void *handle, const char *title, const char *file name, | void *purple_request_file(void *handle, const char *title, const char *file name, | |||
gboolean savedialog, | gboolean savedialog, GCallback ok_cb, GCallback cancel_cb, | |||
GCallback ok_cb, GCallback c | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
ancel_cb, | void *user_data); | |||
PurpleAccount *account, cons | ||||
t char *who, PurpleConversation *conv, | ||||
void *user_data); | ||||
/** | /** | |||
* Displays a folder select dialog. Returns the selected filename to | * Displays a folder select dialog. Returns the selected filename to | |||
* the callback. | * the callback. | |||
* | * | |||
* @param handle The plugin or connection handle. For some | * @param handle The plugin or connection handle. For some things thi | |||
* things this is EXTREMELY important. See | s | |||
* the comments on purple_request_input. | * is <em>extremely</em> important. See the comments on | |||
* @param title The title for the dialog (may be @c NULL) | * purple_request_input(). | |||
* @param title The title of the message, or @c NULL if it should hav | ||||
e | ||||
* no title. | ||||
* @param dirname The default directory name (may be @c NULL) | * @param dirname The default directory name (may be @c NULL) | |||
* @param ok_cb The callback for the @c OK button. | * @param ok_cb The callback for the @c OK button. | |||
* @param cancel_cb The callback for the @c Cancel button. | * @param cancel_cb The callback for the @c Cancel button, which may be @ | |||
* @param account The PurpleAccount associated with this request, or | c NULL. | |||
NULL if none is | * @param account The #PurpleAccount associated with this request, or @ | |||
* @param who The username of the buddy assocaited with this req | c | |||
uest, or NULL if none is | * NULL if none is | |||
* @param conv The PurpleConversation associated with this reques | * @param who The username of the buddy associated with this reques | |||
t, or NULL if none is | t, | |||
* or @c NULL if none is | ||||
* @param conv The #PurpleConversation associated with this request, | ||||
or | ||||
* @c NULL if none is | ||||
* @param user_data The data to pass to the callback. | * @param user_data The data to pass to the callback. | |||
* | * | |||
* @return A UI-specific handle. | * @return A UI-specific handle. | |||
*/ | */ | |||
void *purple_request_folder(void *handle, const char *title, const char *di rname, | void *purple_request_folder(void *handle, const char *title, const char *di rname, | |||
GCallback ok_cb, GCallback c | GCallback ok_cb, GCallback cancel_cb, | |||
ancel_cb, | PurpleAccount *account, const char *who, PurpleConversation *conv, | |||
PurpleAccount *account, cons | void *user_data); | |||
t char *who, PurpleConversation *conv, | ||||
void *user_data); | ||||
/*@}*/ | /*@}*/ | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name UI Registration Functions * / | /** @name UI Registration Functions * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Sets the UI operations structure to be used when displaying a | * Sets the UI operations structure to be used when displaying a | |||
End of changes. 36 change blocks. | ||||
259 lines changed or deleted | 348 lines changed or added | |||
roomlist.h | roomlist.h | |||
---|---|---|---|---|
skipping to change at line 239 | skipping to change at line 239 | |||
* On some protocols, the rooms in the category | * On some protocols, the rooms in the category | |||
* won't be fetched until this is called. | * won't be fetched until this is called. | |||
* | * | |||
* @param list The room list. | * @param list The room list. | |||
* @param category The category that was expanded. The expression | * @param category The category that was expanded. The expression | |||
* (category->type & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY) | * (category->type & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY) | |||
* must be true. | * must be true. | |||
*/ | */ | |||
void purple_roomlist_expand_category(PurpleRoomlist *list, PurpleRoomlistRo om *category); | void purple_roomlist_expand_category(PurpleRoomlist *list, PurpleRoomlistRo om *category); | |||
/** | ||||
* Get the list of fields for a roomlist. | ||||
* | ||||
* @param roomlist The roomlist, which must not be @c NULL. | ||||
* @constreturn A list of fields | ||||
* @since 2.4.0 | ||||
*/ | ||||
GList * purple_roomlist_get_fields(PurpleRoomlist *roomlist); | ||||
/*@}*/ | /*@}*/ | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Room API * / | /** @name Room API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Creates a new room, to be added to the list. | * Creates a new room, to be added to the list. | |||
* | * | |||
skipping to change at line 275 | skipping to change at line 284 | |||
void purple_roomlist_room_add_field(PurpleRoomlist *list, PurpleRoomlistRoo m *room, gconstpointer field); | void purple_roomlist_room_add_field(PurpleRoomlist *list, PurpleRoomlistRoo m *room, gconstpointer field); | |||
/** | /** | |||
* Join a room, given a PurpleRoomlistRoom and it's associated PurpleRoomli st. | * Join a room, given a PurpleRoomlistRoom and it's associated PurpleRoomli st. | |||
* | * | |||
* @param list The room list the room belongs to. | * @param list The room list the room belongs to. | |||
* @param room The room to join. | * @param room The room to join. | |||
*/ | */ | |||
void purple_roomlist_room_join(PurpleRoomlist *list, PurpleRoomlistRoom *ro om); | void purple_roomlist_room_join(PurpleRoomlist *list, PurpleRoomlistRoom *ro om); | |||
/** | ||||
* Get the type of a room. | ||||
* @param room The room, which must not be @c NULL. | ||||
* @return The type of the room. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurpleRoomlistRoomType purple_roomlist_room_get_type(PurpleRoomlistRoom *ro | ||||
om); | ||||
/** | ||||
* Get the name of a room. | ||||
* @param room The room, which must not be @c NULL. | ||||
* @return The name of the room. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char * purple_roomlist_room_get_name(PurpleRoomlistRoom *room); | ||||
/** | ||||
* Get the parent of a room. | ||||
* @param room The room, which must not be @c NULL. | ||||
* @return The parent of the room, which can be @c NULL. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurpleRoomlistRoom * purple_roomlist_room_get_parent(PurpleRoomlistRoom *ro | ||||
om); | ||||
/** | ||||
* Get the list of fields for a room. | ||||
* | ||||
* @param room The room, which must not be @c NULL. | ||||
* @constreturn A list of fields | ||||
* @since 2.4.0 | ||||
*/ | ||||
GList * purple_roomlist_room_get_fields(PurpleRoomlistRoom *room); | ||||
/*@}*/ | /*@}*/ | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Room Field API * / | /** @name Room Field API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Creates a new field. | * Creates a new field. | |||
* | * | |||
skipping to change at line 296 | skipping to change at line 338 | |||
* @param label The i18n'ed, user displayable name. | * @param label The i18n'ed, user displayable name. | |||
* @param name The internal name of the field. | * @param name The internal name of the field. | |||
* @param hidden Hide the field. | * @param hidden Hide the field. | |||
* | * | |||
* @return A new PurpleRoomlistField, ready to be added to a GList and pass ed to | * @return A new PurpleRoomlistField, ready to be added to a GList and pass ed to | |||
* purple_roomlist_set_fields(). | * purple_roomlist_set_fields(). | |||
*/ | */ | |||
PurpleRoomlistField *purple_roomlist_field_new(PurpleRoomlistFieldType type , | PurpleRoomlistField *purple_roomlist_field_new(PurpleRoomlistFieldType type , | |||
const gchar *label, const gchar *name, | const gchar *label, const gchar *name, | |||
gboolean hidden); | gboolean hidden); | |||
/** | ||||
* Get the type of a field. | ||||
* | ||||
* @param field A PurpleRoomlistField, which must not be @c NULL. | ||||
* | ||||
* @return The type of the field. | ||||
* @since 2.4.0 | ||||
*/ | ||||
PurpleRoomlistFieldType purple_roomlist_field_get_type(PurpleRoomlistField | ||||
*field); | ||||
/** | ||||
* Get the label of a field. | ||||
* | ||||
* @param field A PurpleRoomlistField, which must not be @c NULL. | ||||
* | ||||
* @return The label of the field. | ||||
* @since 2.4.0 | ||||
*/ | ||||
const char * purple_roomlist_field_get_label(PurpleRoomlistField *field); | ||||
/** | ||||
* Check whether a roomlist-field is hidden. | ||||
* @param field A PurpleRoomlistField, which must not be @c NULL. | ||||
* | ||||
* @return @c TRUE if the field is hidden, @c FALSE otherwise. | ||||
* @since 2.4.0 | ||||
*/ | ||||
gboolean purple_roomlist_field_get_hidden(PurpleRoomlistField *field); | ||||
/*@}*/ | /*@}*/ | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name UI Registration Functions * / | /** @name UI Registration Functions * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Sets the UI operations structure to be used in all purple room lists. | * Sets the UI operations structure to be used in all purple room lists. | |||
* | * | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 75 lines changed or added | |||
server.h | server.h | |||
---|---|---|---|---|
skipping to change at line 102 | skipping to change at line 102 | |||
void serv_rem_deny(PurpleConnection *, const char *); | void serv_rem_deny(PurpleConnection *, const char *); | |||
void serv_set_permit_deny(PurpleConnection *); | void serv_set_permit_deny(PurpleConnection *); | |||
void serv_chat_invite(PurpleConnection *, int, const char *, const char *); | void serv_chat_invite(PurpleConnection *, int, const char *, const char *); | |||
void serv_chat_leave(PurpleConnection *, int); | void serv_chat_leave(PurpleConnection *, int); | |||
void serv_chat_whisper(PurpleConnection *, int, const char *, const char *) ; | void serv_chat_whisper(PurpleConnection *, int, const char *, const char *) ; | |||
int serv_chat_send(PurpleConnection *, int, const char *, PurpleMessageFla gs flags); | int serv_chat_send(PurpleConnection *, int, const char *, PurpleMessageFla gs flags); | |||
void serv_alias_buddy(PurpleBuddy *); | void serv_alias_buddy(PurpleBuddy *); | |||
void serv_got_alias(PurpleConnection *gc, const char *who, const char *alia s); | void serv_got_alias(PurpleConnection *gc, const char *who, const char *alia s); | |||
/** | /** | |||
* A protocol plugin should call this when it retrieves a private alias fro | ||||
m | ||||
* the server. Private aliases are the aliases the user sets, while public | ||||
* aliases are the aliases or display names that buddies set for themselves | ||||
. | ||||
* | ||||
* @param gc The connection on which the alias was received. | ||||
* @param who The screen name of the buddy whose alias was received. | ||||
* @param alias The alias that was received. | ||||
*/ | ||||
void purple_serv_got_private_alias(PurpleConnection *gc, const char *who, c | ||||
onst char *alias); | ||||
/** | ||||
* Receive a typing message from a remote user. Either PURPLE_TYPING | * Receive a typing message from a remote user. Either PURPLE_TYPING | |||
* or PURPLE_TYPED. If the user has stopped typing then use | * or PURPLE_TYPED. If the user has stopped typing then use | |||
* serv_got_typing_stopped instead. | * serv_got_typing_stopped instead. | |||
* | * | |||
* TODO: Could probably move this into the conversation API. | * TODO: Could probably move this into the conversation API. | |||
* | * | |||
* @param gc The connection on which the typing message was received. | * @param gc The connection on which the typing message was received. | |||
* @param name The name of the remote user. | * @param name The name of the remote user. | |||
* @param timeout If this is a number greater than 0, then | * @param timeout If this is a number greater than 0, then | |||
* Purple will wait this number of seconds and then | * Purple will wait this number of seconds and then | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 14 lines changed or added | |||
signals.h | signals.h | |||
---|---|---|---|---|
skipping to change at line 47 | skipping to change at line 47 | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Signal API * / | /** @name Signal API * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** The priority of a signal connected using purple_signal_connect(). | |||
* Signal Connect Priorities | * | |||
* @see purple_signal_connect_priority() | ||||
*/ | */ | |||
#define PURPLE_SIGNAL_PRIORITY_DEFAULT 0 | #define PURPLE_SIGNAL_PRIORITY_DEFAULT 0 | |||
/** The largest signal priority; signals with this priority will be called | ||||
* <em>last</em>. (This is highest as in numerical value, not as in order | ||||
of | ||||
* importance.) | ||||
* | ||||
* @see purple_signal_connect_priority(). | ||||
*/ | ||||
#define PURPLE_SIGNAL_PRIORITY_HIGHEST 9999 | #define PURPLE_SIGNAL_PRIORITY_HIGHEST 9999 | |||
/** The smallest signal priority; signals with this priority will be called | ||||
* <em>first</em>. (This is lowest as in numerical value, not as in order | ||||
of | ||||
* importance.) | ||||
* | ||||
* @see purple_signal_connect_priority(). | ||||
*/ | ||||
#define PURPLE_SIGNAL_PRIORITY_LOWEST -9999 | #define PURPLE_SIGNAL_PRIORITY_LOWEST -9999 | |||
/** | /** | |||
* Registers a signal in an instance. | * Registers a signal in an instance. | |||
* | * | |||
* @param instance The instance to register the signal for. | * @param instance The instance to register the signal for. | |||
* @param signal The signal name. | * @param signal The signal name. | |||
* @param marshal The marshal function. | * @param marshal The marshal function. | |||
* @param ret_value The return value type, or NULL for no return value. | * @param ret_value The return value type, or NULL for no return value. | |||
* @param num_values The number of values to be passed to the callbacks. | * @param num_values The number of values to be passed to the callbacks. | |||
skipping to change at line 112 | skipping to change at line 125 | |||
* Connects a signal handler to a signal for a particular object. | * Connects a signal handler to a signal for a particular object. | |||
* | * | |||
* Take care not to register a handler function twice. Purple will | * Take care not to register a handler function twice. Purple will | |||
* not correct any mistakes for you in this area. | * not correct any mistakes for you in this area. | |||
* | * | |||
* @param instance The instance to connect to. | * @param instance The instance to connect to. | |||
* @param signal The name of the signal to connect. | * @param signal The name of the signal to connect. | |||
* @param handle The handle of the receiver. | * @param handle The handle of the receiver. | |||
* @param func The callback function. | * @param func The callback function. | |||
* @param data The data to pass to the callback function. | * @param data The data to pass to the callback function. | |||
* @param priority The priority with which the handler should be called. Si | * @param priority The priority with which the handler should be called. Si | |||
gnal handlers are called | gnal | |||
* in order from PURPLE_SIGNAL_PRIORITY_LOWEST to PURPLE_SI | * handlers are called in ascending numerical order of @a | |||
GNAL_PRIORITY_HIGHEST. | * priority from #PURPLE_SIGNAL_PRIORITY_LOWEST to | |||
* #PURPLE_SIGNAL_PRIORITY_HIGHEST. | ||||
* | * | |||
* @return The signal handler ID. | * @return The signal handler ID. | |||
* | * | |||
* @see purple_signal_disconnect() | * @see purple_signal_disconnect() | |||
*/ | */ | |||
gulong purple_signal_connect_priority(void *instance, const char *signal, | gulong purple_signal_connect_priority(void *instance, const char *signal, | |||
void *handle, PurpleCallback func, void * data, int priority); | void *handle, PurpleCallback func, void *data, int priority); | |||
/** | /** | |||
* Connects a signal handler to a signal for a particular object. | * Connects a signal handler to a signal for a particular object. | |||
* (priority defaults to 0) | * (Its priority defaults to 0, aka #PURPLE_SIGNAL_PRIORITY_DEFAULT.) | |||
* | * | |||
* Take care not to register a handler function twice. Purple will | * Take care not to register a handler function twice. Purple will | |||
* not correct any mistakes for you in this area. | * not correct any mistakes for you in this area. | |||
* | * | |||
* @param instance The instance to connect to. | * @param instance The instance to connect to. | |||
* @param signal The name of the signal to connect. | * @param signal The name of the signal to connect. | |||
* @param handle The handle of the receiver. | * @param handle The handle of the receiver. | |||
* @param func The callback function. | * @param func The callback function. | |||
* @param data The data to pass to the callback function. | * @param data The data to pass to the callback function. | |||
* | * | |||
* @return The signal handler ID. | * @return The signal handler ID. | |||
* | * | |||
* @see purple_signal_disconnect() | * @see purple_signal_disconnect() | |||
*/ | */ | |||
gulong purple_signal_connect(void *instance, const char *signal, | gulong purple_signal_connect(void *instance, const char *signal, | |||
void *handle, PurpleCallb ack func, void *data); | void *handle, PurpleCallback func, void *data); | |||
/** | /** | |||
* Connects a signal handler to a signal for a particular object. | * Connects a signal handler to a signal for a particular object. | |||
* | * | |||
* The signal handler will take a va_args of arguments, instead of | * The signal handler will take a va_args of arguments, instead of | |||
* individual arguments. | * individual arguments. | |||
* | * | |||
* Take care not to register a handler function twice. Purple will | * Take care not to register a handler function twice. Purple will | |||
* not correct any mistakes for you in this area. | * not correct any mistakes for you in this area. | |||
* | * | |||
* @param instance The instance to connect to. | * @param instance The instance to connect to. | |||
* @param signal The name of the signal to connect. | * @param signal The name of the signal to connect. | |||
* @param handle The handle of the receiver. | * @param handle The handle of the receiver. | |||
* @param func The callback function. | * @param func The callback function. | |||
* @param data The data to pass to the callback function. | * @param data The data to pass to the callback function. | |||
* @param priority The order in which the signal should be added to the lis | * @param priority The priority with which the handler should be called. Si | |||
t | gnal | |||
* handlers are called in ascending numerical order of @a | ||||
* priority from #PURPLE_SIGNAL_PRIORITY_LOWEST to | ||||
* #PURPLE_SIGNAL_PRIORITY_HIGHEST. | ||||
* | * | |||
* @return The signal handler ID. | * @return The signal handler ID. | |||
* | * | |||
* @see purple_signal_disconnect() | * @see purple_signal_disconnect() | |||
*/ | */ | |||
gulong purple_signal_connect_priority_vargs(void *instance, const char *sig nal, | gulong purple_signal_connect_priority_vargs(void *instance, const char *sig nal, | |||
void *handle, PurpleCallback func, v oid *data, int priority); | void *handle, PurpleCallback func, void *data, int priority); | |||
/** | /** | |||
* Connects a signal handler to a signal for a particular object. | * Connects a signal handler to a signal for a particular object. | |||
* (priority defaults to 0) | * (Its priority defaults to 0, aka #PURPLE_SIGNAL_PRIORITY_DEFAULT.) | |||
* | ||||
* The signal handler will take a va_args of arguments, instead of | * The signal handler will take a va_args of arguments, instead of | |||
* individual arguments. | * individual arguments. | |||
* | * | |||
* Take care not to register a handler function twice. Purple will | * Take care not to register a handler function twice. Purple will | |||
* not correct any mistakes for you in this area. | * not correct any mistakes for you in this area. | |||
* | * | |||
* @param instance The instance to connect to. | * @param instance The instance to connect to. | |||
* @param signal The name of the signal to connect. | * @param signal The name of the signal to connect. | |||
* @param handle The handle of the receiver. | * @param handle The handle of the receiver. | |||
* @param func The callback function. | * @param func The callback function. | |||
* @param data The data to pass to the callback function. | * @param data The data to pass to the callback function. | |||
* | * | |||
* @return The signal handler ID. | * @return The signal handler ID. | |||
* | * | |||
* @see purple_signal_disconnect() | * @see purple_signal_disconnect() | |||
*/ | */ | |||
gulong purple_signal_connect_vargs(void *instance, const char *signal, | gulong purple_signal_connect_vargs(void *instance, const char *signal, | |||
void *handl e, PurpleCallback func, void *data); | void *handle, PurpleCallback func, void *data); | |||
/** | /** | |||
* Disconnects a signal handler from a signal on an object. | * Disconnects a signal handler from a signal on an object. | |||
* | * | |||
* @param instance The instance to disconnect from. | * @param instance The instance to disconnect from. | |||
* @param signal The name of the signal to disconnect. | * @param signal The name of the signal to disconnect. | |||
* @param handle The handle of the receiver. | * @param handle The handle of the receiver. | |||
* @param func The registered function to disconnect. | * @param func The registered function to disconnect. | |||
* | * | |||
* @see purple_signal_connect() | * @see purple_signal_connect() | |||
End of changes. 11 change blocks. | ||||
14 lines changed or deleted | 34 lines changed or added | |||
util.h | util.h | |||
---|---|---|---|---|
skipping to change at line 88 | skipping to change at line 88 | |||
PurpleMenuAction *purple_menu_action_new(const char *label, PurpleCallback callback, | PurpleMenuAction *purple_menu_action_new(const char *label, PurpleCallback callback, | |||
gpointer data, GList *children); | gpointer data, GList *children); | |||
/** | /** | |||
* Frees a PurpleMenuAction | * Frees a PurpleMenuAction | |||
* | * | |||
* @param act The PurpleMenuAction to free. | * @param act The PurpleMenuAction to free. | |||
*/ | */ | |||
void purple_menu_action_free(PurpleMenuAction *act); | void purple_menu_action_free(PurpleMenuAction *act); | |||
/** | ||||
* Set the appropriate presence values for the currently playing song. | ||||
* | ||||
* @param title The title of the song, @c NULL to unset the value. | ||||
* @param artist The artist of the song, can be @c NULL. | ||||
* @param album The album of the song, can be @c NULL. | ||||
* @since 2.4.0 | ||||
*/ | ||||
void purple_util_set_current_song(const char *title, const char *artist, | ||||
const char *album); | ||||
/** | ||||
* Format song information. | ||||
* | ||||
* @param title The title of the song, @c NULL to unset the value. | ||||
* @param artist The artist of the song, can be @c NULL. | ||||
* @param album The album of the song, can be @c NULL. | ||||
* @param unused Currently unused, must be @c NULL. | ||||
* | ||||
* @return The formatted string. The caller must #g_free the returned str | ||||
ing. | ||||
* @since 2.4.0 | ||||
*/ | ||||
char * purple_util_format_song_info(const char *title, const char *artist, | ||||
const char *album, gpointer unused); | ||||
/************************************************************************** / | /************************************************************************** / | |||
/** @name Utility Subsystem * / | /** @name Utility Subsystem * / | |||
/************************************************************************** / | /************************************************************************** / | |||
/*@{*/ | /*@{*/ | |||
/** | /** | |||
* Initializes the utility subsystem. | * Initializes the utility subsystem. | |||
* | * | |||
* @since 2.3.0 | * @since 2.3.0 | |||
*/ | */ | |||
skipping to change at line 1048 | skipping to change at line 1073 | |||
/** | /** | |||
* Checks if the given email address is syntactically valid. | * Checks if the given email address is syntactically valid. | |||
* | * | |||
* @param address The email address to validate. | * @param address The email address to validate. | |||
* | * | |||
* @return True if the email address is syntactically correct. | * @return True if the email address is syntactically correct. | |||
*/ | */ | |||
gboolean purple_email_is_valid(const char *address); | gboolean purple_email_is_valid(const char *address); | |||
/** | /** | |||
* Checks if the given IP address is a syntactically valid IPv4 address. | ||||
* | ||||
* @param address The IP address to validate. | ||||
* | ||||
* @return True if the IP address is syntactically correct. | ||||
*/ | ||||
gboolean purple_ip_address_is_valid(const char *ip); | ||||
/** | ||||
* This function extracts a list of URIs from the a "text/uri-list" | * This function extracts a list of URIs from the a "text/uri-list" | |||
* string. It was "borrowed" from gnome_uri_list_extract_uris | * string. It was "borrowed" from gnome_uri_list_extract_uris | |||
* | * | |||
* @param uri_list An uri-list in the standard format. | * @param uri_list An uri-list in the standard format. | |||
* | * | |||
* @return A GList containing strings allocated with g_malloc | * @return A GList containing strings allocated with g_malloc | |||
* that have been splitted from uri-list. | * that have been splitted from uri-list. | |||
*/ | */ | |||
GList *purple_uri_list_extract_uris(const gchar *uri_list); | GList *purple_uri_list_extract_uris(const gchar *uri_list); | |||
skipping to change at line 1102 | skipping to change at line 1136 | |||
* invalid characters with a filler character (currently hardcoded to | * invalid characters with a filler character (currently hardcoded to | |||
* '?'). | * '?'). | |||
* | * | |||
* @param str The source string. | * @param str The source string. | |||
* | * | |||
* @return A valid UTF-8 string. | * @return A valid UTF-8 string. | |||
*/ | */ | |||
gchar *purple_utf8_salvage(const char *str); | gchar *purple_utf8_salvage(const char *str); | |||
/** | /** | |||
* Return the UTF-8 version of gai_strerror(). It calls gai_strerror() | ||||
* then converts the result to UTF-8. This function is analogous to | ||||
* g_strerror(). | ||||
* | ||||
* @param errnum The error code. | ||||
* | ||||
* @return The UTF-8 error message. | ||||
* @since 2.4.0 | ||||
*/ | ||||
G_CONST_RETURN gchar *purple_gai_strerror(gint errnum); | ||||
/** | ||||
* Compares two UTF-8 strings case-insensitively. This string is | * Compares two UTF-8 strings case-insensitively. This string is | |||
* more expensive than a simple g_utf8_collate() comparison because | * more expensive than a simple g_utf8_collate() comparison because | |||
* it calls g_utf8_casefold() on each string, which allocates new | * it calls g_utf8_casefold() on each string, which allocates new | |||
* strings. | * strings. | |||
* | * | |||
* @param a The first string. | * @param a The first string. | |||
* @param b The second string. | * @param b The second string. | |||
* | * | |||
* @return -1 if @a is less than @a b. | * @return -1 if @a is less than @a b. | |||
* 0 if @a is equal to @a b. | * 0 if @a is equal to @a b. | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 47 lines changed or added | |||
version.h | version.h | |||
---|---|---|---|---|
skipping to change at line 28 | skipping to change at line 28 | |||
* GNU General Public License for more details. | * GNU General Public License for more details. | |||
* | * | |||
* 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_ | |||
#define PURPLE_MAJOR_VERSION (2) | #define PURPLE_MAJOR_VERSION (2) | |||
#define PURPLE_MINOR_VERSION (3) | #define PURPLE_MINOR_VERSION (4) | |||
#define PURPLE_MICRO_VERSION (1) | #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 | |||
/** | /** | |||
skipping to change at line 52 | skipping to change at line 52 | |||
* | * | |||
* @param required_major: the required major version. | * @param required_major: the required major version. | |||
* @param required_minor: the required minor version. | * @param required_minor: the required minor version. | |||
* @param required_micro: the required micro version. | * @param required_micro: the required micro version. | |||
* | * | |||
* @return NULL if the versions are compatible, or a string describing | * @return NULL if the versions are compatible, or a string describing | |||
* the version mismatch if not compatible. | * the version mismatch if not compatible. | |||
*/ | */ | |||
const char *purple_version_check(guint required_major, guint required_minor , guint required_micro); | const char *purple_version_check(guint required_major, guint required_minor , guint required_micro); | |||
/** | ||||
* The major version of the running libpurple. Contrast with | ||||
* #PURPLE_MAJOR_VERSION, which expands at compile time to the major versio | ||||
n of | ||||
* libpurple being compiled against. | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
extern const guint purple_major_version; | ||||
/** | ||||
* The minor version of the running libpurple. Contrast with | ||||
* #PURPLE_MINOR_VERSION, which expands at compile time to the minor versio | ||||
n of | ||||
* libpurple being compiled against. | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
extern const guint purple_minor_version; | ||||
/** | ||||
* | ||||
* The micro version of the running libpurple. Contrast with | ||||
* #PURPLE_MICRO_VERSION, which expands at compile time to the micro versio | ||||
n of | ||||
* libpurple being compiled against. | ||||
* | ||||
* @since 2.4.0 | ||||
*/ | ||||
extern const guint purple_micro_version; | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* _PURPLE_VERSION_H_ */ | #endif /* _PURPLE_VERSION_H_ */ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 33 lines changed or added | |||