Commit graph

980 commits

Author SHA1 Message Date
dd87dadd2f Call post_reshape when adding children to ui::single_container & ui::selector 2022-05-23 20:07:25 +03:00
88e48f2454 Support image-based cursors 2022-05-22 20:24:57 +03:00
284df5d92c Switch to hand cursor when clicking ui::label links 2022-05-22 19:35:41 +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
3f282356d7 Fix ui::label underline & strikethrough handling 2022-05-21 22:07:55 +03:00
2b228fbd32 Fix tagged text escaping & tests 2022-05-21 22:02:03 +03:00
183f5283e2 ui::label tagged text support: implement color tag 2022-05-21 21:45:23 +03:00
7b99158b4d Add color from text parsing 2022-05-21 21:44:38 +03:00
12733cf239 Remove obsolete code 2022-05-21 20:25:02 +03:00
d40dd82268 ui::label tags support: bold, uline & strike 2022-05-21 20:23:50 +03:00
711253bbfe Make sure ui::label shaping doesn't get stuck in infinite loop 2022-05-21 20:22:47 +03:00
057cf1c4c7 ui::label tagged text support wip: refactor internal data & shaping algorithm 2022-05-21 19:53:01 +03:00
8414af776a Add util::flag_set bitwise operators 2022-05-21 19:51:56 +03:00
ddd67b79f3 Support creating util::flag_set directly from representation type 2022-05-21 19:51:43 +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
5eab34a1dd Add util::flag_set for enum-based bitsets 2022-05-19 21:33:16 +03:00
9d8e83d957 Fix tagged_text escaping & add parse error tests 2022-05-19 17:35:10 +03:00
b524600da0 Add tagged_text description, parser & tests 2022-05-19 17:27:58 +03:00
abb95f87ae Add random::uniform<bool>(RNG) 2022-05-19 16:54:22 +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
9c744b9a21 Throw if set_child is called for default arrow button 2022-05-17 21:27:44 +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
ecfda88eac Tweak default fonts appearance & glyph locations 2022-05-17 19:57:37 +03:00
fcfd7138d1 Add lru cache implementation & tests 2022-05-17 18:22:31 +03:00
cbfd8f83de Add util::key_error for use in key-value containers in place of std::out_of_range 2022-05-17 18:22:17 +03:00
14a2e00b39 Add helper callable objects that always return the same result 2022-05-17 18:21:45 +03:00
bb971ff412 Explicitly mark util::function as non-copiable with (function &) arguments 2022-05-17 18:15:45 +03:00
5c582fb0cc Recursive parsers wip 2022-05-17 12:54:08 +03:00
a3d5a424dd Add sRGB <-> linear conversion for pixmaps 2022-05-17 12:54:08 +03:00
565ab68682 Add gfx::to_srgb/to_linear for colors 2022-05-17 12:54:08 +03:00
3de591394d Don't use unevaluated scope for assert in release 2022-05-17 12:54:08 +03:00
82e7164670 Support flushing output streams 2022-05-17 12:53:55 +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