Enlightenment CVS committal Author : codewarrior Project : e17 Module : proto
Dir : e17/proto/enterminus/src/bin Modified Files: handlers.c term.h ui.c Log Message: debug statements and term_delete_lines =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/handlers.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- handlers.c 19 Feb 2005 00:33:55 -0000 1.7 +++ handlers.c 24 Feb 2005 12:31:00 -0000 1.8 @@ -173,7 +173,7 @@ case 'M': /* ESC [ [ n ] M Delete n lines (DL), default 1 */ DPRINT((stderr, "ESC [ [ n ] M Delete n lines (DL)\n")); - //delete_lines(narg ? args[0] : 1); + term_delete_lines(term, narg ? args[0] : 1); break; case 'P': /* ESC [ [ n ] P Delete n characters (DCH), default 1 */ =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/term.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- term.h 24 Feb 2005 00:27:54 -0000 1.10 +++ term.h 24 Feb 2005 12:31:00 -0000 1.11 @@ -178,6 +178,7 @@ void term_tcanvas_save(Term *term); void term_tcanvas_restore(Term *term); void term_clear_area(Term *term, int x1, int y1, int x2, int y2); +void term_delete_lines(Term *term, int lines); void term_scroll_up(Term *term, int rows); void term_scroll_down(Term *term, int rows); =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/ui.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- ui.c 24 Feb 2005 00:48:12 -0000 1.19 +++ ui.c 24 Feb 2005 12:31:01 -0000 1.20 @@ -144,6 +144,7 @@ /* Move cursor up n rows*/ int term_cursor_move_up(Term *term, int n) { + DPRINT((stderr,"Moving cursor up %d rows\n",n)); term->tcanvas->cur_row -= n-1; if(term->tcanvas->cur_row < 0) term->tcanvas->cur_row = 0; @@ -152,6 +153,7 @@ /* Move cursor down n rows */ int term_cursor_move_down(Term *term, int n) { + DPRINT((stderr,"Moving cursor down %d rows\n",n)); term->tcanvas->cur_row += n-1; if(term->tcanvas->cur_row >= term->tcanvas->rows) term->tcanvas->cur_row = term->tcanvas->rows-1; @@ -169,6 +171,7 @@ /* Move cursor right n cols */ int term_cursor_move_right(Term *term, int n) { + DPRINT((stderr,"Moving cursor right %d cols\n",n)); term->tcanvas->cur_col += n-1; if(term->tcanvas->cur_col >= term->tcanvas->cols) term->tcanvas->cur_col = term->tcanvas->cols-1; @@ -188,6 +191,7 @@ /* Move to a certain row */ int term_cursor_move_row(Term *term, int n) { + DPRINT((stderr,"Moving cursor to row %d\n",n)); term->tcanvas->cur_row = n-1; if(term->tcanvas->cur_row < 0) term->tcanvas->cur_row = 0; @@ -211,30 +215,33 @@ term->cur_row = term->tcanvas->rows-1; term->tcanvas->cur_col = term->cur_col; term->tcanvas->cur_row = term->tcanvas->scroll_region_start +term->cur_row; - printf("Went to %d %d\n",term->cur_col,term->cur_row); } /* Move cursor again to last saved [x,y] */ void term_cursor_rego(Term *term) { + DPRINT((stderr,"Re-going cursor to last saved position\n")); term_cursor_goto(term, term->tcanvas->cur_col, term->tcanvas->cur_row); } /* Delete n rows starting from start */ void term_delete_rows(Term *term, int start, int n) { int i; - + DPRINT((stderr,"Deleting %d rows from %d\n",n,start)); } /* Add n rows starting from pos */ void term_add_rows(Term *term, int pos, int n) { + DPRINT((stderr,"Adding %d rows from %d\n",n,pos)); } /* Save the current screen */ void term_tcanvas_save(Term *term) { + DPRINT((stderr,"Saving current screen\n")); } /* Restore the last saved screen */ void term_tcanvas_restore(Term *term) { + DPRINT((stderr,"Restoring current screen\n")); } /* clear a certain part of the screen */ @@ -270,7 +277,10 @@ if(term->tcanvas->scroll_in_region) { /* TODO: implement this */ - DPRINT((stderr,"Scrolling: in region\n")); + DPRINT((stderr,"Scrolling: in region between %d and %d\n", + term->tcanvas->scroll_region_start, + term->tcanvas->scroll_region_end)); + } else { DPRINT((stderr,"Scrolling: window\n")); /* Going past the virtual scroll buffer, we need to wrap */ @@ -330,16 +340,16 @@ gl = & term->tcanvas->grid[j + (term->tcanvas->cols * i)]; gl->changed = 1; } - } + } } } /* scroll window / region down */ void term_scroll_down(Term *term, int rows) { if(term->tcanvas->scroll_in_region) { - + DPRINT((stderr,"Scrolling: in region\n")); } else { - + DPRINT((stderr,"Scrolling: window\n")); } } @@ -349,3 +359,14 @@ evas_object_color_set (term->cursor.shape, 100, 100, 100, a); return 1; } + +void term_delete_lines(Term *term, int lines) { + int a, b; + a = term->tcanvas->scroll_region_start; + b = term->tcanvas->scroll_in_region; + term->tcanvas->scroll_region_start = term->tcanvas->cur_row; + term->tcanvas->scroll_in_region = 0; + term_scroll_up(term, lines); + term->tcanvas->scroll_region_start = a; + term->tcanvas->scroll_in_region = b; +} ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs