Automatic command completion and a few other fixes.

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@387 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-06-28 17:15:37 +00:00 committed by cras
commit 7e531cec7a
11 changed files with 195 additions and 119 deletions

View file

@ -416,6 +416,14 @@ static void cmd_dcc_list(const char *data)
printformat(NULL, NULL, MSGLEVEL_DCC, IRCTXT_DCC_LIST_FOOTER);
}
static void cmd_dcc(const char *data)
{
if (*data == '\0') {
cmd_dcc_list(data);
signal_stop();
}
}
static void sig_dcc_send_complete(GList **list, WINDOW_REC *window,
const char *word, const char *line, int *want_space)
{
@ -459,7 +467,7 @@ void fe_irc_dcc_init(void)
command_bind("me", NULL, (SIGNAL_FUNC) cmd_me);
command_bind("action", NULL, (SIGNAL_FUNC) cmd_action);
command_bind("ctcp", NULL, (SIGNAL_FUNC) cmd_ctcp);
command_bind("dcc ", NULL, (SIGNAL_FUNC) cmd_dcc_list);
command_bind("dcc", NULL, (SIGNAL_FUNC) cmd_dcc);
command_bind("dcc list", NULL, (SIGNAL_FUNC) cmd_dcc_list);
theme_register(fecommon_irc_dcc_formats);
@ -492,6 +500,6 @@ void fe_irc_dcc_deinit(void)
command_unbind("me", (SIGNAL_FUNC) cmd_me);
command_unbind("action", (SIGNAL_FUNC) cmd_action);
command_unbind("ctcp", (SIGNAL_FUNC) cmd_ctcp);
command_unbind("dcc ", (SIGNAL_FUNC) cmd_dcc_list);
command_unbind("dcc", (SIGNAL_FUNC) cmd_dcc);
command_unbind("dcc list", (SIGNAL_FUNC) cmd_dcc_list);
}

View file

@ -182,12 +182,12 @@ static void cmd_channel_list(void)
static void cmd_channel(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item)
{
if (ischannel(*data)) {
if (*data == '\0')
cmd_channel_list_joined();
else if (ischannel(*data))
signal_emit("command join", 2, data, server);
return;
}
command_runsub("channel", data, server, item);
else
command_runsub("channel", data, server, item);
}
static void cmd_channel_add(const char *data)
@ -260,7 +260,6 @@ void fe_channels_init(void)
command_bind("wjoin", NULL, (SIGNAL_FUNC) cmd_wjoin);
command_bind("channel", NULL, (SIGNAL_FUNC) cmd_channel);
command_bind("channel ", NULL, (SIGNAL_FUNC) cmd_channel_list_joined);
command_bind("channel add", NULL, (SIGNAL_FUNC) cmd_channel_add);
command_bind("channel remove", NULL, (SIGNAL_FUNC) cmd_channel_remove);
command_bind("channel list", NULL, (SIGNAL_FUNC) cmd_channel_list);
@ -278,7 +277,6 @@ void fe_channels_deinit(void)
command_unbind("wjoin", (SIGNAL_FUNC) cmd_wjoin);
command_unbind("channel", (SIGNAL_FUNC) cmd_channel);
command_unbind("channel ", (SIGNAL_FUNC) cmd_channel_list_joined);
command_unbind("channel add", (SIGNAL_FUNC) cmd_channel_add);
command_unbind("channel remove", (SIGNAL_FUNC) cmd_channel_remove);
command_unbind("channel list", (SIGNAL_FUNC) cmd_channel_list);

View file

@ -28,11 +28,6 @@
#include "irc-server.h"
#include "ircnet-setup.h"
static void cmd_ircnet(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item)
{
command_runsub("ircnet", data, server, item);
}
static void cmd_ircnet_list(void)
{
GString *str;
@ -155,10 +150,17 @@ static void cmd_ircnet_remove(const char *data)
}
}
static void cmd_ircnet(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item)
{
if (*data == '\0')
cmd_ircnet_list();
else
command_runsub("ircnet", data, server, item);
}
void fe_ircnet_init(void)
{
command_bind("ircnet", NULL, (SIGNAL_FUNC) cmd_ircnet);
command_bind("ircnet ", NULL, (SIGNAL_FUNC) cmd_ircnet_list);
command_bind("ircnet add", NULL, (SIGNAL_FUNC) cmd_ircnet_add);
command_bind("ircnet remove", NULL, (SIGNAL_FUNC) cmd_ircnet_remove);
@ -168,7 +170,6 @@ void fe_ircnet_init(void)
void fe_ircnet_deinit(void)
{
command_unbind("ircnet", (SIGNAL_FUNC) cmd_ircnet);
command_unbind("ircnet ", (SIGNAL_FUNC) cmd_ircnet_list);
command_unbind("ircnet add", (SIGNAL_FUNC) cmd_ircnet_add);
command_unbind("ircnet remove", (SIGNAL_FUNC) cmd_ircnet_remove);
}