finch/gntconv.h

Thu, 20 Mar 2008 00:20:27 +0000

author
Evan Schoenberg <evands@pidgin.im>
date
Thu, 20 Mar 2008 00:20:27 +0000
changeset 22645
04b138e79436
parent 20147
66f05a854eee
child 32254
5cd44bd83684
permissions
-rw-r--r--

Now that Adium has cyrus-sasl enabled, I'm having a lot of users report problems connecting to servers which ultimately turn out to be that the server supports GSSAPI in addition to other mechanisms and the user isn't configured serverside or clientside to authenticate properly. Generally speaking, a user/password combination is the expectation for most people for connecting.
>
> This adds an account preference, off by default, which enables GSSAPI authentication. If there's a huge outcry against displaying this preference in Pidgin and Finch, I'd appreciate leaving it in as a 'hidden' preference (changed to TRUE by default) which UIs can use; I plan to expose it within Adium.

14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
1 /**
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
2 * @file gntconv.h GNT Conversation API
16255
fa61ee19f526 Rename the Doxygen group from gntui to finch and define the finch group
Richard Laager <rlaager@pidgin.im>
parents: 16229
diff changeset
3 * @ingroup finch
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6 /* finch
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
7 *
15931
716b5fac1895 Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents: 15906
diff changeset
8 * Finch is the legal property of its developers, whose names are too numerous
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
10 * source distribution.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
11 *
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
12 * This program is free software; you can redistribute it and/or modify
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
13 * it under the terms of the GNU General Public License as published by
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
15 * (at your option) any later version.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
16 *
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
17 * This program is distributed in the hope that it will be useful,
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
20 * GNU General Public License for more details.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
21 *
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
22 * You should have received a copy of the GNU General Public License
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
23 * 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: 19612
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
25 */
14260
a21577fbb4d2 [gaim-migrate @ 16870]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13969
diff changeset
26 #ifndef _GNT_CONV_H
a21577fbb4d2 [gaim-migrate @ 16870]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13969
diff changeset
27 #define _GNT_CONV_H
a21577fbb4d2 [gaim-migrate @ 16870]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13969
diff changeset
28
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
29 #include <gnt.h>
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
30 #include <gntwidget.h>
19453
4de383712964 I broke the build. Sorry :(
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18155
diff changeset
31 #include <gntmenuitem.h>
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
32
13947
a77f6f615c20 [gaim-migrate @ 16365]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
33 #include "conversation.h"
a77f6f615c20 [gaim-migrate @ 16365]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
34
18155
3bb5605ea11e Added sound to Finch.
Eric Polino <aluink@pidgin.im>
parents: 16734
diff changeset
35 /* Grabs the conv out of a PurpleConverstation */
3bb5605ea11e Added sound to Finch.
Eric Polino <aluink@pidgin.im>
parents: 16734
diff changeset
36 #define FINCH_CONV(conv) ((FinchConv *)(conv)->ui_data)
3bb5605ea11e Added sound to Finch.
Eric Polino <aluink@pidgin.im>
parents: 16734
diff changeset
37
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
38 /***************************************************************************
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
39 * @name GNT Conversations API
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
40 ***************************************************************************/
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
41 /*@{*/
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
42
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
43 typedef struct _FinchConv FinchConv;
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
44 typedef struct _FinchConvChat FinchConvChat;
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
45 typedef struct _FinchConvIm FinchConvIm;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
46
19612
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
47 typedef enum
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
48 {
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
49 FINCH_CONV_NO_SOUND = 1 << 0,
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
50 } FinchConversationFlag;
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
51
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
52 struct _FinchConv
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
53 {
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
54 GList *list;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
55 PurpleConversation *active_conv;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
56
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
57 GntWidget *window; /* the container */
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
58 GntWidget *entry; /* entry */
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
59 GntWidget *tv; /* text-view */
19453
4de383712964 I broke the build. Sorry :(
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18155
diff changeset
60 GntWidget *menu;
16190
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
61 GntWidget *info;
19612
043dcbf3a36e Fix #2767 (per-conversation/chat mute option).
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19453
diff changeset
62 FinchConversationFlag flags;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
63
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
64 union
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
65 {
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
66 FinchConvChat *chat;
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
67 FinchConvIm *im;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
68 } u;
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
69 };
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
70
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
71 struct _FinchConvChat
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
72 {
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
73 GntWidget *userlist; /* the userlist */
16734
5e864cace440 Preemptive padding.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16255
diff changeset
74 void *pad1;
5e864cace440 Preemptive padding.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16255
diff changeset
75 void *pad2;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
76 };
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
77
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
78 struct _FinchConvIm
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
79 {
19453
4de383712964 I broke the build. Sorry :(
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18155
diff changeset
80 GntMenuItem *sendto;
16734
5e864cace440 Preemptive padding.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16255
diff changeset
81 void *something_for_later;
14777
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
82 };
c0ad17caf8ad [gaim-migrate @ 17469]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14620
diff changeset
83
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
84 /**
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
85 * Get the ui-functions.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
86 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
87 * @return The PurpleConversationUiOps populated with the appropriate functions.
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
88 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
89 PurpleConversationUiOps *finch_conv_get_ui_ops(void);
14260
a21577fbb4d2 [gaim-migrate @ 16870]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13969
diff changeset
90
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
91 /**
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
92 * Perform the necessary initializations.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
93 */
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
94 void finch_conversation_init(void);
13947
a77f6f615c20 [gaim-migrate @ 16365]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
95
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
96 /**
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
97 * Perform the necessary uninitializations.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
98 */
15878
f52832b611fe renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents: 14777
diff changeset
99 void finch_conversation_uninit(void);
13969
0541f389442e [gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13947
diff changeset
100
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
101 /**
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
102 * Set a conversation as active in a contactized conversation
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
103 *
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
104 * @param conv The conversation to make active.
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
105 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
106 void finch_conversation_set_active(PurpleConversation *conv);
14450
1ac2b6e98ef8 [gaim-migrate @ 17094]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14260
diff changeset
107
16190
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
108 /**
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
109 * Sets the information widget for the conversation window.
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
110 *
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
111 * @param conv The conversation.
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
112 * @param widget The widget containing the information. If @c NULL,
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
113 * the current information widget is removed.
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
114 */
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
115 void finch_conversation_set_info_widget(PurpleConversation *conv, GntWidget *widget);
435e34f11655 Allow adding information widgets in the conversation window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15931
diff changeset
116
14620
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
117 /*@}*/
90d599495d65 [gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14450
diff changeset
118
14260
a21577fbb4d2 [gaim-migrate @ 16870]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13969
diff changeset
119 #endif

mercurial