Most parts of the previous chapters have laid down a foundation of a portable C++ application. Now, it is time to show you how to join more parts together. In Chapter 7, Cross-platform UI and Input System, we discussed how to create a simple custom user interface in C++ and respond to user input. In both cases, we only implemented a single fixed behavior without explaining how to switch to another one without writing spaghetti code. The first paragraphs of this chapter introduced the concept of Behavior, which we now apply to our user interface.
We call a single fullscreen state of the user interface as Page. Thus, every different screen of the application is represented by the clGUIPage
class, which we annotate hereinafter.
Three main methods of clUIPage
are Render()
, Update()
, and OnTouch()
. The Render()
method renders a complete page with all child views. Update()
synchronizes the view with the application state. OnTouch()
reacts to user input. The clGUIPage...