|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T i
Length: 6607 (0x19cf)
Types: TextFile
Names: »init_disp.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
└─⟦this⟧ »EUUGD18/General/Bridge/init_disp.c«
#ifndef lint
static char sccsid[] = "@(#)init_disp.c 1.1 86/02/05 SMI"; /* from UCB 1.2 83/06/23 */
#endif
/*
* init_disp contains the initialization code for the display package,
* as well as the signal handling routines
*/
#include "talk.h"
#include <signal.h>
extern int ID;
int curses_initialized;
/*
* set up curses, catch the appropriate signals, and build the
* various windows
*/
init_disp()
{ int i, t;
void sig_sent();
initscr();
curses_initialized = 1;
clear();
refresh();
noecho();
crmode();
signal(SIGINT, sig_sent);
signal(SIGPIPE, sig_sent);
/* curses takes care of ^Z */
comwin[0].x_nlines = 4;
comwin[0].x_ncols = 15;
comwin[0].x_win = newwin(4, 15, 0, 22);
comwin[1].x_nlines = 4;
comwin[1].x_ncols = 15;
comwin[1].x_win = newwin(4, 15, 6, 40);
comwin[2].x_nlines = 4;
comwin[2].x_ncols = 15;
comwin[2].x_win = newwin(4, 15, 13, 22);
comwin[3].x_nlines = 4;
comwin[3].x_ncols = 15;
comwin[3].x_win = newwin(4, 15, 6, 5);
comwin[4].x_nlines = 1;
comwin[4].x_ncols = 2;
comwin[4].x_win = newwin(1, 2, 5, 28);
comwin[5].x_nlines = 1;
comwin[5].x_ncols = 2;
comwin[5].x_win = newwin(1, 2, 8, 35);
comwin[6].x_nlines = 1;
comwin[6].x_ncols = 2;
comwin[6].x_win = newwin(1, 2, 11, 28);
comwin[7].x_nlines = 1;
comwin[7].x_ncols = 2;
comwin[7].x_win = newwin(1, 2, 8, 22);
comwin[8].x_nlines = 2;
comwin[8].x_ncols = 4;
comwin[8].x_win = newwin(2, 4, 1, 7);
comwin[9].x_nlines = 3;
comwin[9].x_ncols = 11;
comwin[9].x_win = newwin(3, 11, 5, 67);
comwin[10].x_nlines = 7;
comwin[10].x_ncols = 17;
comwin[10].x_win = newwin(7, 17, 5, 21);
comwin[11].x_nlines = 1;
comwin[11].x_ncols = 30;
comwin[11].x_win = newwin(1, 30, 1, 50);
comwin[12].x_nlines = 1;
comwin[12].x_ncols = 40;
comwin[12].x_win = newwin(1, 40, 16, 40);
comwin[13].x_nlines = 24;
comwin[13].x_ncols = 80;
comwin[13].x_win = newwin(24, 80, 0, 0);
comwin[14].x_nlines = 5;
comwin[14].x_ncols = 19;
comwin[14].x_win = newwin(5, 19, 18, 0);
comwin[15].x_nlines = 5;
comwin[15].x_ncols = 19;
comwin[15].x_win = newwin(5, 19, 18, 20);
comwin[16].x_nlines = 5;
comwin[16].x_ncols = 19;
comwin[16].x_win = newwin(5, 19, 18, 40);
comwin[17].x_nlines = 5;
comwin[17].x_ncols = 19;
comwin[17].x_win = newwin(5, 19, 18, 60);
comwin[18].x_nlines = 1;
comwin[18].x_ncols = 20;
comwin[18].x_win = newwin(1, 20, 16, 0);
for (i=0; i<19; i++){
scrollok(comwin[i].x_win, FALSE);
wclear(comwin[i].x_win);
};
for (i=14; i<18;++i) scrollok(comwin[i].x_win, TRUE);
wmove(comwin[13].x_win, 1, 1);
wprintw(comwin[13].x_win, "HAND:");
wmove(comwin[13].x_win, 2, 1);
wprintw(comwin[13].x_win, "VUL.:");
wmove(comwin[13].x_win, 4, 20);
wprintw(comwin[13].x_win, "-------------------");
wmove(comwin[13].x_win, 5, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 6, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 7, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 8, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 9, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 10, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 11, 20);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 12, 20);
wprintw(comwin[13].x_win, "-------------------");
wmove(comwin[13].x_win, 5, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 6, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 7, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 8, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 9, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 10, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 11, 38);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 3, 68);
wprintw(comwin[13].x_win, "N-S E-W");
wmove(comwin[13].x_win, 4, 67);
wprintw(comwin[13].x_win, "----- -----");
wmove(comwin[13].x_win, 5, 60);
wprintw(comwin[13].x_win, "TRICK: 0 0");
wmove(comwin[13].x_win, 6, 60);
wprintw(comwin[13].x_win, "SCORE: 0 0");
wmove(comwin[13].x_win, 7, 60);
wprintw(comwin[13].x_win, "TOTAL: 0 0");
wmove(comwin[13].x_win, 9, 55);
wprintw(comwin[13].x_win, "ABBREVIATIONS --");
wmove(comwin[13].x_win, 10, 57);
wprintw(comwin[13].x_win, "P:PASS N:NO TRUMP");
wmove(comwin[13].x_win, 11, 57);
wprintw(comwin[13].x_win, "S:SPADE H:HEART");
wmove(comwin[13].x_win, 12, 57);
wprintw(comwin[13].x_win, "D:DIAMOND C:CLUB,");
wmove(comwin[13].x_win, 13, 57);
wprintw(comwin[13].x_win, "X:DOUBLE XX:REDOUBLE");
wmove(comwin[13].x_win, 14, 57);
wprintw(comwin[13].x_win, "T:10 F#:Finish");
wmove(comwin[13].x_win, 17,0);
wprintw(comwin[13].x_win, "--------------------------------------------------------------------------------");
wmove(comwin[13].x_win, 18,19);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 18,39);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 18,59);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 19,19);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 19,39);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 19,59);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 20,19);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 20,39);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 20,59);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 21,19);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 21,39);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 21,59);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 22,19);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 22,39);
wprintw(comwin[13].x_win, "|");
wmove(comwin[13].x_win, 22,59);
wprintw(comwin[13].x_win, "|");
wrefresh(comwin[13].x_win);
current_state = "No connection yet";
}
void sig_sent()
{
message("Connection closing. Exiting");
quit();
}
/*
* All done talking...hang up the phone and reset terminal thingy's
*/
quit()
{ int i;
if (curses_initialized) {
for (i=0; i<3; i++){
wmove(comwin[i].x_win, comwin[i].x_nlines-1, 0);
wclrtoeol(comwin[i].x_win);
wrefresh(comwin[i].x_win);
};
endwin();
}
if (invitation_waiting) {
send_delete();
}
exit(0);
}