Commit graph

135 commits

Author SHA1 Message Date
b9187c6b75 Compute proper caret position after clicking on ui::edit 2022-04-08 15:06:52 +03:00
26631cd564 Support cancelling editing text in ui::edit 2022-04-08 15:00:00 +03:00
e445b42724 Refactor ui::edit state & support focusing 2022-04-08 14:49:44 +03:00
bd6d0f9f93 Support focused ui elements 2022-04-08 14:49:09 +03:00
5066dd6494 Support a separate text bbox in ui::edit 2022-04-08 12:36:23 +03:00
f7568535b6 Add ui::edit text input element 2022-04-01 17:43:35 +03:00
7848d5a8b3 Add text input helpers in ui::element 2022-04-01 17:43:12 +03:00
ccb5570892 Add ui::text_input event 2022-04-01 17:42:42 +03:00
11b3e960d5 Support shaping utf32-text directly in ui::font 2022-04-01 17:38:39 +03:00
2b027e09e5 Support ui::positioner clamping the positioned element within provided shape 2022-03-31 20:15:37 +03:00
b6ddd70989 Implement ui element hinting support 2022-03-29 18:14:43 +03:00
682bbb8e90 Support non-notifying ui::spinbox::on_value_changed 2022-03-29 10:13:22 +03:00
b3d770f019 Make ui::frame a non-abstract class 2022-03-17 15:24:06 +03:00
e8a5ecfa3b Support ui::button repeating callback when kept pressed 2022-03-15 18:15:50 +03:00
35c26f1167 Support retrieving display label from a spinbox 2022-03-15 16:56:53 +03:00
64a8255c8c Support non-notifying ui::spinbox::set_value 2022-03-15 16:56:34 +03:00
56bade1b6b Add ui::table default constructor 2022-03-14 23:29:13 +03:00
d1c95ea142 Add ui::selector::clear 2022-03-13 17:20:50 +03:00
65a924dc69 Add ui::container_impl::clear 2022-03-13 17:20:34 +03:00
6c4c0d8305 Make ui::selector release children on destroy 2022-03-13 17:20:20 +03:00
11b904c890 Make ui::single_container release children on destroy 2022-03-13 17:20:02 +03:00
a3cda92f4c Add bold font support in ui::label 2022-03-12 17:50:33 +03:00
9e9fd738b7 Add ui::style::bold_font 2022-03-12 17:50:19 +03:00
ab6da3b212 Add 10x12 bold font 2022-03-12 17:50:07 +03:00
4c726e2eef Add ui::table base class 2022-03-12 01:16:18 +03:00
de352705f4 Cache computed row & column shapes in grid_layout 2022-03-12 01:16:01 +03:00
884a7c745b Optimize ui painter to not draw elements not in the current bbox 2022-03-11 14:51:49 +03:00
e237959894 Add ui::element::style_updated & own_style_updated replacing set_style(style()) 2022-03-11 13:11:47 +03:00
4dcac2a5ac Make ui styles update elements on change 2022-03-10 17:36:17 +03:00
83df1a82ef Add ui::spawn helper for creating dropdown lists 2022-03-10 12:23:23 +03:00
e83fef3369 Add ui::positioner element that helps with positioning a child on screen 2022-03-10 12:22:33 +03:00
e630316a05 Add ui::single_container for wrapper elements 2022-03-10 12:21:17 +03:00
4a6d3a9d88 Add ui helper for sending fake mouse move events to force mouseover status 2022-03-10 12:19:57 +03:00
73d05a5ec4 Add ui helpers for finding a specific element type in element tree 2022-03-10 12:19:26 +03:00
b215d52289 Reset ui::label cached state on style change 2022-03-09 19:55:43 +03:00
6412238e19 Make ui::style::inner_margin a 2D vector 2022-03-09 19:25:56 +03:00
f139b1ca1f Don't include all ui elements in element_factory.hpp, forward declare them instead 2022-03-09 16:44:43 +03:00
a8f51e93ac Add ui::selector (dropdown list component) 2022-03-08 13:02:39 +03:00
e3ab6d42b6 Add ui::container_impl::empty and resize 2022-03-08 13:02:18 +03:00
390df41f30 Add ui::progress_bar 2022-03-07 21:47:27 +03:00
ad53fdd7a4 Support ui::scroller preferred direction 2022-03-07 01:13:13 +03:00
2c0001be28 Make slider stick to max shift 2022-03-04 14:08:18 +03:00
22c270ff6f Add container_impl::size 2022-03-02 20:22:52 +03:00
223ce10e0f Make ui::event_interceptor only intercept mouse events when mouseover 2022-03-01 14:18:38 +03:00
512e9b51b7 Cache inf cached state for labels 2022-02-27 19:40:18 +03:00
5d116ad79a Change ui::key_interceptor to generic ui::event_interceptor 2022-02-27 12:15:48 +03:00
d233955a10 Finish scroller implementation: add scroll bars & scroll clamping 2022-02-20 13:51:19 +03:00
343894d06b Add non-notifying versions of slider methods 2022-02-19 23:04:36 +03:00
2004f8043a Don't post ui reshape if one if already posted 2022-02-19 16:36:17 +03:00
4281093b9d Add ui::key_interceptor 2022-02-19 13:00:39 +03:00