Sept 2024
I noticed that LXL is slow when reading large XML files under PUC-Lua. The problem is caused by how the library scans the document for valid XML code points. I made some changes to help…
I noticed that LXL is slow when reading large XML files under PUC-Lua. The problem is caused by how the library scans the document for valid XML code points. I made some changes to help…
Uploaded LuaTree, a partially complete Lua source parser.
No project work this month. I’ll stop posting until I have something to write about. (Nothing serious, just poor time management and the programming equivalent of writer’s block.)
Made a dropdown box widget. The single-line text box widget started in November is mostly operational now. Merged the two scrolling register sets (scr, scr2) into one (just scr). uiGraphics: Added a wrapper to setScissor…
I moved ProdUI to a public Git repo. It’s not ready for general use, but it should work with LÖVE 11.4, 11.5 and 12.0-development if you want to take a look. Wrote some UI Context…
Reorganized the theming and skinning system: In August, I added special fields that described how to reach theme objects. For example, skin[“*tex_side”] = “textures/side” would eventually lead to the assignment skin.tex_side = resources.textures.side. This was…
Wrote utf8Check and updated utf8Tools. I thought that Lua 5.3’s utf8.len() was suitable for validating strings in LÖVE, but it will allow some invalid code points through that LÖVE rejects, like surrogate pairs. Minor work…
Rewrote drawing code for the tabular menu widget. It’s now easier to see the contents of dragged columns. Started a ListBox widget. Scroll bar improvements: Scroll bar breadth and button length can now be overridden…
Updated QuadSlice to v1.3.0. This is a major rewrite, with better support for subsets of the 3×3 9-slice grid and the ability to toggle each tile on or off. Also updated Astro to v1.1.0, with…
Wrote a pair of texture atlas modules. AtlasB uses a binary tree packing algorithm to fit rectangles into square layouts. AtlasQ uses a quadtree to place and remove sub-textures with power-of-two dimensions within a larger…