Mon, 05 May 2008 06:55:00 +0000
Patch from Jaywalker to let prpls add some helpful text for some account
fields. This includes the update from rekkanoryo that was reverted
earlier. References #2295.
| 15884 | 1 | /* purple |
| 15030 | 2 | * |
| 15884 | 3 | * Purple is the legal property of its developers, whose names are too numerous |
| 15030 | 4 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 5 | * source distribution. | |
| 6 | * | |
| 7 | * This program is free software; you can redistribute it and/or modify | |
| 8 | * it under the terms of the GNU General Public License as published by | |
| 9 | * the Free Software Foundation; either version 2 of the License, or | |
| 10 | * (at your option) any later version. | |
| 11 | * | |
| 12 | * This program is distributed in the hope that it will be useful, | |
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 15 | * GNU General Public License for more details. | |
| 16 | * | |
| 17 | * You should have received a copy of the GNU General Public License | |
| 18 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19050
diff
changeset
|
19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 15030 | 20 | * |
| 21 | */ | |
| 22 | ||
| 23 | /* libicq is the ICQ protocol plugin. It is linked against liboscarcommon, | |
| 24 | * which contains all the shared implementation code with libaim | |
| 25 | */ | |
| 26 | ||
| 27 | ||
| 28 | #include "oscarcommon.h" | |
| 29 | ||
| 15884 | 30 | static PurplePluginProtocolInfo prpl_info = |
| 15030 | 31 | { |
| 32 | OPT_PROTO_MAIL_CHECK | OPT_PROTO_IM_IMAGE, | |
| 33 | NULL, /* user_splits */ | |
| 34 | NULL, /* protocol_options */ | |
|
18354
0ea97a92fab5
Allow ICQ icons to be up to 52x64 pixels. Fixes #1274
Sean Egan <seanegan@pidgin.im>
parents:
16746
diff
changeset
|
35 | {"gif,jpeg,bmp,ico", 48, 48, 52, 64, 7168, |
| 15884 | 36 | PURPLE_ICON_SCALE_SEND | PURPLE_ICON_SCALE_DISPLAY}, /* icon_spec */ |
| 15030 | 37 | oscar_list_icon_icq, /* list_icon */ |
| 15524 | 38 | oscar_list_emblem, /* list_emblems */ |
| 15030 | 39 | oscar_status_text, /* status_text */ |
| 40 | oscar_tooltip_text, /* tooltip_text */ | |
| 41 | oscar_status_types, /* status_types */ | |
| 42 | oscar_blist_node_menu, /* blist_node_menu */ | |
| 43 | oscar_chat_info, /* chat_info */ | |
| 44 | oscar_chat_info_defaults, /* chat_info_defaults */ | |
| 45 | oscar_login, /* login */ | |
| 46 | oscar_close, /* close */ | |
| 47 | oscar_send_im, /* send_im */ | |
| 48 | oscar_set_info, /* set_info */ | |
| 49 | oscar_send_typing, /* send_typing */ | |
| 50 | oscar_get_info, /* get_info */ | |
| 51 | oscar_set_status, /* set_status */ | |
| 52 | oscar_set_idle, /* set_idle */ | |
| 53 | oscar_change_passwd, /* change_passwd */ | |
| 54 | oscar_add_buddy, /* add_buddy */ | |
| 55 | NULL, /* add_buddies */ | |
| 56 | oscar_remove_buddy, /* remove_buddy */ | |
| 57 | NULL, /* remove_buddies */ | |
| 58 | oscar_add_permit, /* add_permit */ | |
| 59 | oscar_add_deny, /* add_deny */ | |
| 60 | oscar_rem_permit, /* rem_permit */ | |
| 61 | oscar_rem_deny, /* rem_deny */ | |
| 62 | oscar_set_permit_deny, /* set_permit_deny */ | |
| 63 | oscar_join_chat, /* join_chat */ | |
| 64 | NULL, /* reject_chat */ | |
| 65 | oscar_get_chat_name, /* get_chat_name */ | |
| 66 | oscar_chat_invite, /* chat_invite */ | |
| 67 | oscar_chat_leave, /* chat_leave */ | |
| 68 | NULL, /* chat_whisper */ | |
| 69 | oscar_send_chat, /* chat_send */ | |
| 70 | oscar_keepalive, /* keepalive */ | |
| 71 | NULL, /* register_user */ | |
| 72 | NULL, /* get_cb_info */ | |
| 73 | NULL, /* get_cb_away */ | |
| 74 | oscar_alias_buddy, /* alias_buddy */ | |
| 75 | oscar_move_buddy, /* group_buddy */ | |
| 76 | oscar_rename_group, /* rename_group */ | |
| 77 | NULL, /* buddy_free */ | |
| 78 | oscar_convo_closed, /* convo_closed */ | |
| 79 | oscar_normalize, /* normalize */ | |
| 80 | oscar_set_icon, /* set_buddy_icon */ | |
|
19050
78ed2f8cd58d
Some changes from Matthew Goldstein and I to not automatically remove
Mark Doliner <markdoliner@pidgin.im>
parents:
18354
diff
changeset
|
81 | oscar_remove_group, /* remove_group */ |
| 15030 | 82 | NULL, /* get_cb_real_name */ |
| 83 | NULL, /* set_chat_topic */ | |
| 84 | NULL, /* find_blist_chat */ | |
| 85 | NULL, /* roomlist_get_list */ | |
| 86 | NULL, /* roomlist_cancel */ | |
| 87 | NULL, /* roomlist_expand_category */ | |
| 88 | oscar_can_receive_file, /* can_receive_file */ | |
| 89 | oscar_send_file, /* send_file */ | |
| 90 | oscar_new_xfer, /* new_xfer */ | |
| 91 | oscar_offline_message, /* offline_message */ | |
| 92 | NULL, /* whiteboard_prpl_ops */ | |
| 15185 | 93 | NULL, /* send_raw */ |
| 94 | NULL, /* roomlist_room_serialize */ | |
|
22244
221f48b173e3
Update some comments in oscar's prpl callback structs
Mark Doliner <markdoliner@pidgin.im>
parents:
20288
diff
changeset
|
95 | NULL, /* unregister_user */ |
|
221f48b173e3
Update some comments in oscar's prpl callback structs
Mark Doliner <markdoliner@pidgin.im>
parents:
20288
diff
changeset
|
96 | NULL, /* send_attention */ |
|
221f48b173e3
Update some comments in oscar's prpl callback structs
Mark Doliner <markdoliner@pidgin.im>
parents:
20288
diff
changeset
|
97 | NULL, /* get_attention_types */ |
|
16746
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
98 | |
|
23276
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22244
diff
changeset
|
99 | sizeof(PurplePluginProtocolInfo), /* struct_size */ |
|
23277
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
100 | NULL |
| 15030 | 101 | }; |
| 102 | ||
| 15884 | 103 | static PurplePluginInfo info = |
| 15030 | 104 | { |
| 15884 | 105 | PURPLE_PLUGIN_MAGIC, |
| 106 | PURPLE_MAJOR_VERSION, | |
| 107 | PURPLE_MINOR_VERSION, | |
| 108 | PURPLE_PLUGIN_PROTOCOL, /**< type */ | |
| 15030 | 109 | NULL, /**< ui_requirement */ |
| 110 | 0, /**< flags */ | |
| 111 | NULL, /**< dependencies */ | |
| 15884 | 112 | PURPLE_PRIORITY_DEFAULT, /**< priority */ |
| 15030 | 113 | |
| 114 | "prpl-icq", /**< id */ | |
| 115 | "ICQ", /**< name */ | |
|
20288
5ca925a094e2
applied changes from 03b709ec2a153e7e82719df0ba4635108bb1d3c6
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19859
diff
changeset
|
116 | DISPLAY_VERSION, /**< version */ |
| 15030 | 117 | /** summary */ |
| 118 | N_("ICQ Protocol Plugin"), | |
| 119 | /** description */ | |
| 120 | N_("ICQ Protocol Plugin"), | |
| 121 | NULL, /**< author */ | |
| 15884 | 122 | PURPLE_WEBSITE, /**< homepage */ |
| 15030 | 123 | |
| 124 | NULL, /**< load */ | |
| 125 | NULL, /**< unload */ | |
| 126 | NULL, /**< destroy */ | |
| 127 | ||
| 128 | NULL, /**< ui_info */ | |
| 129 | &prpl_info, /**< extra_info */ | |
| 130 | NULL, | |
|
16746
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
131 | oscar_actions, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
132 | |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
133 | /* padding */ |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
134 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
135 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
136 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
15884
diff
changeset
|
137 | NULL |
| 15030 | 138 | }; |
| 139 | ||
| 140 | static void | |
| 15884 | 141 | init_plugin(PurplePlugin *plugin) |
| 15030 | 142 | { |
| 15884 | 143 | PurpleAccountOption *option; |
| 15030 | 144 | |
| 15884 | 145 | oscar_init(PURPLE_PLUGIN_PROTOCOL_INFO(plugin)); |
| 15030 | 146 | |
| 15884 | 147 | option = purple_account_option_string_new(_("Encoding"), "encoding", OSCAR_DEFAULT_CUSTOM_ENCODING); |
| 15030 | 148 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); |
| 149 | } | |
| 150 | ||
| 15884 | 151 | PURPLE_INIT_PLUGIN(icq, init_plugin, info); |