diff options
author | Timo Sirainen <cras@irssi.org> | 2000-05-04 10:32:42 +0000 |
---|---|---|
committer | cras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564> | 2000-05-04 10:32:42 +0000 |
commit | d3dc9a1307adc40425bf162f1f867a39e535f501 (patch) | |
tree | d3c92a8e431391d679ae5341cb4e865f00449761 /src/fe-common/irc/irc-nick-hilight.c | |
parent | bacfcb060c1b687f70db4d59797e1cbc8bfe0f62 (diff) | |
download | irssi-d3dc9a1307adc40425bf162f1f867a39e535f501.zip |
.. lots of changes ..
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@197 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/fe-common/irc/irc-nick-hilight.c')
-rw-r--r-- | src/fe-common/irc/irc-nick-hilight.c | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/src/fe-common/irc/irc-nick-hilight.c b/src/fe-common/irc/irc-nick-hilight.c deleted file mode 100644 index 0d790822..00000000 --- a/src/fe-common/irc/irc-nick-hilight.c +++ /dev/null @@ -1,89 +0,0 @@ -/* - irc-nick-hilight.c : irssi - - Copyright (C) 1999-2000 Timo Sirainen - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ - -#include "module.h" -#include "signals.h" -#include "levels.h" - -#include "irc.h" -#include "ignore.h" -#include "irc-server.h" - -#include "completion.h" -#include "windows.h" -#include "window-items.h" - -static void event_privmsg(const char *data, IRC_SERVER_REC *server, const char *nick, const char *addr) -{ - WINDOW_REC *window; - WI_ITEM_REC *item; - char *params, *target, *msg; - int level; - - g_return_if_fail(data != NULL); - - params = event_get_params(data, 2 | PARAM_FLAG_GETREST, &target, &msg); - - if (*msg == 1) { - /* don't hilight CTCPs */ - g_free(params); - return; - } - - /* get window and window item */ - level = ischannel(*target) ? MSGLEVEL_PUBLIC : MSGLEVEL_MSGS; - item = window_item_find(server, ischannel(*target) ? target : nick); - window = item == NULL ? - window_find_closest(server, target, GPOINTER_TO_INT(level)) : - window_item_window(item); - - /* check that msg wasn't send to current window and - that it didn't get ignored */ - if (window != active_win && !ignore_check(server, nick, addr, target, msg, level)) { - /* hilight */ - level = !ischannel(*target) || - completion_msgtoyou((SERVER_REC *) server, msg) ? - NEWDATA_MSG_FORYOU : NEWDATA_MSG; - if (item != NULL && item->new_data < level) { - item->new_data = level; - signal_emit("window item hilight", 1, item); - } else { - int oldlevel = window->new_data; - - if (window->new_data < level) { - window->new_data = level; - signal_emit("window hilight", 2, window, GINT_TO_POINTER(oldlevel)); - } - signal_emit("window activity", 2, window, GINT_TO_POINTER(oldlevel)); - } - } - - g_free(params); -} - -void irc_nick_hilight_init(void) -{ - signal_add_last("event privmsg", (SIGNAL_FUNC) event_privmsg); -} - -void irc_nick_hilight_deinit(void) -{ - signal_remove("event privmsg", (SIGNAL_FUNC) event_privmsg); -} |