mark PurpleImageClass as private
[pidgin-git.git] / libpurple / protocols / oscar / aim.c
blob41be32a69fa852d4406b770d1940d0ae477e1b83
1 /* purple
3 * Purple is the legal property of its developers, whose names are too numerous
4 * to list here. Please refer to the COPYRIGHT file distributed with this
5 * source distribution.
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.
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.
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
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
23 #include "aim.h"
25 #include "core.h"
26 #include "plugins.h"
27 #include "signals.h"
29 #include "oscarcommon.h"
31 static void
32 aim_protocol_init(PurpleProtocol *protocol)
34 protocol->id = "prpl-aim";
35 protocol->name = "AIM";
37 oscar_init_account_options(protocol, FALSE);
40 static void
41 aim_protocol_class_init(PurpleProtocolClass *klass)
43 klass->list_icon = oscar_list_icon_aim;
46 static void
47 aim_protocol_client_iface_init(PurpleProtocolClientInterface *client_iface)
49 client_iface->get_max_message_size = oscar_get_max_message_size;
52 static void
53 aim_protocol_privacy_iface_init(PurpleProtocolPrivacyInterface *privacy_iface)
55 privacy_iface->add_permit = oscar_add_permit;
56 privacy_iface->rem_permit = oscar_rem_permit;
57 privacy_iface->set_permit_deny = oscar_set_aim_permdeny;
60 PURPLE_DEFINE_TYPE_EXTENDED(
61 AIMProtocol, aim_protocol, OSCAR_TYPE_PROTOCOL, 0,
63 PURPLE_IMPLEMENT_INTERFACE_STATIC(PURPLE_TYPE_PROTOCOL_CLIENT,
64 aim_protocol_client_iface_init)
66 PURPLE_IMPLEMENT_INTERFACE_STATIC(PURPLE_TYPE_PROTOCOL_PRIVACY,
67 aim_protocol_privacy_iface_init)