A slight aside, if I may. Given it's my rambling journal that fair few read, I may as well.
I was thinking today about all of the recent threads on scene graphs in Game Programming as of late. Similar sorts of threads pop up from time to time; anyways I realised something. When I first started a bit with C++, one of my main goals was how to store stuff. Starting with "oh how do I arrange *.h/*.cpp" going to proper use of collections and even things like scene graphs.
And I realised I don't do that any more. Even when I was still using C++ primarily, I was no longer really focusing on how to store stuff. It wasn't interesting or important. I was focusing more on how to do things, or rather how functional aspects of the code needed to interact. And then I rather wondered if this was a common progression, and if there was yet another step(s) beyond; I figured it was likely on both counts.
Anyways, on to the progress!
- Added some static generators to create and return a Dialog base. Essentially a screen sized renderable (often translucent), with the keybinding info common to dialog fallthroughs (passup=false, kbopaque=true, close() on esc) already bound.
- Added an ActiveStatus Interface.
- Created a TextEntry field, which groups a TextGrabber, ActiveStatus, and blinking cursor (when active). It also takes a ActiveStateGroup (see below) param, and adds the common bindings (active on click, change on tab/enter) if it is non-null.
- Created an ActiveStateGroup class, to handle textentry fields and radio buttons so that only one is ever 'On'.
- Added a 'clear on enter' bool for TextGrabbers.
- Debugged Additions (I actually do this for every progress report, though usually the debugging is minimal)
These changes should lead to a 'Connect to:' dialog for my next work.