1d852f875b(A1) change render method to now allow arbitary render targets. This is for drawing child elements on a gridJohn McCardle2024-04-28 13:03:30 -0400
3b86089128Delete some comments, notes from writing reprJohn McCardle2024-04-21 12:45:42 -0400
2cb7339535UIGrid.h/.cpp cleanup. I have reservations about the UIEntityCollection[Iter] classes + methods living there, but not enough to fix it right now.John McCardle2024-04-19 21:19:25 -0400
5d6af324bfUIFrame - moving static method into class namespace; no type object accessJohn McCardle2024-04-18 22:14:57 -0400
567218cd7bUIEntity fixes for the UI.h split: There are segfaults in cos_play, I may have missed a type usage or somethingJohn McCardle2024-04-18 21:23:49 -0400
9efe998a33some work on UICaption and UICollection; fixing segfaults resulting from mcrfpydef namepace TypeObject usageJohn McCardle2024-04-13 00:17:43 -0400
c186d8c7f3We are compiling again! Started refactoring UICaption to be more idiomaticJohn McCardle2024-04-10 23:10:15 -0400
1b6e2a709bStill not quite compiling; as predicted, a lot of interdependency and definition order bugs to untangleJohn McCardle2024-04-09 22:42:02 -0400
aa7553a818PyTexture clean up scribbles and experimentsJohn McCardle2024-04-09 22:41:20 -0400
a19781b56aMany hours of pain & research behind this small commit. Safe object building by not messing with types before interpreter is fully initializedJohn McCardle2024-04-07 15:21:17 -0400
159658521cFont mostly working, just a few weird bugs with the types of the default items added to the moduleJohn McCardle2024-03-31 21:41:45 -0400
fbf263a038Squashed commit of the following: [standardize_vector_handling]John McCardle2024-03-31 18:00:19 -0400
01706bd59dColor wrapup... Cutting PyLinkedColor to simplify my cursedly mortal, finite existenceJohn McCardle2024-03-30 21:13:31 -0400
3991ac13d6Still having segfaults with LinkedColor and captions (specifically outline color, but that might not be the actual cause). PyColor shaping back up in simplified form.John McCardle2024-03-28 23:50:50 -0400
06e24a1b27LinkedColor now reflecting changes to the linked color value. Needs set method + RGBA / color propertiesJohn McCardle2024-03-28 20:53:49 -0400
41509dfe96Addressing issues with PyColor by splitting behavior off into PyLinkedColorJohn McCardle2024-03-27 21:10:03 -0400
13a4ddf41bBuild runs again. PyColor objects are being instantiated, with bugs and no test of color changingJohn McCardle2024-03-26 23:02:00 -0400
1601fc7fabStill doesn't compile, but now the issue is in UI.h overcoupling. Progress!John McCardle2024-03-25 20:48:08 -0400
13672c8fdbDabbling around this morning; still not buildingJohn McCardle2024-03-24 21:19:37 -0400
d7228172c4Messy, but monumental: PyTexture::pyObject worksJohn McCardle2024-03-21 21:39:15 -0400
2cf8f94310Radical new example pattern for exposing a C++ class to PythonJohn McCardle2024-03-20 21:16:52 -0400
84a8886da2Fixed render issue with UIGrid / PyTexture: wasn't positioning or scaling properly after fetching spriteJohn McCardle2024-03-17 16:29:33 -0400
20f80c4114Fixed sprite indexing error in PyTexture; needs non-square sprite tests, but feeling confident!John McCardle2024-03-17 16:23:52 -0400
afd4ff1925good progress, we're building again. Issue with Grid (tile sprite) textures and I think the sprite indexes are being calculated wrong (x and y transposed?)John McCardle2024-03-16 21:53:24 -0400
bfd33102d1Squashed basically all the compile bugs in UISprite, but UIEntity and UIGrid use textures as well, so they need to be fixed too before the project will build againJohn McCardle2024-03-16 14:52:35 -0400
0a8f67e391Stress test is failing: By removing a timer to a function (from inside that function?) I can immediately cause a segfault.John McCardle2024-03-14 23:13:13 -0400
05d9f6a882wow, good test of Key and Click Callable classes. Cleanup, squash, and merge after I give it a lookover in daylight, though.John McCardle2024-03-12 22:27:12 -0400
2c3c1449eechore: changing comments to reflect TODOs conversion to issuesJohn McCardle2024-03-12 21:03:39 -0400
972768eb26inital PyCallable work; isolate very well behaved usage of PyObject references behind RAIIJohn McCardle2024-03-12 21:02:48 -0400
8739da8463Easy cleanup: delete files from the old Entity & UI system that were replaced in EngJam 2023 & 7DRL 2024John McCardle2024-03-09 08:59:39 -0500
45f07b7226Crypt of Sokoban: incomplete 7DRL game and engine stress-testJohn McCardle2024-03-08 22:26:40 -0500
9eb9562b9fdefault debug action fixes: UITestScene now uses the same grave hotkey to start REPLJohn McCardle2024-03-08 22:25:48 -0500
8e1552eec5Bounds checking on Grid point access, and correct the formula. Caused segfault on non-square grid size (and was transposing coordinates!)John McCardle2024-03-08 14:08:49 -0500
aa7f2ba605Segfault fixes. Switching scenes broke some assumptions. All PyObject calls from userspace now handle (discard) exceptions and return values.John McCardle2024-03-08 12:09:09 -0500
e8240cb380Exit functionality via game engine, because sys.exit was making a messJohn McCardle2024-03-08 10:17:26 -0500
4dd4f74120WIP / UIGrid and related elements added in one giant leap. see TODO / BUGFIX in several places for incomplete functionality.John McCardle2024-03-04 23:12:08 -0500
197211fa76pre-7DRL 2024 commit: got UIGrid to render. Needs entities, sprite tests, and python APIJohn McCardle2024-03-02 00:42:21 -0500
494658e5c3Sprite fixes. Changing sprite_number now changes the visible texture. Repr fixed.John McCardle2023-09-15 22:09:29 -0400
6e820af8c4mcrfpy.Sprite / PyUISpriteType compiles; too excited to fully test it (todo: modify the macro to get instances into and out of collections)John McCardle2023-09-13 23:23:08 -0400
cf485ef327Refactoring UISprite to play well with Python API and match existing code styles. Default constructor will have to go, which complicates the Python class slightly for mcrfpy.SpriteJohn McCardle2023-09-11 20:26:00 -0400
38b6a3cadeUICollection.append, tests are good for Caption and Frame objects created by Python to be drawn by the UITestSceneJohn McCardle2023-09-09 08:49:02 -0400
1bbb0aa5b8Caption object seems to be instantiable with a Font object now. Can't test actual rendering without a way to add objects to a collection.John McCardle2023-09-07 23:10:21 -0400
9486104377Converted py_instance to a macro (don't ask me why it doesn't work as a function) and first pass at UICaption functionality. UISprite C++ tests.John McCardle2023-09-03 20:40:52 -0400
5267287b05checkpoint: found that py_instance causes segfaults when called separately, but the same exact code inside of the _getitem method works fine. I can't explain that. I guess I'll turn it into a macro so the actions are inline and I can move on to finishing the other UI classes.John McCardle2023-09-03 12:46:23 -0400
b8af8bc870UIDrawable to Python object (untested, but compiling)John McCardle2023-09-02 19:52:11 -0400
0ef0a5d506Switched UIFrame and Scene to store their UIDrawables in shared_ptr to vector, instead of directly to vector. Every object that can be exposed to Python has to be safely shareable so it doesn't become a segfault, and that includes the UIDrawable collections AND the UIDrawable members. So we get the terrifying type for collections of child elements: 'std::shared_ptr<std::vector<std::shared_ptr<UIDrawable>>>'. May I be forgiven for my sinsJohn McCardle2023-09-02 14:00:48 -0400