Changeset d68239a1 in mainline for uspace/lib/ui/include


Ignore:
Timestamp:
2022-04-04T14:48:41Z (3 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
86fff971
Parents:
0d1d0ea
git-author:
Jiri Svoboda <jiri@…> (2022-04-03 17:48:17)
git-committer:
Jiri Svoboda <jiri@…> (2022-04-04 14:48:41)
Message:

Scrollbar needs custom button decorations

Push button now allows setting a 'custom decoration' which means
instead of painting the button text a callback function is invoked
to paint the decoration.

Location:
uspace/lib/ui/include
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/include/types/ui/pbutton.h

    r0d1d0ea rd68239a1  
    3737#define _UI_TYPES_PBUTTON_H
    3838
     39#include <errno.h>
     40#include <gfx/coord.h>
     41
    3942struct ui_pbutton;
    4043typedef struct ui_pbutton ui_pbutton_t;
     
    4750} ui_pbutton_cb_t;
    4851
     52/** Push button decoration ops */
     53typedef struct ui_pbutton_decor_ops {
     54        errno_t (*paint)(ui_pbutton_t *, void *, gfx_coord2_t *);
     55} ui_pbutton_decor_ops_t;
     56
    4957#endif
    5058
  • uspace/lib/ui/include/ui/paint.h

    r0d1d0ea rd68239a1  
    5555extern errno_t ui_paint_filled_circle(gfx_context_t *, gfx_coord2_t *,
    5656    gfx_coord_t, ui_fcircle_part_t);
     57extern errno_t ui_paint_up_triangle(gfx_context_t *, gfx_coord2_t *,
     58    gfx_coord_t);
     59extern errno_t ui_paint_down_triangle(gfx_context_t *, gfx_coord2_t *,
     60    gfx_coord_t);
     61extern errno_t ui_paint_left_triangle(gfx_context_t *, gfx_coord2_t *,
     62    gfx_coord_t);
     63extern errno_t ui_paint_right_triangle(gfx_context_t *, gfx_coord2_t *,
     64    gfx_coord_t);
    5765extern errno_t ui_paint_text_box(ui_resource_t *, gfx_rect_t *,
    5866    ui_box_style_t, gfx_color_t *);
  • uspace/lib/ui/include/ui/pbutton.h

    r0d1d0ea rd68239a1  
    11/*
    2  * Copyright (c) 2020 Jiri Svoboda
     2 * Copyright (c) 2022 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    5151extern ui_control_t *ui_pbutton_ctl(ui_pbutton_t *);
    5252extern void ui_pbutton_set_cb(ui_pbutton_t *, ui_pbutton_cb_t *, void *);
     53extern void ui_pbutton_set_decor_ops(ui_pbutton_t *, ui_pbutton_decor_ops_t *,
     54    void *);
    5355extern void ui_pbutton_set_rect(ui_pbutton_t *, gfx_rect_t *);
    5456extern void ui_pbutton_set_default(ui_pbutton_t *, bool);
Note: See TracChangeset for help on using the changeset viewer.