Commit Graph

103 Commits

Author SHA1 Message Date
Ed_
2f2253f12c misc changes
* Decided to not have a state scope (going to be more ganular)
* Fixes to settings_menu (prepping to convert to window after log scope is done)
2024-12-30 19:39:41 -05:00
Ed_
c2476ab854 Progress on window widget, minor refactor for layout directions structs 2024-12-30 19:38:22 -05:00
Ed_
68b712acc6 Fix to ui_box_tranverse_next_depth_first not taking into account a parent limit
For non-root traversal
2024-12-30 19:37:36 -05:00
Ed_
495e14194e Began to setup a UI_Window (generalized window widget) 2024-12-30 15:01:37 -05:00
Ed_
841260849e more reduction of direct mutuable state referencing 2024-12-30 13:26:14 -05:00
Ed_
7ed0010761 move app/ui_theme to ui/widget_theme 2024-12-30 12:50:21 -05:00
Ed_
4b3665ad98 Made logger and state scope files (going to be metric & logging viewer ui for the app. 2024-12-30 12:23:33 -05:00
Ed_
8905105d40 Moved settings menu to its own file, got min_size based on content working (only for the settings menu) 2024-12-30 12:22:58 -05:00
Ed_
57d51fc7b1 Began to reduce direct referencing of mutable state struct 2024-12-30 12:22:26 -05:00
Ed_
7488a6828e Text improvements
* Added clear_atlas_region_caches & clear_shape_cache to VEFontCache (Used on hot-reload by the pototype's font provider)
* Made glyph_draw's over_sample a vec2 for initialization (incase user wants to do some float value multiple of 4x4)
* ADVANCE_SNAP_SMALLFONT_SIZE made a runtime option: Shaper_Context.adv_snap_small_font_threshold
* Large imporvement to text hinting and general rendering of text
2024-12-29 17:30:00 -05:00
Ed_
7eab6f9a7f WIP: attempt to improve text rendering 2024-12-29 10:20:06 -05:00
Ed_
292d1b58b5 finishex exposing cam zoom settings to the wiget menu and the font size canvas scalaar 2024-11-30 04:51:03 -05:00
Ed_
dd2f6e9c71 Finished cam_zoom_mode settings entry, reduced anchor and alignment contraints for ui_layout_children_<> procs 2024-11-30 02:34:11 -05:00
Ed_
7f8a068268 titles for the zoom mode setting menu btns aren't behaving correctly... 2024-11-30 01:04:32 -05:00
Ed_
eba9ec8a30 changed engine_refresh_hz setting to use the InputBox widget 2024-11-29 23:25:24 -05:00
Ed_
533da2cdfb made intial impl for UI_TextInputBox, used it with min and max cam zoom settings ui 2024-11-29 23:17:27 -05:00
Ed_
f6ba5b2638 minor cleanup before generalization 2024-11-29 20:29:26 -05:00
Ed_
898c389bb0 prototype cursor done 2024-11-29 20:11:08 -05:00
Ed_
c62bf2cf07 refinements to input box prototype
Added constraints, visual feedback blink when bad input, enter can confirm setting

Adding proto-text cursor next
2024-11-29 17:46:22 -05:00
Ed_
36678c1127 Fixes for nov 7 breaking changes to sokol_gfx 2024-11-26 10:50:26 -05:00
Ed_
cfc1a802d5 fix for changes to sokol_gfx.Filter.NONE to NEAREST 2024-09-09 13:26:59 -04:00
Ed_
e793392e85 force rename lower 2024-07-01 16:14:33 -04:00
Ed_
d797762702 fix for harfbuzz, remove raylib from update_deps.ps1 2024-07-01 01:24:43 -04:00
Ed_
331046f590 Remove excess content from VEFontCache (keeping it only in its repo) 2024-06-30 21:53:42 -04:00
Ed_
0655ade456 Support for rounded rectangles & borders (not the best implementation...) 2024-06-30 13:37:24 -04:00
Ed_
2698670890 Finally reached parity pre-rendering overhaul 2024-06-29 23:49:12 -04:00
Ed_
597c88c6b7 Misc + made a more controlled digital zoom
Trying to get digital zoom to closer target levels that would match specific even font sizes

Various other changes from iterating on VEFontCache
2024-06-29 22:36:22 -04:00
Ed_
93e43c2b19 Updates for getting get_font_vertical_metrics, + other cleanup 2024-06-28 17:39:28 -04:00
Ed_
12741a228d mostly formatting/name changes and other misc stuff 2024-06-28 03:27:25 -04:00
Ed_
e6ccdd90d1 changes to sectr module based on VEFontCache changes 2024-06-26 15:23:44 -04:00
Ed_
9d0cc125a9 Misc changes
* Made refactor rende procedures to specify dependencies instead of directly grabbing from state singleton
2024-06-26 06:03:00 -04:00
Ed_
1533a14a1b misc changes
* draw_text_string_pos_extent_zoomed can now oversample text futher (if desired)
* render_ui_via_box_tree has a rudimentary render pass layering optimization

Add support for the slab allocator to accept arbitrary alignments (odin's map container needs it)
Messing around with 64-byte alignment as the default for the allocator...
2024-06-25 19:13:41 -04:00
Ed_
1fe741034d wip : trying to fix the workspace view bounds detection 2024-06-25 02:38:08 -04:00
Ed_
894c3fee97 Fix hot-reload 2024-06-24 23:38:53 -04:00
Ed_
08932c8c99 Fixes to test_whitespace_ast 2024-06-24 23:19:18 -04:00
Ed_
6f722026ce Text rendering is now around parity (if not better) than what was done before with raylib
Performance still sucks since the rendering implementation is subpar
2024-06-24 23:19:08 -04:00
Ed_
c93c0ed567 Minor lifting in the render side, getting ready to just hunker down and take notes on whats next
* VEFontCache needs to get fixed up (possibly bring back ELFHash)
  * Problably going to do conversion early to odin's array and map usage
* Need get the quad tree setup for the ui so that I can do fast and efficient traversal for the layer based rendering.
2024-06-24 16:36:22 -04:00
Ed_
0d9623c340 layer text rendering works, ui has issues, there is perf problems
* Added todos for VEFontCache
* Going be remaking the direct box traversal rendering again, I'll keep both layer based and it as a option to switch between
* Need to implement a quad tree for the ui boxes to help with collision test traversal
2024-06-24 11:29:44 -04:00
Ed_
dee8fc7ef9 layer text rendering is working! 2024-06-23 21:32:00 -04:00
Ed_
7d41fcc335 wip : trying to get layered text rendering working 2024-06-23 20:22:36 -04:00
Ed_
55b80da8e5 Fixed input event buffer issues
Queue doesn't properly act as a ring buffer had to roll my own.
I want to make a allocated ring buffer as well...
2024-06-23 13:59:04 -04:00
Ed_
ce1d31f0d4 Progress on fleshing out rendering (Getting ui ready to render in "layer batches") 2024-06-23 02:47:13 -04:00
Ed_
2b83b69745 Converted string cache table to use HMapChained, initial impl for ui_box_traverse_next_layer_based 2024-06-21 16:33:15 -04:00
Ed_
a560222d5d Fixed a long-standing issue with the chained hashmap (finally) 2024-06-21 00:26:29 -04:00
Ed_
c405c47e6c mem tracker updates 2024-06-20 15:36:47 -04:00
Ed_
489faf5515 Misc changes (refactors, notes) 2024-06-20 14:39:50 -04:00
Ed_
5d6f996d3c Finished fixing input back to prev-sokol feature parity 2024-06-19 18:09:11 -04:00
Ed_
59ed4d9dd6 fix hot-reload, starting to setup proper rendering again.
* Added hot_reload, measure_text_size to VEFontCache
2024-06-19 02:34:02 -04:00
Ed_
4b8c4d0c2c Updated render testing str 2024-06-18 17:56:34 -04:00
Ed_
05ecad8f56 sokol gp rectangle demo works! 2024-06-18 17:24:07 -04:00