Closes #32. The base station no longer manages GLFW itself but relies on NanoGUI to initialize and manage screens. This has greatly reduces the complexity involved in setting up a screen. This refactoring added some new features, like multi-screen support and basic keyboard event handling.
New features
There is no longer a main screen associated with the session. An unlimited number of BasestationScreen objects can be created.
Screens process some basic keyboard events
Open console: ` (Grave Accent / Backtick)
Toggle fullscreen: F11
New window: Ctrl + N
Window size settings are now stored in a struct to ease config file creation in the future
The src/basestation is now on the include path for the base station. When including other files, use the full path (eg #include <controls/controller_manager>) instead of relative paths (#include "../controls/controller_manager")
Other findings
Basically any nanogui window styling change we want to make can be done in nanogui themes. This includes:
Summary
Closes #32. The base station no longer manages GLFW itself but relies on NanoGUI to initialize and manage screens. This has greatly reduces the complexity involved in setting up a screen. This refactoring added some new features, like multi-screen support and basic keyboard event handling.
New features
BasestationScreen
objects can be created.`
(Grave Accent / Backtick)F11
Ctrl + N
src/basestation
is now on the include path for the base station. When including other files, use the full path (eg#include <controls/controller_manager>
) instead of relative paths (#include "../controls/controller_manager"
)Other findings