libpurple/purplechanneljoindetails.h

Fri, 20 Oct 2023 01:09:45 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Fri, 20 Oct 2023 01:09:45 -0500
changeset 42375
8e61249e9b10
parent 42326
3fc3dd614b4e
child 42387
d9350cda1556
permissions
-rw-r--r--

Implement ProtocolFileTransfer

Testing Done:
Ran the unit tests under valgrind.

Bugs closed: PIDGIN-17833

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

42326
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Purple - Internet Messaging Library
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * This program is free software; you can redistribute it and/or modify
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * it under the terms of the GNU General Public License as published by
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * the Free Software Foundation; either version 2 of the License, or
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 * (at your option) any later version.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * This program is distributed in the hope that it will be useful,
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 * GNU General Public License for more details.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * along with this program; if not, see <https://www.gnu.org/licenses/>.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 #if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION)
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 # error "only <pidgin.h> may be included directly"
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 #endif
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 #ifndef PURPLE_CHANNEL_JOIN_DETAILS_H
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 #define PURPLE_CHANNEL_JOIN_DETAILS_H
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26 #include <glib.h>
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 #include <glib-object.h>
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29 G_BEGIN_DECLS
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 #define PURPLE_TYPE_CHANNEL_JOIN_DETAILS (purple_channel_join_details_get_type())
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32 G_DECLARE_FINAL_TYPE(PurpleChannelJoinDetails, purple_channel_join_details, PURPLE, CHANNEL_JOIN_DETAILS, GObject)
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35 * PurpleChannelJoinDetails:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37 * The details that are necessary for a [class@Protocol] to join a channel. A
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38 * user interface will ask a protocol for a [class@ChannelJoinDetails] and then
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39 * fill it out and pass it back to the protocol to actually join a channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 * purple_channel_join_details_new:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 * @nickname_supported: Whether or not nicknames are supported.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47 * @password_supported: Whether or not passwords are supported.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49 * Creates a new [class@ChannelJoinDetails].
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
51 * Returns: (transfer full): The new instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 PurpleChannelJoinDetails *purple_channel_join_details_new(gboolean nickname_supported, gboolean password_supported);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58 * purple_channel_join_details_get_name:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61 * Gets the name of the channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 * Returns: (nullable): The name of the channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
66 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67 const char *purple_channel_join_details_get_name(PurpleChannelJoinDetails *details);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
69 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 * purple_channel_join_details_set_name:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
71 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72 * @name: (nullable): The new name.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74 * Sets the name of the channel to @name.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
76 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
77 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
78 void purple_channel_join_details_set_name(PurpleChannelJoinDetails *details, const char *name);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
79
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
80 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
81 * purple_channel_join_details_get_nickname:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
82 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
83 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
84 * Gets the nickname of the user in the channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
85 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
86 * Returns: (nullable): The user's channel-specific nickname to use.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
87 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
88 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
89 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
90 const char *purple_channel_join_details_get_nickname(PurpleChannelJoinDetails *details);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
91
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
92 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
93 * purple_channel_join_details_set_nickname:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
94 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
95 * @nickname: (nullable): The new nickname.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
96 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
97 * Sets the channel-specific nickname for the user.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
98 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
99 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
100 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
101 void purple_channel_join_details_set_nickname(PurpleChannelJoinDetails *details, const char *nickname);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
102
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
103 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
104 * purple_channel_join_details_get_nickname_supported:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
105 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
106 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
107 * Gets whether or not channel-specific nicknames are supported.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
108 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
109 * Returns: %TRUE if channel-specific nicknames are supported otherwise %FALSE.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
110 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
111 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
112 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
113 gboolean purple_channel_join_details_get_nickname_supported(PurpleChannelJoinDetails *details);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
114
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
115 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
116 * purple_channel_join_details_get_password:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
117 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
118 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
119 * Gets the password the user specified to join this channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
120 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
121 * Returns: (nullable): The password to join this channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
122 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
123 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
124 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
125 const char *purple_channel_join_details_get_password(PurpleChannelJoinDetails *details);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
126
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
127 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
128 * purple_channel_join_details_set_password:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
129 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
130 * @password: (nullable): The new password.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
131 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
132 * Sets the password to use to join this channel.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
133 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
134 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
135 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
136 void purple_channel_join_details_set_password(PurpleChannelJoinDetails *details, const char *password);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
137
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
138 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
139 * purple_channel_join_details_get_password_supported:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
140 * @details: The instance.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
141 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
142 * Gets whether or not the protocols supports channel passwords.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
143 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
144 * Returns: %TRUE if channel passwords are supported, otherwise %FALSE.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
145 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
146 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
147 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
148 gboolean purple_channel_join_details_get_password_supported(PurpleChannelJoinDetails *details);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
149
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
150 /**
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
151 * purple_channel_join_details_merge:
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
152 * @source: The instance to copy from.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
153 * @destination: The instance to copy to.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
154 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
155 * Copies the values of [property@PurpleChannelJoinDetails:name],
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
156 * [property@PurpleChannelJoinDetails:nickname], and
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
157 * [property@PurpleChannelJoinDetails:password] from @source to @destination.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
158 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
159 * This function is intended to be used in the join channel dialog when the
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
160 * user switches accounts and the user interface needs to ask the protocol for
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
161 * its default [class@ChannelJoinDetails] so that any input from the user can
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
162 * be maintained.
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
163 *
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
164 * Since: 3.0.0
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
165 */
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
166 void purple_channel_join_details_merge(PurpleChannelJoinDetails *source, PurpleChannelJoinDetails *destination);
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
167
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
168 G_END_DECLS
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
169
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
170 #endif /* PURPLE_CHANNEL_JOIN_DETAILS_H */

mercurial