Mercurial > hg > nnchat
diff ui.c @ 541:44f67ec5e945
Improve logging facilities. Private chats in query windows are now logged
separately. A log file directory can be set in configuration. Room log files
are always of format room_%d.ext. Log file extension can be set, default is
".log".
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 11 Nov 2012 18:32:42 +0200 |
parents | 658c188101a6 |
children | afb4caf32bdf |
line wrap: on
line diff
--- a/ui.c Sun Nov 11 07:33:31 2012 +0200 +++ b/ui.c Sun Nov 11 18:32:42 2012 +0200 @@ -118,6 +118,7 @@ memset(chatWindows, 0, sizeof(chatWindows)); chatWindows[0] = nn_window_new(NULL); + nn_log_open(chatWindows[0]); currWin = chatWindows[0]; return TRUE; @@ -166,23 +167,26 @@ BOOL nnwin_open(const char *name, BOOL curwin) { + nn_window_t *res; int i; - nn_window_t *res; + if (name == NULL) return FALSE; if ((res = nn_window_new(name)) == NULL) return FALSE; + nn_log_open(res); + for (i = 1; i < SET_MAX_WINDOWS; i++) - if (chatWindows[i] == NULL) - { - res->num = i; - chatWindows[i] = res; - if (curwin) - currWin = res; - return TRUE; - } + if (chatWindows[i] == NULL) + { + res->num = i; + chatWindows[i] = res; + if (curwin) + currWin = res; + return TRUE; + } return FALSE; } @@ -194,13 +198,12 @@ if (win == NULL) return; for (i = 1; i < SET_MAX_WINDOWS; i++) + if (chatWindows[i] == win) { - if (chatWindows[i] == win) - { - chatWindows[i] = NULL; - nn_window_free(win); - return; - } + chatWindows[i] = NULL; + nn_log_close(win); + nn_window_free(win); + return; } }