mcabber/screen.c
changeset 13 4c3d7b8a29c4
parent 12 70ca5b9c648a
child 14 c87d8adc9100
equal deleted inserted replaced
12:70ca5b9c648a 13:4c3d7b8a29c4
    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 {