2000-04-28 08:07:42 +00:00
|
|
|
MODULE = Irssi PACKAGE = Irssi
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_emit(signal, ...)
|
|
|
|
|
char *signal
|
2000-08-16 00:26:07 +00:00
|
|
|
PREINIT:
|
|
|
|
|
STRLEN n_a;
|
2000-04-28 08:07:42 +00:00
|
|
|
CODE:
|
|
|
|
|
void *p[6];
|
|
|
|
|
int n;
|
|
|
|
|
|
|
|
|
|
memset(p, 0, sizeof(p));
|
|
|
|
|
for (n = 1; n < items && n < 6; n++) {
|
2000-08-16 00:26:07 +00:00
|
|
|
p[n-1] = SvPOKp(ST(n)) ? SvPV(ST(n), n_a) : (void *) SvIV((SV*)SvRV(ST(n)));
|
2000-04-28 08:07:42 +00:00
|
|
|
}
|
|
|
|
|
signal_emit(signal, items-1, p[0], p[1], p[2], p[3], p[4], p[5]);
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_add(signal, func)
|
|
|
|
|
char *signal
|
|
|
|
|
char *func
|
|
|
|
|
CODE:
|
|
|
|
|
perl_signal_add(signal, func);
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_add_last(signal, func)
|
|
|
|
|
char *signal
|
|
|
|
|
char *func
|
|
|
|
|
CODE:
|
|
|
|
|
perl_signal_add_last(signal, func);
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_remove(signal, func)
|
|
|
|
|
char *signal
|
|
|
|
|
char *func
|
|
|
|
|
CODE:
|
|
|
|
|
perl_signal_remove(signal, func);
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_stop()
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
signal_stop_by_name(signal)
|
|
|
|
|
char *signal
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
timeout_add(msecs, func, data)
|
|
|
|
|
int msecs
|
|
|
|
|
char *func
|
|
|
|
|
char *data
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = perl_timeout_add(msecs, func, data);
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
timeout_remove(tag)
|
|
|
|
|
int tag
|
|
|
|
|
CODE:
|
2000-11-21 23:26:07 +00:00
|
|
|
perl_source_remove(tag);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
INPUT_READ()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = G_INPUT_READ;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
INPUT_WRITE()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = G_INPUT_WRITE;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
input_add(source, condition, func, data)
|
|
|
|
|
int source
|
|
|
|
|
int condition
|
|
|
|
|
char *func
|
|
|
|
|
char *data
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = perl_input_add(source, condition, func, data);
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
input_remove(tag)
|
|
|
|
|
int tag
|
|
|
|
|
CODE:
|
|
|
|
|
perl_source_remove(tag);
|
2000-04-28 08:07:42 +00:00
|
|
|
|
2000-11-25 23:05:50 +00:00
|
|
|
# maybe there's some easier way than this..? :)
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_CRAP()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_CRAP;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_MSGS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_MSGS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_PUBLIC()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_PUBLIC;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_NOTICES()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_NOTICES;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_SNOTES()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_SNOTES;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_CTCPS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_CTCPS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_ACTIONS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_ACTIONS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_JOINS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_JOINS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_PARTS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_PARTS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_QUITS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_QUITS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_KICKS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_KICKS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_MODES()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_MODES;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_TOPICS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_TOPICS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_WALLOPS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_WALLOPS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_INVITES()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_INVITES;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_NICKS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_NICKS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_DCC()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_DCC;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_DCCMSGS()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_DCCMSGS;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_CLIENTNOTICE()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_CLIENTNOTICE;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_CLIENTCRAP()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_CLIENTCRAP;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_CLIENTERROR()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_CLIENTERROR;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_HILIGHT()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_HILIGHT;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_ALL()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_ALL;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_NOHILIGHT()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_NOHILIGHT;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_NO_ACT()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_NO_ACT;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_NEVER()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_NEVER;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
MSGLEVEL_LASTLOG()
|
|
|
|
|
CODE:
|
|
|
|
|
RETVAL = MSGLEVEL_LASTLOG;
|
|
|
|
|
OUTPUT:
|
|
|
|
|
RETVAL
|
|
|
|
|
|
2000-04-28 08:07:42 +00:00
|
|
|
int
|
|
|
|
|
level2bits(str)
|
|
|
|
|
char *str
|
|
|
|
|
|
|
|
|
|
char *
|
|
|
|
|
bits2level(bits)
|
|
|
|
|
int bits
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
|
combine_level(level, str)
|
|
|
|
|
int level
|
|
|
|
|
char *str
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
commands()
|
|
|
|
|
PREINIT:
|
|
|
|
|
GSList *tmp;
|
|
|
|
|
HV *stash;
|
|
|
|
|
PPCODE:
|
|
|
|
|
stash = gv_stashpv("Irssi::Command", 0);
|
|
|
|
|
for (tmp = commands; tmp != NULL; tmp = tmp->next) {
|
2000-12-06 05:03:11 +00:00
|
|
|
push_bless(tmp->data, stash);
|
2000-04-28 08:07:42 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
command_bind(cmd, category, func)
|
|
|
|
|
char *cmd
|
|
|
|
|
char *category
|
|
|
|
|
char *func
|
|
|
|
|
CODE:
|
|
|
|
|
char *signal;
|
|
|
|
|
|
2000-05-04 10:32:42 +00:00
|
|
|
if (*category == '\0') category = "Perl scripts' commands";
|
2000-06-28 17:15:37 +00:00
|
|
|
command_bind(cmd, category, NULL);
|
2000-04-28 08:07:42 +00:00
|
|
|
signal = g_strconcat("command ", cmd, NULL);
|
|
|
|
|
perl_signal_add(signal, func);
|
|
|
|
|
g_free(signal);
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
command_unbind(cmd, func)
|
|
|
|
|
char *cmd
|
|
|
|
|
char *func
|
|
|
|
|
CODE:
|
|
|
|
|
char *signal;
|
|
|
|
|
|
|
|
|
|
signal = g_strconcat("command ", cmd, NULL);
|
|
|
|
|
perl_signal_remove(signal, func);
|
|
|
|
|
g_free(signal);
|