A change notifier is provided so that an application can be notified
of changes in the environment such as a switch in locale, crossing over past
midnight etc. The TChanges
enumerator lists the possible events.
This set of events may be extended as the operating system evolves.
An environment change notifier is an instance of a
CEnvironmentChangeNotifier
class. This is an active
object which allows an application to respond to change events
easily. These change events are generated by a Kernel side change notifier
service. The CEnvironmentChangeNotifier
class uses the Kernel side
change notifier service through an RChangeNotifier
handle.
An application supplies a call back function to
CEnvironmentChangeNotifier
when it is constructed.
When an outstanding request for change events completes,
CEnvironmentChangeNotifier
issues another request for change
events before calling the callback function.
The implementation of the callback function depends on the application but, typically, it would flag the changes of interest and, perhaps, schedule other changes either to the application's engine or the application's user interface.