ContainerTC handles Brew MP pointer events for any type of Container and responds by:
- Moving focus between the children. On EVT_POINTER_DOWN, ContainerTC
checks if the event is for a child that does not currently have focus. If that is the case, it will ask the child widget if it can take focus (using EVT_WDG_CANTAKEFOCUS) and move focus to this child widget, if it can take focus. (This will result in EVT_MDL_FOCUS_CHANGE viewmodel event).
- Localizing all events and passing them to the child widgets.
ContainerTC processes all EVT_POINTER_XXX events. After it determines the child widget to which the event needs to be sent, it localizes the event in the child widget's co-ordinate system and passes it to that widget.
Note that the above ContainerTC behavior is implemented by containers themselves by default, i.e. Containers do not need any explicit controller for this behavior. However, applications can create this controller and use this, if they are interested in overriding the behavior.