Ignore:
File:
1 edited

Legend:

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

    r211fd68 r266ec54  
    11/*
    2  * Copyright (c) 2024 Jiri Svoboda
     2 * Copyright (c) 2020 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    167167}
    168168
    169 /** Adjust font underline Y0.
    170  *
    171  * @param fedit Font editor
    172  */
    173 static void font_edit_adjust_underline_y0(font_edit_t *fedit,
    174     gfx_coord_t change)
    175 {
    176         gfx_font_metrics_t fmetrics;
    177 
    178         gfx_font_get_metrics(fedit->font, &fmetrics);
    179         fmetrics.underline_y0 += change;
    180         (void) gfx_font_set_metrics(fedit->font, &fmetrics);
    181 
    182         printf("New underline Y0: %d\n", fmetrics.underline_y0);
    183         font_edit_paint(fedit);
    184 }
    185 
    186 /** Adjust font underline Y1.
    187  *
    188  * @param fedit Font editor
    189  */
    190 static void font_edit_adjust_underline_y1(font_edit_t *fedit,
    191     gfx_coord_t change)
    192 {
    193         gfx_font_metrics_t fmetrics;
    194 
    195         gfx_font_get_metrics(fedit->font, &fmetrics);
    196         fmetrics.underline_y1 += change;
    197         (void) gfx_font_set_metrics(fedit->font, &fmetrics);
    198 
    199         printf("New underline Y1: %d\n", fmetrics.underline_y1);
    200         font_edit_paint(fedit);
    201 }
    202 
    203169/** Handle font editor close event.
    204170 *
     
    348314                font_edit_adjust_leading(fedit, +1);
    349315                break;
    350         case KC_U:
    351                 font_edit_adjust_underline_y0(fedit, -1);
    352                 break;
    353         case KC_I:
    354                 font_edit_adjust_underline_y0(fedit, +1);
    355                 break;
    356         case KC_O:
    357                 font_edit_adjust_underline_y1(fedit, -1);
    358                 break;
    359         case KC_P:
    360                 font_edit_adjust_underline_y1(fedit, +1);
    361                 break;
    362316        case KC_X:
    363317                (void) gfx_glyph_bmp_clear(fedit->gbmp);
     
    492446 * @param fedit Font editor
    493447 * @param x Starting X coordinate
    494  * @param y Starting Y coordinate
    495  * @param color Color
     448 * @Param y Starting Y coordinate
    496449 * @param str String
    497450 */
    498451static errno_t font_edit_paint_preview_str(font_edit_t *fedit,
    499     gfx_coord_t x, gfx_coord_t y, gfx_color_t *color, const char *str)
     452    gfx_coord_t x, gfx_coord_t y, const char *str)
    500453{
    501454        gfx_text_fmt_t fmt;
     
    503456
    504457        gfx_text_fmt_init(&fmt);
    505         fmt.font = fedit->font;
    506         fmt.color = color;
    507458
    508459        pos.x = x;
    509460        pos.y = y;
    510461
    511         return gfx_puttext(&pos, &fmt, str);
     462        return gfx_puttext(fedit->font, &pos, &fmt, str);
    512463}
    513464
     
    529480                goto error;
    530481
    531         rc = font_edit_paint_preview_str(fedit, 20, 20, color,
     482        rc = font_edit_paint_preview_str(fedit, 20, 20,
    532483            "ABCDEFGHIJKLMNOPQRSTUVWXYZ");
    533484        if (rc != EOK)
    534485                goto error;
    535486
    536         rc = font_edit_paint_preview_str(fedit, 20, 40, color,
     487        rc = font_edit_paint_preview_str(fedit, 20, 40,
    537488            "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG");
    538489        if (rc != EOK)
    539490                goto error;
    540491
    541         rc = font_edit_paint_preview_str(fedit, 20, 60, color,
     492        rc = font_edit_paint_preview_str(fedit, 20, 60,
    542493            "abcdefghijklmnopqrstuvwxyz");
    543494        if (rc != EOK)
    544495                goto error;
    545496
    546         rc = font_edit_paint_preview_str(fedit, 20, 80, color,
     497        rc = font_edit_paint_preview_str(fedit, 20, 80,
    547498            "the quick brown fox jumps over the lazy dog");
    548499        if (rc != EOK)
    549500                goto error;
    550501
    551         rc = font_edit_paint_preview_str(fedit, 20, 100, color,
     502        rc = font_edit_paint_preview_str(fedit, 20, 100,
    552503            "0123456789,./<>?;'\\:\"|[]{}`~!@#$%^&*()-_=+");
    553504        if (rc != EOK)
     
    568519        gfx_color_t *color = NULL;
    569520        gfx_rect_t rect;
    570         gfx_rect_t rect2;
    571521        gfx_rect_t grect;
    572522        gfx_font_metrics_t fmetrics;
     
    612562            fmetrics.leading, &rect);
    613563        rect.p1.x += 100;
    614 
    615         rc = gfx_fill_rect(fedit->gc, &rect);
    616         if (rc != EOK)
    617                 goto error;
    618 
    619         gfx_color_delete(color);
    620 
    621         /* Display underline */
    622 
    623         rc = gfx_color_new_rgb_i16(0x4000, 0x4000, 0, &color);
    624         if (rc != EOK)
    625                 goto error;
    626 
    627         rc = gfx_set_color(fedit->gc, color);
    628         if (rc != EOK)
    629                 goto error;
    630 
    631         font_edit_gpix_to_disp(fedit, 0, fmetrics.underline_y0, &rect);
    632         font_edit_gpix_to_disp(fedit, 10, fmetrics.underline_y1, &rect2);
    633         rect.p1 = rect2.p0;
    634564
    635565        rc = gfx_fill_rect(fedit->gc, &rect);
     
    787717         * to rect
    788718         */
    789         ui_wdecor_rect_from_app(ui, params.style, &rect, &wrect);
     719        ui_wdecor_rect_from_app(params.style, &rect, &wrect);
    790720        off = wrect.p0;
    791721        gfx_rect_rtranslate(&off, &wrect, &params.rect);
Note: See TracChangeset for help on using the changeset viewer.