Commit Graph

26 Commits

Author SHA1 Message Date
ed 1fe741034d wip : trying to fix the workspace view bounds detection 2024-06-25 02:38:08 -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 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 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 489faf5515 Misc changes (refactors, notes) 2024-06-20 14:39:50 -04:00
ed 991e7a81c0 Progress on VEFontCache port, only cache_glyph_to_atlas & shape_text_uncached left 2024-06-04 18:44:12 -04:00
ed 1741532d64 Progress on VEFontCache port, working on freetype outline to stbtt shape 2024-06-03 17:43:15 -04:00
ed 9ba718254c lifted the hash maps and the string cache to the grime package 2024-05-31 20:51:30 -04:00
ed e84ec719b3 Progress on lifting the 'grime' module to its own package 2024-05-31 19:31:27 -04:00
ed f415eada0d Doing some heavy refactors on the container interfaces
Trying to set up their use to be more ideomatic to the core containers
2024-05-31 17:58:18 -04:00
ed 3998776f4b Beginning to lift the "grime" files to their own pacakge 2024-05-31 11:26:52 -04:00
ed 5c2f55148a zpl_hmap prefix to hmap_zpl, plus some todos to go back to builtin containers 2024-05-26 13:35:08 -04:00
ed 797ab227e9 Gut raylib usage from the codebase.
Going to either fully commit to sokol or if it fails, rolling the platform layer myself.
2024-05-25 11:52:23 -04:00
ed 13c3032dba Initial setup of sokol_gfx to replace the raylib impl for rendering.
Next I need to setup sokol_gp
2024-05-24 16:31:22 -04:00
ed cf81d3f9bd Renamed str_fmt_alloc to str_fmt, str_fmt to str_fmt_out, allocator convention enforcement in context
I'm enforcing aprintf it as the default formatter.
I changed up the context allocator assignment to reflect how I've been intending to allocation in startup & platform events vs tick.
Tick uses the frame slab's by default with transient on temp. Startup & platform events use the transient by default & for temp, with any use of the persistent allocator being explicit.
2024-05-22 17:13:56 -04:00
ed 405716e52b Mostly reviewing progress so far
Prepping in the background for swapping raylib with sokol.
2024-05-21 23:35:36 -04:00
ed 31bc207c75 Fixed the layout boxes & resize handles anchors & alignemnts 2024-05-21 11:50:53 -04:00
ed 17859a5eb9 Hopefully last design change to auto-layout algorithim
I'm sticking with not supporting the top-left alignment for default and instead going with bottom left.
This allows for 0,0 alignment to the "bottom left pivot" for a box and 1,1 to the "top-right pivot" of a box.
These naturally coincide with where the actual min-max points that define the box are for the coodrindate convention I decided to go with. I'll write docs to migitate confusion.

Now I just need to fix the layout presets I have for the currently existing constructions...
2024-05-21 11:06:51 -04:00
ed e5be246d30 Cleanup and setup of drop down widget
Got an initial variant of the drop down widget, not completely set on it..
I put some more time to figuring out how I'm going to be ideomatically constructing the widgets. screen.odin I think its getting pretty close to what it will be like.
I'm ready to start lifting the input box. I'll be adding the constraints when I lift it.

Added the option to toggle the debug text in screenspace
Added the fixes from the ui_layout_children_horizontally for margins to ui_layout_children_vertically

Known issue:
There is a bug with test_whitespace that forced me todo a null check on a box. Not sure why.
It needs to be redone anyway.. (compose it with the h/vboxes instead)

There is some sublime files added in, started to use it.
2024-05-20 22:05:52 -04:00
ed 275ffcf143 Got the first 'input box' to work. Did some changes to keyboard input
Renamed KeyboardKey to KeyCode, redid the encoding layout (preemtively getting ready for SDL later as well)

I got the input box working but it has no constraints and needs to be lifted. The scroll box construction does as well.
2024-05-19 11:06:09 -04:00
ed b137bc542c WIP: Stuff related to working on the settings menu + more
Moved core ui to its own folder.
Worked on theming (proper light and dark theme)
Began to work on the scroll box widget and input box constructions

I added back a script for flattening the codebase: gen_flattened_codebase.ps1
2024-05-19 01:21:51 -04:00
ed b30f3c3466 Restructured the codebase yet again but this time with compiler support for monlithic packages
So no need to stage generate symbolic links in a flat directory for the compiler
2024-05-16 17:27:48 -04:00