Beispiel #1
0
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
}
Beispiel #2
0
void term_sel_word(struct st_term *term, struct coord pos)
{
	struct coord start = pos;

	while (1) {
		struct coord prev = start;

		if (prev.x) {
			prev.x--;
		} else if (prev.y) {
			prev.y--;
			prev.x = term->size.x - 1;
		} else
			break;

		if (!isword(term_pos(term, prev)->c))
			break;

		start = prev;
	}

	while (1) {
		struct coord next = pos;

		if (next.x < term->size.x - 1) {
			next.x++;
		} else if (next.y < term->size.y - 1) {
			next.y++;
			next.x = 0;
		} else
			break;

		if (!isword(term_pos(term, next)->c))
			break;

		pos = next;
	}

	term_sel_update(term, SEL_REGULAR, start, pos);
}
Beispiel #3
0
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);
}