mirror of
https://github.com/irssi/irssi.git
synced 2026-08-19 16:42:30 +02:00
Better !channel support - window items now have "visual_name" and channels
and queries also have "name". Normally they're identical but with !channels
the visible_name contains the short !channel name, while name contains
full !ABCDEchannel name.
The visible_name should be used whenever displaying the channel name, or as
printtext()'s target. So, this breaks a few scripts in !channels, they need
to be modified to use $channel->{visible_name} instead.
Also /LAYOUT SAVE should finally work properly with !channels.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2797 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
ee80e7601a
commit
d346fbe1a9
44 changed files with 325 additions and 247 deletions
|
|
@ -42,14 +42,6 @@ channels_join(server, channels, automatic)
|
|||
CODE:
|
||||
server->channels_join(server, channels, automatic);
|
||||
|
||||
Irssi::Channel
|
||||
channel_create(server, name, automatic)
|
||||
Irssi::Server server
|
||||
char *name
|
||||
int automatic
|
||||
CODE:
|
||||
CHAT_PROTOCOL(server)->channel_create(server, name, automatic);
|
||||
|
||||
Irssi::Channel
|
||||
channel_find(server, name)
|
||||
Irssi::Server server
|
||||
|
|
|
|||
|
|
@ -61,11 +61,3 @@ CODE:
|
|||
RETVAL = irc_nicklist_insert(channel, nick, op, halfop, voice, send_massjoin);
|
||||
OUTPUT:
|
||||
RETVAL
|
||||
|
||||
MODULE = Irssi::Irc::Channel PACKAGE = Irssi::Irc::Server PREFIX = irc_
|
||||
|
||||
Irssi::Irc::Channel
|
||||
irc_channel_create(server, name, automatic)
|
||||
Irssi::Irc::Server server
|
||||
char *name
|
||||
int automatic
|
||||
|
|
|
|||
|
|
@ -326,7 +326,7 @@ void perl_window_item_fill_hash(HV *hv, WI_ITEM_REC *item)
|
|||
if (item->server != NULL) {
|
||||
hv_store(hv, "server", 6, iobject_bless(item->server), 0);
|
||||
}
|
||||
hv_store(hv, "name", 4, new_pv(item->name), 0);
|
||||
hv_store(hv, "visible_name", 12, new_pv(item->visible_name), 0);
|
||||
|
||||
hv_store(hv, "createtime", 10, newSViv(item->createtime), 0);
|
||||
hv_store(hv, "data_level", 10, newSViv(item->data_level), 0);
|
||||
|
|
@ -343,6 +343,7 @@ void perl_channel_fill_hash(HV *hv, CHANNEL_REC *channel)
|
|||
if (channel->ownnick != NULL)
|
||||
hv_store(hv, "ownnick", 7, iobject_bless(channel->ownnick), 0);
|
||||
|
||||
hv_store(hv, "name", 4, new_pv(channel->name), 0);
|
||||
hv_store(hv, "topic", 5, new_pv(channel->topic), 0);
|
||||
hv_store(hv, "topic_by", 8, new_pv(channel->topic_by), 0);
|
||||
hv_store(hv, "topic_time", 10, newSViv(channel->topic_time), 0);
|
||||
|
|
@ -369,6 +370,7 @@ void perl_query_fill_hash(HV *hv, QUERY_REC *query)
|
|||
|
||||
perl_window_item_fill_hash(hv, (WI_ITEM_REC *) query);
|
||||
|
||||
hv_store(hv, "name", 4, new_pv(query->name), 0);
|
||||
hv_store(hv, "last_unread_msg", 15, newSViv(query->last_unread_msg), 0);
|
||||
hv_store(hv, "address", 7, new_pv(query->address), 0);
|
||||
hv_store(hv, "server_tag", 10, new_pv(query->server_tag), 0);
|
||||
|
|
|
|||
|
|
@ -195,7 +195,7 @@ PREINIT:
|
|||
char *arglist[MAX_FORMAT_PARAMS+1];
|
||||
int n;
|
||||
CODE:
|
||||
format_create_dest(&dest, item->server, item->name, level, NULL);
|
||||
format_create_dest(&dest, item->server, item->visible_name, level, NULL);
|
||||
memset(arglist, 0, sizeof(arglist));
|
||||
for (n = 3; n < items && n < MAX_FORMAT_PARAMS+3; n++) {
|
||||
arglist[n-3] = SvPV(ST(n), PL_na);
|
||||
|
|
|
|||
|
|
@ -225,6 +225,10 @@ window_activity(window, data_level, hilight_color=NULL)
|
|||
char *
|
||||
window_get_active_name(window)
|
||||
Irssi::UI::Window window
|
||||
CODE:
|
||||
RETVAL = (char *) window_get_active_name(window);
|
||||
OUTPUT:
|
||||
RETVAL
|
||||
|
||||
Irssi::Windowitem
|
||||
window_item_find(window, server, name)
|
||||
|
|
@ -246,7 +250,7 @@ print(item, str, level=MSGLEVEL_CLIENTNOTICE)
|
|||
int level
|
||||
char *str
|
||||
CODE:
|
||||
printtext_string(item->server, item->name, level, str);
|
||||
printtext_string(item->server, item->visible_name, level, str);
|
||||
|
||||
Irssi::UI::Window
|
||||
window_create(item, automatic)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue