Changes in uspace/app/edit/edit.c [8190e63:7e752b2] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/edit/edit.c
r8190e63 r7e752b2 40 40 #include <vfs/vfs.h> 41 41 #include <io/console.h> 42 #include <io/ color.h>42 #include <io/style.h> 43 43 #include <io/keycode.h> 44 44 #include <errno.h> … … 100 100 static bool cursor_visible; 101 101 102 static int scr_rows, scr_columns; 102 static ipcarg_t scr_rows; 103 static ipcarg_t scr_columns; 103 104 104 105 #define ROW_BUF_SIZE 4096 … … 475 476 static void file_save_as(void) 476 477 { 477 char *old_fname, *fname; 478 int rc; 479 480 old_fname = (doc.file_name != NULL) ? doc.file_name : ""; 478 const char *old_fname = (doc.file_name != NULL) ? doc.file_name : ""; 479 char *fname; 480 481 481 fname = filename_prompt("Save As", old_fname); 482 482 if (fname == NULL) { … … 485 485 } 486 486 487 rc = file_save(fname);487 int rc = file_save(fname); 488 488 if (rc != EOK) 489 489 return; … … 506 506 asprintf(&str, "%s: %s", prompt, init_value); 507 507 status_display(str); 508 console_ goto(con, 1 + str_length(str), scr_rows - 1);508 console_set_pos(con, 1 + str_length(str), scr_rows - 1); 509 509 free(str); 510 510 511 console_set_ color(con, COLOR_WHITE, COLOR_BLACK, 0);511 console_set_style(con, STYLE_INVERTED); 512 512 513 513 max_len = min(INFNAME_MAX_LEN, scr_columns - 4 - str_length(prompt)); … … 553 553 str = wstr_to_astr(buffer); 554 554 555 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);555 console_set_style(con, STYLE_NORMAL); 556 556 557 557 return str; … … 672 672 { 673 673 int sh_rows, rows; 674 int i, j;675 674 676 675 sheet_get_num_rows(&doc.sh, &sh_rows); … … 679 678 /* Draw rows from the sheet. */ 680 679 681 console_ goto(con, 0, 0);680 console_set_pos(con, 0, 0); 682 681 pane_row_range_display(0, rows); 683 682 684 683 /* Clear the remaining rows if file is short. */ 685 684 685 int i; 686 ipcarg_t j; 686 687 for (i = rows; i < pane.rows; ++i) { 687 console_ goto(con, 0, i);688 console_set_pos(con, 0, i); 688 689 for (j = 0; j < scr_columns; ++j) 689 690 putchar(' '); … … 718 719 wchar_t c; 719 720 size_t pos, size; 720 unsigneds_column;721 int s_column; 721 722 coord_t csel_start, csel_end, ctmp; 722 723 … … 737 738 /* Draw rows from the sheet. */ 738 739 739 console_ goto(con, 0, 0);740 console_set_pos(con, 0, 0); 740 741 for (i = r0; i < r1; ++i) { 741 742 /* Starting point for row display */ … … 757 758 coord_cmp(&rbc, &csel_end) < 0) { 758 759 fflush(stdout); 759 console_set_ color(con, COLOR_BLACK, COLOR_RED, 0);760 console_set_style(con, STYLE_SELECTED); 760 761 fflush(stdout); 761 762 } 762 763 763 console_ goto(con, 0, i);764 console_set_pos(con, 0, i); 764 765 size = str_size(row_buf); 765 766 pos = 0; 766 767 s_column = pane.sh_column; 767 768 while (pos < size) { 768 if ( csel_start.row == rbc.row && csel_start.column == s_column) {769 if ((csel_start.row == rbc.row) && (csel_start.column == s_column)) { 769 770 fflush(stdout); 770 console_set_ color(con, COLOR_BLACK, COLOR_RED, 0);771 console_set_style(con, STYLE_SELECTED); 771 772 fflush(stdout); 772 773 } 773 774 774 if ( csel_end.row == rbc.row && csel_end.column == s_column) {775 if ((csel_end.row == rbc.row) && (csel_end.column == s_column)) { 775 776 fflush(stdout); 776 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);777 console_set_style(con, STYLE_NORMAL); 777 778 fflush(stdout); 778 779 } … … 780 781 c = str_decode(row_buf, &pos, size); 781 782 if (c != '\t') { 782 printf("%lc", c);783 printf("%lc", (wint_t) c); 783 784 s_column += 1; 784 785 } else { … … 792 793 } 793 794 794 if ( csel_end.row == rbc.row && csel_end.column == s_column) {795 if ((csel_end.row == rbc.row) && (csel_end.column == s_column)) { 795 796 fflush(stdout); 796 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);797 console_set_style(con, STYLE_NORMAL); 797 798 fflush(stdout); 798 799 } … … 808 809 putchar(' '); 809 810 fflush(stdout); 810 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);811 console_set_style(con, STYLE_NORMAL); 811 812 } 812 813 … … 819 820 spt_t caret_pt; 820 821 coord_t coord; 821 char *fname;822 int n;823 822 824 823 tag_get_pt(&pane.caret_pos, &caret_pt); 825 824 spt_get_coord(&caret_pt, &coord); 826 825 827 fname = (doc.file_name != NULL) ? doc.file_name : "<unnamed>";828 829 console_ goto(con, 0, scr_rows - 1);830 console_set_ color(con, COLOR_WHITE, COLOR_BLACK, 0);831 n = printf(" %d, %d: File '%s'. Ctrl-Q Quit Ctrl-S Save "826 const char *fname = (doc.file_name != NULL) ? doc.file_name : "<unnamed>"; 827 828 console_set_pos(con, 0, scr_rows - 1); 829 console_set_style(con, STYLE_INVERTED); 830 int n = printf(" %d, %d: File '%s'. Ctrl-Q Quit Ctrl-S Save " 832 831 "Ctrl-E Save As", coord.row, coord.column, fname); 833 printf("%*s", scr_columns - 1 - n, ""); 832 833 int pos = scr_columns - 1 - n; 834 printf("%*s", pos, ""); 834 835 fflush(stdout); 835 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);836 console_set_style(con, STYLE_NORMAL); 836 837 837 838 pane.rflags |= REDRAW_CARET; … … 847 848 848 849 spt_get_coord(&caret_pt, &coord); 849 console_ goto(con, coord.column - pane.sh_column,850 console_set_pos(con, coord.column - pane.sh_column, 850 851 coord.row - pane.sh_row); 851 852 } … … 1152 1153 static void status_display(char const *str) 1153 1154 { 1154 console_goto(con, 0, scr_rows - 1); 1155 console_set_color(con, COLOR_WHITE, COLOR_BLACK, 0); 1156 printf(" %*s ", -(scr_columns - 3), str); 1155 console_set_pos(con, 0, scr_rows - 1); 1156 console_set_style(con, STYLE_INVERTED); 1157 1158 int pos = -(scr_columns - 3); 1159 printf(" %*s ", pos, str); 1157 1160 fflush(stdout); 1158 console_set_ color(con, COLOR_BLACK, COLOR_WHITE, 0);1161 console_set_style(con, STYLE_NORMAL); 1159 1162 1160 1163 pane.rflags |= REDRAW_CARET;
Note:
See TracChangeset
for help on using the changeset viewer.