void show_params(){ int maxsize, i, x, y; ioctl(1, TIOCGWINSZ, &(gl_env.win)); // error check? gl_env.flag = 0; term_clear(); /*my_int(gl_env.nbelems); my_char('\n');*/ for (i=0,x=0,y=0,maxsize=0;i<gl_env.nbelems;i++,y++){ if (y >= gl_env.win.ws_row) { y = 0; x += maxsize + 2; maxsize = 0; } if (maxsize < gl_env.elems[i].size) maxsize = gl_env.elems[i].size; if (x+maxsize >= gl_env.win.ws_col){ term_clear(); term_pos(0, 0); my_str("Please enlarge your terminal."); gl_env.flag = TRUE; break; } gl_env.elems[i].x = x; gl_env.elems[i].y = y; term_pos(x, y); refreshout(i); } if (!gl_env.flag) refreshin(); //underlines selected }
/* moveleft.c pre: takes nothing post: moves the cursor left */ void moveleft(){ extern t_env gl_env; refreshout(gl_env.pos); gl_env.pos -= gl_env.win.ws_row; if(gl_env.pos < 0) gl_env.pos = 0; refreshin(); }
void moveright() { refreshout(gl_env.pos); if((gl_env.pos += gl_env.win.ws_row) >= gl_env.nbelems - 1) gl_env.pos = gl_env.nbelems - 2; refreshin(); }
void movedown() { refreshout(gl_env.pos); if(++gl_env.pos > gl_env.nbelems - 2) gl_env.pos = 0; refreshin(); }
void moveleft() { refreshout(gl_env.pos); if((gl_env.pos -= gl_env.win.ws_row) < 0) gl_env.pos = 0; refreshin(); }
void moveup(){ refreshout(gl_env.pos); gl_env.pos--; if(gl_env.pos < 0) { gl_env.pos = gl_env.nbelems - 1; } refreshin(); }
void movedown(){ refreshout(gl_env.pos); gl_env.pos++; if(gl_env.pos > gl_env.nbelems - 1){ gl_env.pos = 0; } refreshin(); }
void show_elems() { int i; int x; int y; int max; ioctl(0, TIOCGWINSZ, &(gl_env.win)); gl_env.flag = 0; term_clear(); for(i = 0, x = 0, y = 0, max = 0; i < gl_env.nbelems; i++, y++) { if(y >= gl_env.win.ws_row) { y = 0; x += max + 5; max = 0; } if(max < gl_env.elements[i].size) max = gl_env.elements[i].size; if(x + max >= gl_env.win.ws_col) { term_clear(); my_str("Please enlarge the window"); gl_env.flag = 1; break; } gl_env.elements[i].x = x; gl_env.elements[i].y = y; refreshout(i); if(!gl_env.flag) refreshin(); } }
void refreshin(){ term_pos(gl_env.elems[gl_env.current].x, gl_env.elems[gl_env.current].y); tputs(gl_env.under, 1, my_char2); refreshout(gl_env.current); tputs(gl_env.underout, 1, my_char2); }