Mercurial > pidgin
annotate src/protocols/msn/cmdproc.h @ 12468:6faefbebcd24
[gaim-migrate @ 14778]
SF Patch #1372898 from charkins
"This patch updates the unseen conversation api in
gtkconv to ensure consistancy and avoid code
duplication. The ...first_unseen() function is renamed
and expanded to return a list of conversations that
match the specified criteria. A max_count parameter is
used to allow this to short circuit early (using 1
gives old behavior). An additional flag was added to
allow this function to only consider hidden
conversations (used by the buddy list). The blist is
currently inconsistant in which conversations it loops
over for showing the menu tray icon, creating the
tooltip and the unseen menu. This patch fixes that.
The ...find_unseen_list() now handles contact-aware
conversations correctly as well (based on sadrul's
patches in #1362579 which are obsoleted by this patch).
I also included the fix from #1362579 which increments
unseen_count only when state>=UNSEEN_TEXT."
committer: Tailor Script <tailor@pidgin.im>
| author | Richard Laager <rlaager@wiktel.com> |
|---|---|
| date | Mon, 12 Dec 2005 18:59:29 +0000 |
| parents | bcfea6c3d5c9 |
| children |
| rev | line source |
|---|---|
| 8810 | 1 /** |
| 2 * @file cmdproc.h MSN command processor functions | |
| 3 * | |
| 4 * gaim | |
| 5 * | |
|
9198
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
6 * Gaim is the legal property of its developers, whose names are too numerous |
|
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
|
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
8 * source distribution. |
| 8810 | 9 * |
| 10 * This program is free software; you can redistribute it and/or modify | |
| 11 * it under the terms of the GNU General Public License as published by | |
| 12 * the Free Software Foundation; either version 2 of the License, or | |
| 13 * (at your option) any later version. | |
| 14 * | |
| 15 * This program is distributed in the hope that it will be useful, | |
| 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 18 * GNU General Public License for more details. | |
| 19 * | |
| 20 * You should have received a copy of the GNU General Public License | |
| 21 * along with this program; if not, write to the Free Software | |
| 22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 23 */ | |
| 24 #ifndef _MSN_CMDPROC_H_ | |
| 25 #define _MSN_CMDPROC_H_ | |
| 26 | |
| 27 typedef struct _MsnCmdProc MsnCmdProc; | |
| 28 | |
| 29 #include "session.h" | |
|
9158
c30d81b4dd22
[gaim-migrate @ 9942]
Christian Hammond <chipx86@chipx86.com>
parents:
8810
diff
changeset
|
30 #include "servconn.h" |
| 8810 | 31 #include "error.h" |
| 32 #include "command.h" | |
| 33 #include "table.h" | |
| 34 #include "history.h" | |
| 35 | |
| 36 struct _MsnCmdProc | |
| 37 { | |
| 38 MsnSession *session; | |
| 39 MsnServConn *servconn; | |
| 40 | |
| 41 GQueue *txqueue; | |
| 42 | |
| 43 MsnCommand *last_cmd; | |
|
9198
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
44 |
| 8810 | 45 MsnTable *cbs_table; |
| 46 | |
| 47 MsnHistory *history; | |
| 10463 | 48 |
| 49 void *data; /**< Extra data, like the switchboard. */ | |
| 8810 | 50 }; |
| 51 | |
| 52 MsnCmdProc *msn_cmdproc_new(MsnSession *session); | |
| 53 void msn_cmdproc_destroy(MsnCmdProc *cmdproc); | |
| 54 | |
| 55 void msn_cmdproc_process_queue(MsnCmdProc *cmdproc); | |
| 56 | |
| 57 void msn_cmdproc_send_trans(MsnCmdProc *cmdproc, MsnTransaction *trans); | |
| 58 void msn_cmdproc_queue_trans(MsnCmdProc *cmdproc, | |
| 59 MsnTransaction *trans); | |
| 60 void msn_cmdproc_send(MsnCmdProc *cmdproc, const char *command, | |
| 61 const char *format, ...); | |
| 62 void msn_cmdproc_send_quick(MsnCmdProc *cmdproc, const char *command, | |
|
9158
c30d81b4dd22
[gaim-migrate @ 9942]
Christian Hammond <chipx86@chipx86.com>
parents:
8810
diff
changeset
|
63 const char *format, ...); |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
64 |
| 8810 | 65 void msn_cmdproc_process_msg(MsnCmdProc *cmdproc, |
| 66 MsnMessage *msg); | |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
67 void msn_cmdproc_process_cmd(MsnCmdProc *cmdproc, MsnCommand *cmd); |
| 8810 | 68 void msn_cmdproc_process_cmd_text(MsnCmdProc *cmdproc, const char *command); |
| 69 void msn_cmdproc_process_payload(MsnCmdProc *cmdproc, | |
| 70 char *payload, int payload_len); | |
| 71 | |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
72 void msn_cmdproc_disconnect(MsnCmdProc *cmdproc); |
| 8810 | 73 |
| 74 #endif /* _MSN_CMDPROC_H_ */ |
