protocols/ircv3/purpleircv3commands.h

Thu, 17 Jul 2025 20:28:54 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Thu, 17 Jul 2025 20:28:54 -0500
changeset 43290
01edcfbfebaa
parent 43126
5b5a883528e0
permissions
-rw-r--r--

IRCv3: Implement the /me command

This was kind of forgotten about, but it's here now.

Testing Done:
Watched a packet dump to verify it was sent correct and asked people in #pidgin on libera if it came through correctly.

Reviewed at https://reviews.imfreedom.org/r/4070/

43097
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Purple - Internet Messaging Library
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * Purple is the legal property of its developers, whose names are too numerous
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * source distribution.
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 *
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 * This library is free software; you can redistribute it and/or modify
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * (at your option) any later version.
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 *
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 * This library is distributed in the hope that it will be useful,
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 * GNU General Public License for more details.
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 *
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 * along with this library; if not, see <https://www.gnu.org/licenses/>.
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 */
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 #if !defined(PURPLE_IRCV3_GLOBAL_HEADER_INSIDE) && \
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 !defined(PURPLE_IRCV3_COMPILATION)
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 # error "only <libpurple/protocols/ircv3.h> may be included directly"
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26 #endif
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 #ifndef PURPLE_IRCV3_COMMANDS_H
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29 #define PURPLE_IRCV3_COMMANDS_H
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 #include <glib.h>
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33 #include <purple.h>
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35 G_BEGIN_DECLS
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37 G_GNUC_INTERNAL gboolean purple_ircv3_command_query_cb(PurpleCommand *command, PurpleConversation *conversation, GStrv params, gpointer data);
43126
5b5a883528e0 IRCv3: Add the quote command to send raw messages
Gary Kramlich <grim@reaperworld.com>
parents: 43097
diff changeset
38 G_GNUC_INTERNAL gboolean purple_ircv3_command_quote_cb(PurpleCommand *command, PurpleConversation *conversation, GStrv params, gpointer data);
43290
01edcfbfebaa IRCv3: Implement the /me command
Gary Kramlich <grim@reaperworld.com>
parents: 43126
diff changeset
39 G_GNUC_INTERNAL gboolean purple_ircv3_command_action_cb(PurpleCommand *command, PurpleConversation *conversation, GStrv params, gpointer data);
43097
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 G_END_DECLS
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42
757575456cc2 IRCv3: Implement the query command
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 #endif /* PURPLE_IRCV3_COMMANDS_H */

mercurial