I want to move keyboard input defs to the Python API. I laid the groundwork for it today.
From the JANKFILE:
- working on API endpoint `_registerInputAction`.
it will add "_py" as a suffix to the action string and register it along with other scene actions.
- Adding public Scene methods. These are on the base class with default of return `false`.
`bool Scene::registerActionInjected(int code, std::string name)` and `unregisterActionInjected`
the PythonScene (and other scenes that support injected user input) can override this method, check existing registrations, and return `true` when succeeding.
Also, upgraded to C++20 (g++ `c++2a`), mostly because I want to use map::contains.
Needed to make a checkpoint, gods forgive me for committing known broken code straight to master. The jam has in a sense already begun.
I tested a smaller solution in the xplat_concept repo earlier today.
In short, I'm going to build a janky method to add new + report existing UI elements. After that's done, the UI building should be done from python modules, hastening the UI design.
This is ugly and bad, I am truly sorry. We just need to get through 7DRL, so I can't make it pretty today.