Gregory's Software and Stuff

DevLog December 2019: CCAnimationEditor UI Revamp Part 1

Posted on 2019-12-09

So lately I've been hitting a lot of walls in my programming and it often takes me a while to get past them, on top of that I also have been under quite a lot of stress since with school and other real-life things, which is why there's been a lot of radio silence. Anyways, here's a summary of what I've been working on for the past few months.

I've managed to get most of the UI revamp stuff in place. As of now the revamps for sheet editor are done since that was rather easy, however the animation editor revamps are still rather buggy and crashes sometimes.

Also, I still haven't implemented the revamps for the array editor yet, since it's setup uses a separate page and would I plan on getting rid of that and just having it all on one page with a show/hide toggle button. The problem is that the UI code is inefficient and it feels like it's held together with tape. All of the labels and input controls are stored as individual UI properties in 2 arrays for each editor. This setup works fine for the sheet editor, since sheets don't have that many properties and none of them are arrays, no nothing needs to be changed after the file is loaded.

However, animations involve arrays which change in size. Since that involves a lot of controls and constantly having to regenerate and move around the controls to match the array's size, this causes the code setup to be very inefficient. As a temporary solution, I had the arrays be displayed on a separate page. This was easier to program but caused the UI workflow to be clunky and inefficient.

So to make the array re-sizing and show/hide functionality work I would have to implement functions that would automatically re-order the properties on the screen and insert/remove properties without re-generating it. For problems like this, it often takes a while to come up with a solution and a few days to a few weeks to implement it, depending on how big it is, how many walls I run into and how much time I have to work on it. Even by the time this is all done, it will probably still feel like a gaint mess.

Recently I've become rather laid back with my projects and I have school to work on, so I haven't been working on it as much right now. However, the holidays are coming up soon, so I should be able to get this done sometime during or after that depending on how smooth development goes. I'll post an update next month detailing my current progress, anyways goodbye and happy holdiays!