Changes in uspace/app/edit/edit.c [69cf3a4:c8444d8] in mainline


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/edit/edit.c

    r69cf3a4 rc8444d8  
    9191typedef struct {
    9292        char *file_name;
    93         sheet_t *sh;
     93        sheet_t sh;
    9494} doc_t;
    9595
     
    175175        coord_t coord;
    176176        bool new_file;
    177         int rc;
    178177
    179178        spt_t pt;
     
    190189
    191190        /* Start with an empty sheet. */
    192         rc = sheet_create(&doc.sh);
    193         if (rc != EOK) {
    194                 printf("Out of memory.\n");
    195                 return -1;
    196         }
     191        sheet_init(&doc.sh);
    197192
    198193        /* Place caret at the beginning of file. */
    199194        coord.row = coord.column = 1;
    200         sheet_get_cell_pt(doc.sh, &coord, dir_before, &pt);
    201         sheet_place_tag(doc.sh, &pt, &pane.caret_pos);
     195        sheet_get_cell_pt(&doc.sh, &coord, dir_before, &pt);
     196        sheet_place_tag(&doc.sh, &pt, &pane.caret_pos);
    202197        pane.ideal_column = coord.column;
    203198
     
    221216        /* Place selection start tag. */
    222217        tag_get_pt(&pane.caret_pos, &pt);
    223         sheet_place_tag(doc.sh, &pt, &pane.sel_start);
     218        sheet_place_tag(&doc.sh, &pt, &pane.sel_start);
    224219
    225220        /* Initial display */
     
    452447        if (select == false) {
    453448                /* Move sel_start to the same point as caret. */
    454                 sheet_remove_tag(doc.sh, &pane.sel_start);
     449                sheet_remove_tag(&doc.sh, &pane.sel_start);
    455450                tag_get_pt(&pane.caret_pos, &pt);
    456                 sheet_place_tag(doc.sh, &pt, &pane.sel_start);
     451                sheet_place_tag(&doc.sh, &pt, &pane.sel_start);
    457452        }
    458453
     
    675670
    676671        do {
    677                 sheet_copy_out(doc.sh, &sp, epos, buf, BUF_SIZE, &bep);
     672                sheet_copy_out(&doc.sh, &sp, epos, buf, BUF_SIZE, &bep);
    678673                bytes = str_size(buf);
    679674
     
    710705
    711706        while (true) {
    712                 sheet_copy_out(doc.sh, &sp, epos, &buf[bpos], buf_size - bpos,
     707                sheet_copy_out(&doc.sh, &sp, epos, &buf[bpos], buf_size - bpos,
    713708                    &bep);
    714709                bytes = str_size(&buf[bpos]);
     
    732727        int sh_rows, rows;
    733728
    734         sheet_get_num_rows(doc.sh, &sh_rows);
     729        sheet_get_num_rows(&doc.sh, &sh_rows);
    735730        rows = min(sh_rows - pane.sh_row + 1, pane.rows);
    736731
     
    802797                rbc.row = pane.sh_row + i;
    803798                rbc.column = pane.sh_column;
    804                 sheet_get_cell_pt(doc.sh, &rbc, dir_before, &rb);
     799                sheet_get_cell_pt(&doc.sh, &rbc, dir_before, &rb);
    805800
    806801                /* Ending point for row display */
    807802                rec.row = pane.sh_row + i;
    808803                rec.column = pane.sh_column + pane.columns;
    809                 sheet_get_cell_pt(doc.sh, &rec, dir_before, &re);
     804                sheet_get_cell_pt(&doc.sh, &rec, dir_before, &re);
    810805
    811806                /* Copy the text of the row to the buffer. */
    812                 sheet_copy_out(doc.sh, &rb, &re, row_buf, ROW_BUF_SIZE, &dep);
     807                sheet_copy_out(&doc.sh, &rb, &re, row_buf, ROW_BUF_SIZE, &dep);
    813808
    814809                /* Display text from the buffer. */
     
    879874        spt_t caret_pt;
    880875        coord_t coord;
    881         int last_row;
    882876
    883877        tag_get_pt(&pane.caret_pos, &caret_pt);
    884878        spt_get_coord(&caret_pt, &coord);
    885879
    886         sheet_get_num_rows(doc.sh, &last_row);
    887 
    888880        const char *fname = (doc.file_name != NULL) ? doc.file_name : "<unnamed>";
    889881
    890882        console_set_pos(con, 0, scr_rows - 1);
    891883        console_set_style(con, STYLE_INVERTED);
    892         int n = printf(" %d, %d (%d): File '%s'. Ctrl-Q Quit  Ctrl-S Save  "
    893             "Ctrl-E Save As", coord.row, coord.column, last_row, fname);
     884        int n = printf(" %d, %d: File '%s'. Ctrl-Q Quit  Ctrl-S Save  "
     885            "Ctrl-E Save As", coord.row, coord.column, fname);
    894886       
    895887        int pos = scr_columns - 1 - n;
     
    927919        cbuf[offs] = '\0';
    928920
    929         (void) sheet_insert(doc.sh, &pt, dir_before, cbuf);
     921        (void) sheet_insert(&doc.sh, &pt, dir_before, cbuf);
    930922
    931923        pane.rflags |= REDRAW_ROW;
     
    944936
    945937        coord.column -= 1;
    946         sheet_get_cell_pt(doc.sh, &coord, dir_before, &sp);
    947 
    948         (void) sheet_delete(doc.sh, &sp, &ep);
     938        sheet_get_cell_pt(&doc.sh, &coord, dir_before, &sp);
     939
     940        (void) sheet_delete(&doc.sh, &sp, &ep);
    949941
    950942        pane.rflags |= REDRAW_ROW;
     
    962954        spt_get_coord(&sp, &sc);
    963955
    964         sheet_get_cell_pt(doc.sh, &sc, dir_after, &ep);
     956        sheet_get_cell_pt(&doc.sh, &sc, dir_after, &ep);
    965957        spt_get_coord(&ep, &ec);
    966958
    967         (void) sheet_delete(doc.sh, &sp, &ep);
     959        (void) sheet_delete(&doc.sh, &sp, &ep);
    968960
    969961        pane.rflags |= REDRAW_ROW;
     
    10371029                else {
    10381030                        coord.row--;
    1039                         sheet_get_row_width(doc.sh, coord.row, &coord.column);
     1031                        sheet_get_row_width(&doc.sh, coord.row, &coord.column);
    10401032                }
    10411033        }
    10421034        if (drow > 0) {
    1043                 sheet_get_num_rows(doc.sh, &num_rows);
     1035                sheet_get_num_rows(&doc.sh, &num_rows);
    10441036                if (coord.row > num_rows) coord.row = num_rows;
    10451037        }
     
    10541046         * coordinates. The character can be wider than one cell (e.g. tab).
    10551047         */
    1056         sheet_get_cell_pt(doc.sh, &coord, align_dir, &pt);
    1057         sheet_remove_tag(doc.sh, &pane.caret_pos);
    1058         sheet_place_tag(doc.sh, &pt, &pane.caret_pos);
     1048        sheet_get_cell_pt(&doc.sh, &coord, align_dir, &pt);
     1049        sheet_remove_tag(&doc.sh, &pane.caret_pos);
     1050        sheet_place_tag(&doc.sh, &pt, &pane.caret_pos);
    10591051
    10601052        /* For non-vertical movement set the new value for @c ideal_column. */
     
    10761068                tag_get_pt(&pane.caret_pos, &pt);
    10771069
    1078                 sheet_remove_tag(doc.sh, &pane.sel_start);
    1079                 sheet_place_tag(doc.sh, &pt, &pane.sel_start);
     1070                sheet_remove_tag(&doc.sh, &pane.sel_start);
     1071                sheet_place_tag(&doc.sh, &pt, &pane.sel_start);
    10801072        } while (!pt_is_word_beginning(&pt));
    10811073
     
    10921084                tag_get_pt(&pane.caret_pos, &pt);
    10931085
    1094                 sheet_remove_tag(doc.sh, &pane.sel_start);
    1095                 sheet_place_tag(doc.sh, &pt, &pane.sel_start);
     1086                sheet_remove_tag(&doc.sh, &pane.sel_start);
     1087                sheet_place_tag(&doc.sh, &pt, &pane.sel_start);
    10961088        } while (!pt_is_word_beginning(&pt));
    10971089
     
    11711163
    11721164        if (rel < 0)
    1173                 sheet_delete(doc.sh, &pa, &pb);
     1165                sheet_delete(&doc.sh, &pa, &pb);
    11741166        else
    1175                 sheet_delete(doc.sh, &pb, &pa);
     1167                sheet_delete(&doc.sh, &pb, &pa);
    11761168
    11771169        if (ca.row == cb.row)
     
    11951187static void selection_sel_range(spt_t pa, spt_t pb)
    11961188{
    1197         sheet_remove_tag(doc.sh, &pane.sel_start);
    1198         sheet_place_tag(doc.sh, &pa, &pane.sel_start);
    1199         sheet_remove_tag(doc.sh, &pane.caret_pos);
    1200         sheet_place_tag(doc.sh, &pb, &pane.caret_pos);
     1189        sheet_remove_tag(&doc.sh, &pane.sel_start);
     1190        sheet_place_tag(&doc.sh, &pa, &pane.sel_start);
     1191        sheet_remove_tag(&doc.sh, &pane.caret_pos);
     1192        sheet_place_tag(&doc.sh, &pb, &pane.caret_pos);
    12011193
    12021194        pane.rflags |= REDRAW_TEXT;
     
    12811273
    12821274        coord.row = coord.column = 1;
    1283         sheet_get_cell_pt(doc.sh, &coord, dir_before, pt);
     1275        sheet_get_cell_pt(&doc.sh, &coord, dir_before, pt);
    12841276}
    12851277
     
    12901282        int num_rows;
    12911283
    1292         sheet_get_num_rows(doc.sh, &num_rows);
     1284        sheet_get_num_rows(&doc.sh, &num_rows);
    12931285        coord.row = num_rows + 1;
    12941286        coord.column = 1;
    12951287
    1296         sheet_get_cell_pt(doc.sh, &coord, dir_after, pt);
     1288        sheet_get_cell_pt(&doc.sh, &coord, dir_after, pt);
    12971289}
    12981290
     
    13051297        coord.column = 1;
    13061298
    1307         sheet_get_cell_pt(doc.sh, &coord, dir_before, spt);
     1299        sheet_get_cell_pt(&doc.sh, &coord, dir_before, spt);
    13081300}
    13091301
     
    13151307
    13161308        spt_get_coord(cpt, &coord);
    1317         sheet_get_row_width(doc.sh, coord.row, &row_width);
     1309        sheet_get_row_width(&doc.sh, coord.row, &row_width);
    13181310        coord.column = row_width - 1;
    13191311
    1320         sheet_get_cell_pt(doc.sh, &coord, dir_after, ept);
     1312        sheet_get_cell_pt(&doc.sh, &coord, dir_after, ept);
    13211313}
    13221314
     
    13441336
    13451337        coord.column -= 1;
    1346         sheet_get_cell_pt(doc.sh, &coord, dir_before, &lp);
     1338        sheet_get_cell_pt(&doc.sh, &coord, dir_before, &lp);
    13471339
    13481340        return pt_is_delimiter(&lp)
     
    13661358
    13671359        coord.column += 1;
    1368         sheet_get_cell_pt(doc.sh, &coord, dir_after, &rp);
     1360        sheet_get_cell_pt(&doc.sh, &coord, dir_after, &rp);
    13691361
    13701362        ch = range_get_str(pt, &rp);
     
    13921384
    13931385        coord.column += 1;
    1394         sheet_get_cell_pt(doc.sh, &coord, dir_after, &rp);
     1386        sheet_get_cell_pt(&doc.sh, &coord, dir_after, &rp);
    13951387
    13961388        ch = range_get_str(pt, &rp);
Note: See TracChangeset for help on using the changeset viewer.