Perl working again, better than ever (unless there's bugs :)

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@191 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-04-28 08:07:42 +00:00 committed by cras
commit a5a66264de
43 changed files with 1510 additions and 1004 deletions

View file

@ -38,6 +38,9 @@ void autorun_deinit(void);
void fe_core_log_init(void);
void fe_core_log_deinit(void);
void fe_log_init(void);
void fe_log_deinit(void);
void fe_server_init(void);
void fe_server_deinit(void);

View file

@ -1,7 +1,7 @@
/*
fe-log.c : irssi
Copyright (C) 1999 Timo Sirainen
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

View file

@ -83,5 +83,6 @@ FORMAT_REC fecommon_core_formats[] =
/* ---- */
{ NULL, N_("Misc"), 0 },
{ "not_toggle", N_("Value must be either ON, OFF or TOGGLE"), 0 }
{ "not_toggle", N_("Value must be either ON, OFF or TOGGLE"), 0 },
{ "perl_error", N_("Perl error: $0"), 1, { 0 } }
};

View file

@ -55,7 +55,8 @@ enum {
IRCTXT_FILL_6,
IRCTXT_NOT_TOGGLE
IRCTXT_NOT_TOGGLE,
IRCTXT_PERL_ERROR
};
extern FORMAT_REC fecommon_core_formats[];

View file

@ -807,23 +807,30 @@ static int sig_check_daychange(void)
return TRUE;
}
static void sig_gui_dialog(const char *type, const char *text)
void printtext_multiline(void *server, const char *channel, int level, const char *format, const char *text)
{
char **lines, **tmp;
if (g_strcasecmp(type, "warning") == 0)
type = _("%_Warning:%_ %s");
else if (g_strcasecmp(type, "error") == 0)
type = _("%_Error:%_ %s");
else
type = "%s";
lines = g_strsplit(text, "\n", -1);
for (tmp = lines; *tmp != NULL; tmp++)
printtext(NULL, NULL, MSGLEVEL_NEVER, type, *tmp);
printtext(NULL, NULL, MSGLEVEL_NEVER, format, *tmp);
g_strfreev(lines);
}
static void sig_gui_dialog(const char *type, const char *text)
{
char *format;
if (g_strcasecmp(type, "warning") == 0)
format = _("%_Warning:%_ %s");
else if (g_strcasecmp(type, "error") == 0)
format = _("%_Error:%_ %s");
else
format = "%s";
printtext_multiline(NULL, NULL, MSGLEVEL_NEVER, format, text);
}
static void read_settings(void)
{
toggle_show_timestamps = settings_get_bool("toggle_show_timestamps");

View file

@ -53,6 +53,7 @@ void printformat(void *server, const char *channel, int level, int formatnum, ..
void printformat_format(FORMAT_REC *formats, void *server, const char *channel, int level, int formatnum, ...);
void printtext(void *server, const char *channel, int level, const char *str, ...);
void printtext_multiline(void *server, const char *channel, int level, const char *format, const char *text);
void printbeep(void);
void printtext_init(void);

View file

@ -556,12 +556,6 @@ static void event_ban_type_changed(gchar *bantype)
}
}
/*FIXME: move to core
static void event_perl_error(gchar *text)
{
printformat(NULL, NULL, MSGLEVEL_CLIENTERROR, IRCTXT_PERL_ERROR, text);
}*/
static void sig_server_lag_disconnected(IRC_SERVER_REC *server)
{
g_return_if_fail(server != NULL);
@ -643,7 +637,6 @@ void fe_events_init(void)
signal_add("event connected", (SIGNAL_FUNC) event_connected);
signal_add("nickfind event whois", (SIGNAL_FUNC) event_nickfind_whois);
signal_add("ban type changed", (SIGNAL_FUNC) event_ban_type_changed);
//signal_add("perl error", (SIGNAL_FUNC) event_perl_error);
signal_add("server lag disconnect", (SIGNAL_FUNC) sig_server_lag_disconnected);
signal_add("server reconnect remove", (SIGNAL_FUNC) sig_server_reconnect_removed);
@ -676,7 +669,6 @@ void fe_events_deinit(void)
signal_remove("event connected", (SIGNAL_FUNC) event_connected);
signal_remove("nickfind event whois", (SIGNAL_FUNC) event_nickfind_whois);
signal_remove("ban type changed", (SIGNAL_FUNC) event_ban_type_changed);
//signal_remove("perl error", (SIGNAL_FUNC) event_perl_error);
signal_remove("server lag disconnect", (SIGNAL_FUNC) sig_server_lag_disconnected);
signal_remove("server reconnect remove", (SIGNAL_FUNC) sig_server_reconnect_removed);