I’m deep in user interface code again.

My previous approach was fine, but it was a quick and dirty implementation. I knew I’d need to clean it up before I can start adding more complex interface elements (like dialogs, menus, events – all the things you need in a game).

I’m still using a hybrid CSS/HTML + libgdx approach, based on the awesome CSSBox project. Over the last week I’ve added scrollbars, text input, event handling and bubbling, and basically rewrote the input processing stack to support multiple objects on the screen at once:

Testing out scroll bars, text fields, and buttons

Before I can call this done, there’s a couple of minor bugs that still need to be squished. I’d like to try adding a debug console, because the debug display is starting to get a bit overwhelming. And I’d like to clean up the hot-reloading code, as it’s quite slow. The grind continues!