diff options
author | Tom Feist <shabble@cowu.be> | 2010-07-10 00:37:55 +0000 |
---|---|---|
committer | Tom Feist <shabble@cowu.be> | 2010-07-10 00:37:55 +0000 |
commit | 243c4e2b34cedafb7b66c11af384090417b2cc06 (patch) | |
tree | 3aa655d6f775d774cb01ca5bb32004239df3aedf /patches/irssi-svn-r5174-no_act_ignore.patch | |
parent | added a build script for POD to html (diff) | |
download | irssi-scripts-243c4e2b34cedafb7b66c11af384090417b2cc06.tar.gz irssi-scripts-243c4e2b34cedafb7b66c11af384090417b2cc06.zip |
migrated quite a lot of the perl.txt into individual modules
Diffstat (limited to 'patches/irssi-svn-r5174-no_act_ignore.patch')
-rw-r--r-- | patches/irssi-svn-r5174-no_act_ignore.patch | 161 |
1 files changed, 161 insertions, 0 deletions
diff --git a/patches/irssi-svn-r5174-no_act_ignore.patch b/patches/irssi-svn-r5174-no_act_ignore.patch new file mode 100644 index 0000000..dec68c0 --- /dev/null +++ b/patches/irssi-svn-r5174-no_act_ignore.patch @@ -0,0 +1,161 @@ +Index: src/fe-common/core/fe-messages.c +=================================================================== +--- src/fe-common/core/fe-messages.c (revision 5174) ++++ src/fe-common/core/fe-messages.c (working copy) +@@ -190,6 +190,9 @@ + if (for_me) + level |= MSGLEVEL_HILIGHT; + ++ if(ignore_check(server, nick, address, target, msg, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ + if (settings_get_bool("emphasis")) + msg = freemsg = expand_emphasis((WI_ITEM_REC *) chanrec, msg); + +@@ -325,7 +328,12 @@ + static void sig_message_join(SERVER_REC *server, const char *channel, + const char *nick, const char *address) + { +- printformat(server, channel, MSGLEVEL_JOINS, ++ int level = MSGLEVEL_JOINS; ++ ++ if(ignore_check(server, nick, address, channel, NULL, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ ++ printformat(server, channel, level, + TXT_JOIN, nick, address, channel); + } + +@@ -333,7 +341,12 @@ + const char *nick, const char *address, + const char *reason) + { +- printformat(server, channel, MSGLEVEL_PARTS, ++ int level = MSGLEVEL_PARTS; ++ ++ if(ignore_check(server, nick, address, channel, NULL, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ ++ printformat(server, channel, level, + TXT_PART, nick, address, channel, reason); + } + +@@ -344,17 +357,21 @@ + GString *chans; + GSList *tmp, *windows; + char *print_channel; +- int once, count; ++ int once, count, level = MSGLEVEL_QUITS; + + if (ignore_check(server, nick, address, NULL, reason, MSGLEVEL_QUITS)) + return; + ++ if(ignore_check(server, nick, address, NULL, reason, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ + print_channel = NULL; + once = settings_get_bool("show_quit_once"); + + count = 0; windows = NULL; + chans = g_string_new(NULL); + for (tmp = server->channels; tmp != NULL; tmp = tmp->next) { ++ level = MSGLEVEL_QUITS; + CHANNEL_REC *rec = tmp->data; + + if (!nicklist_find(rec, nick)) +@@ -366,6 +383,9 @@ + continue; + } + ++ if(ignore_check(server, nick, address, rec->visible_name, reason, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ + if (print_channel == NULL || + active_win->active == (WI_ITEM_REC *) rec) + print_channel = rec->visible_name; +@@ -377,7 +397,7 @@ + if (g_slist_find(windows, window) == NULL) { + windows = g_slist_append(windows, window); + printformat(server, rec->visible_name, +- MSGLEVEL_QUITS, ++ level, + TXT_QUIT, nick, address, reason, + rec->visible_name); + } +@@ -391,7 +411,7 @@ + display the quit there too */ + QUERY_REC *query = query_find(server, nick); + if (query != NULL) { +- printformat(server, nick, MSGLEVEL_QUITS, ++ printformat(server, nick, level, + TXT_QUIT, nick, address, reason, ""); + } + } +@@ -410,7 +430,12 @@ + const char *nick, const char *kicker, + const char *address, const char *reason) + { +- printformat(server, channel, MSGLEVEL_KICKS, ++ int level = MSGLEVEL_KICKS; ++ ++ if(ignore_check(server, kicker, address, channel, reason, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ ++ printformat(server, channel, level, + TXT_KICK, nick, channel, kicker, reason, address); + } + +@@ -428,6 +453,9 @@ + level = MSGLEVEL_NICKS; + if (ownnick) level |= MSGLEVEL_NO_ACT; + ++ if(!(level & MSGLEVEL_NO_ACT) && ignore_check(server, oldnick, address, channel, newnick, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ + printformat(server, channel, level, + ownnick ? TXT_YOUR_NICK_CHANGED : TXT_NICK_CHANGED, + oldnick, newnick, channel, address); +@@ -502,6 +530,11 @@ + const char *topic, + const char *nick, const char *address) + { ++ int level = MSGLEVEL_TOPICS; ++ ++ if(ignore_check(server, nick, address, channel, topic, MSGLEVEL_NO_ACT)) ++ level |= MSGLEVEL_NO_ACT; ++ + printformat(server, channel, MSGLEVEL_TOPICS, + *topic != '\0' ? TXT_NEW_TOPIC : TXT_TOPIC_UNSET, + nick, channel, topic, address); +Index: src/core/levels.c +=================================================================== +--- src/core/levels.c (revision 5174) ++++ src/core/levels.c (working copy) +@@ -46,6 +46,7 @@ + "HILIGHTS", + + "NOHILIGHT", ++ "NO_ACT", + NULL + }; + +@@ -59,6 +60,9 @@ + if (g_ascii_strcasecmp(level, "NEVER") == 0) + return MSGLEVEL_NEVER; + ++ if (g_strcasecmp(level, "NO_ACT") == 0) ++ return MSGLEVEL_NO_ACT; ++ + len = strlen(level); + if (len == 0) return 0; + +@@ -139,6 +143,9 @@ + if (bits & MSGLEVEL_NEVER) + g_string_append(str, "NEVER "); + ++ if (bits & MSGLEVEL_NO_ACT) ++ g_string_append(str, "NO_ACT "); ++ + for (n = 0; levels[n] != NULL; n++) { + if (bits & (1L << n)) + g_string_append_printf(str, "%s ", levels[n]); |