Changeset de9992c in mainline for uspace/lib/ui/src/resource.c


Ignore:
Timestamp:
2020-10-16T23:34:55Z (5 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
1769693
Parents:
8ef48ece
git-author:
Jiri Svoboda <jiri@…> (2020-10-16 23:31:37)
git-committer:
Jiri Svoboda <jiri@…> (2020-10-16 23:34:55)
Message:

Factor out bevel drawing, store button colors in ui_resource_t

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/src/resource.c

    r8ef48ece rde9992c  
    5959        gfx_font_t *font = NULL;
    6060        gfx_font_info_t *finfo;
     61        gfx_color_t *btn_frame_color = NULL;
     62        gfx_color_t *btn_face_color = NULL;
     63        gfx_color_t *btn_text_color = NULL;
     64        gfx_color_t *btn_highlight_color = NULL;
     65        gfx_color_t *btn_shadow_color = NULL;
    6166        errno_t rc;
    6267
     
    7984                goto error;
    8085
     86        rc = gfx_color_new_rgb_i16(0, 0, 0, &btn_frame_color);
     87        if (rc != EOK)
     88                goto error;
     89
     90        rc = gfx_color_new_rgb_i16(0xc8c8, 0xc8c8, 0xc8c8, &btn_face_color);
     91        if (rc != EOK)
     92                goto error;
     93
     94        rc = gfx_color_new_rgb_i16(0, 0, 0, &btn_text_color);
     95        if (rc != EOK)
     96                goto error;
     97
     98        rc = gfx_color_new_rgb_i16(0xffff, 0xffff, 0xffff,
     99            &btn_highlight_color);
     100        if (rc != EOK)
     101                goto error;
     102
     103        rc = gfx_color_new_rgb_i16(0x8888, 0x8888, 0x8888, &btn_shadow_color);
     104        if (rc != EOK)
     105                goto error;
     106
    81107        resource->gc = gc;
    82108        resource->tface = tface;
    83109        resource->font = font;
     110        resource->btn_frame_color = btn_frame_color;
     111        resource->btn_face_color = btn_face_color;
     112        resource->btn_text_color = btn_text_color;
     113        resource->btn_highlight_color = btn_highlight_color;
     114        resource->btn_shadow_color = btn_shadow_color;
    84115        *rresource = resource;
    85116        return EOK;
    86117error:
     118        if (btn_frame_color != NULL)
     119                gfx_color_delete(btn_frame_color);
     120        if (btn_face_color != NULL)
     121                gfx_color_delete(btn_face_color);
     122        if (btn_text_color != NULL)
     123                gfx_color_delete(btn_text_color);
     124        if (btn_highlight_color != NULL)
     125                gfx_color_delete(btn_highlight_color);
     126        if (btn_shadow_color != NULL)
     127                gfx_color_delete(btn_shadow_color);
    87128        if (tface != NULL)
    88129                gfx_typeface_destroy(tface);
     
    100141                return;
    101142
     143        gfx_color_delete(resource->btn_frame_color);
     144        gfx_color_delete(resource->btn_face_color);
     145        gfx_color_delete(resource->btn_text_color);
     146        gfx_color_delete(resource->btn_highlight_color);
     147        gfx_color_delete(resource->btn_shadow_color);
     148
    102149        gfx_font_close(resource->font);
    103150        gfx_typeface_destroy(resource->tface);
Note: See TracChangeset for help on using the changeset viewer.