equal
deleted
inserted
replaced
11 #include "buddies.h" |
11 #include "buddies.h" |
12 #include "parsecfg.h" |
12 #include "parsecfg.h" |
13 #include "lang.h" |
13 #include "lang.h" |
14 #include "server.h" |
14 #include "server.h" |
15 |
15 |
16 #include "list.h" |
|
17 |
|
18 /* Definicion de tipos */ |
16 /* Definicion de tipos */ |
19 #define window_entry(n) list_entry(n, window_entry_t, list) |
17 #define window_entry(n) list_entry(n, window_entry_t, list) |
20 |
|
21 typedef struct _window_entry_t { |
|
22 WINDOW *win; |
|
23 PANEL *panel; |
|
24 char *name; |
|
25 int nlines; |
|
26 char **texto; |
|
27 int pending_msg; |
|
28 struct list_head list; |
|
29 } window_entry_t; |
|
30 |
18 |
31 LIST_HEAD(window_list); |
19 LIST_HEAD(window_list); |
32 |
20 |
33 /* Variables globales a SCREEN.C */ |
21 /* Variables globales a SCREEN.C */ |
34 static WINDOW *rosterWnd, *chatWnd, *inputWnd; |
22 static WINDOW *rosterWnd, *chatWnd, *inputWnd; |
432 } |
420 } |
433 } |
421 } |
434 |
422 |
435 if (!dont_show) { |
423 if (!dont_show) { |
436 top_panel(tmp->panel); |
424 top_panel(tmp->panel); |
437 tmp->pending_msg = TRUE; |
|
438 width = scr_WindowHeight(tmp->win); |
425 width = scr_WindowHeight(tmp->win); |
439 for (n = 0; n < tmp->nlines; n++) { |
426 for (n = 0; n < tmp->nlines; n++) { |
440 mvwprintw(tmp->win, n + 1, 1, ""); |
427 mvwprintw(tmp->win, n + 1, 1, ""); |
441 for (i = 0; i < width - 2; i++) |
428 for (i = 0; i < width - 2; i++) |
442 waddch(tmp->win, ' '); |
429 waddch(tmp->win, ' '); |
443 mvwprintw(tmp->win, n + 1, 1, "%s", tmp->texto[n]); |
430 mvwprintw(tmp->win, n + 1, 1, "%s", tmp->texto[n]); |
444 } |
431 } |
445 |
432 |
446 update_panels(); |
433 update_panels(); |
447 doupdate(); |
434 doupdate(); |
|
435 } else { |
|
436 tmp->pending_msg = TRUE; |
448 } |
437 } |
449 } |
438 } |
450 |
439 |
451 void scr_InitCurses(void) |
440 void scr_InitCurses(void) |
452 { |
441 { |