Commit graph

188 commits

Author SHA1 Message Date
ebdd90c520 Add ui::painter::draw_triangle with per-vertex colors 2022-05-25 22:53:20 +03:00
78c573b091 Rearrange ui::element field for less padding 2022-05-25 16:16:18 +03:00
b1d9c2c08d Support creating labels with tagged text in ui::element_factory 2022-05-25 13:18:07 +03:00
945b126e64 Post mouseover callback when ui::selector is removed from it's parent 2022-05-23 20:41:43 +03:00
f0cf916b85 Implement ui::label link tag 2022-05-22 19:28:14 +03:00
9300dc6779 Support color tag in ui::label 2022-05-22 11:16:01 +03:00
e51480db0a Support setting image_provider in ui::label 2022-05-22 11:15:52 +03:00
e7a1d1b265 Add ui::image_provider interface 2022-05-22 11:15:15 +03:00
183f5283e2 ui::label tagged text support: implement color tag 2022-05-21 21:45:23 +03:00
d40dd82268 ui::label tags support: bold, uline & strike 2022-05-21 20:23:50 +03:00
057cf1c4c7 ui::label tagged text support wip: refactor internal data & shaping algorithm 2022-05-21 19:53:01 +03:00
98b8a324d0 Support setting initial pen position & retrieving final pen position in font text shaping 2022-05-21 19:51:07 +03:00
a9de6232de Implement underline & strikethrough in ui::label 2022-05-20 17:05:51 +03:00
b9b3e7577b Add strikethrough text option 2022-05-20 17:05:01 +03:00
bedb8c9faf Remove label font_type setting & move it to style 2022-05-19 21:33:48 +03:00
b524600da0 Add tagged_text description, parser & tests 2022-05-19 17:27:58 +03:00
43c18eb4d2 Remove ui::painter::draw_glyph, introduce ui::painter::color_mode used for switching between mix/multiply in draw_image 2022-05-19 12:15:16 +03:00
395464ebd5 Remove draw_glyph using in ui::edit, cache raw images instead 2022-05-19 12:06:04 +03:00
35eaf17a3b Refactor ui::painter interface: gather draw_image options into a struct 2022-05-19 11:38:09 +03:00
f21fa3c2d6 Store texcoords as float in texture_view 2022-05-19 11:23:42 +03:00
77d3e6e3f2 Remove duplicated image draw API in ui::painter 2022-05-19 10:41:01 +03:00
329915ac1b Rich text label wip: store cached label state as a series of batches of texture views (NB: transparent labels are broken) 2022-05-18 22:45:35 +03:00
59de6682ba Support retrieving buttons from spinbox 2022-05-17 23:16:26 +03:00
3f9275b2ad Remove toggle_button, make checkbox support children by default 2022-05-17 22:03:40 +03:00
bfb8ba407b Remove rich_button, make any button able to contain a child element 2022-05-17 21:25:01 +03:00
0f95a5bcee Make progress_bar::label const 2022-05-17 21:01:20 +03:00
16036268f5 Make convenient function in ui::element_factory to create a progress bar with a label 2022-05-17 20:24:58 +03:00
c706032df5 Make ui::progress_bar capable of having any element as a child 2022-05-17 20:24:39 +03:00
a56cdcfc73 Make ui::single_container::child const 2022-05-16 12:10:39 +03:00
62cfba7711 Add ui::frame::width/height_constraints 2022-05-16 12:10:21 +03:00
9a2c562eec Add ui::asymmetric element that supports width_first() reshaping 2022-05-16 12:09:58 +03:00
0b3ef5f4f5 Allow storing arbitrary user data in ui::element 2022-05-15 15:40:55 +03:00
4c106cc4c6 Make ui::element store style as non-const 2022-05-15 13:17:20 +03:00
49e3e2e07b Mark ui::element::style_updated/own_style_updated as const 2022-05-14 16:05:24 +03:00
f66e8ceded Fix uninitialized ui::edit font_type 2022-05-14 16:05:01 +03:00
f01feb7b7f Remove ui::edit::own_style_updated override 2022-05-14 16:04:50 +03:00
922daee6d2 Support whole-word deletion in ui::edit 2022-05-10 12:01:33 +03:00
9a56228231 Support on_text_changed callback in ui::edit 2022-05-08 11:56:45 +03:00
a368eb32ff Support selector canceled callback in ui::spawn 2022-05-03 20:14:14 +03:00
fe1769cf46 Support retrieving item bboxes in ui::selector 2022-05-03 15:43:55 +03:00
8354ee1753 Support mouseover callback in ui::selector 2022-05-03 15:43:37 +03:00
b5145b9596 Support on_scroll event in ui::scroller 2022-05-03 14:24:14 +03:00
3760741ba6 Refactor ui::selector to support selector hierarchies 2022-05-01 13:16:48 +03:00
26ca210ecf Make ui::selector callback retrievable so that ui::spawn can replace it 2022-04-30 20:42:45 +03:00
1cdfcc5aa5 Support a separate callback for ui::selector submenu selection 2022-04-30 20:31:34 +03:00
a6b89e3d54 Make ui::spawn(selector) accept floating-point position directly 2022-04-30 18:34:19 +03:00
55d2a48ff2 Support retrieving item y-range from ui::selector 2022-04-30 16:52:23 +03:00
cc6691c633 Support submenu options in ui::selector 2022-04-30 16:47:54 +03:00
727db57092 Mark certain ui elements as transparent only if they don't have a hint 2022-04-29 14:53:35 +03:00
05f777f398 Make ui:🏷️:font_type an enum class 2022-04-29 11:12:48 +03:00