Welcome to PersistentControls’s documentation!
Persistent objects are simply the objects which automatically save their state
when they are destroyed and restore it when they are recreated, even during
another program invocation.
Persistent Object Overview
Most often, persistent objects are, in fact, persistent windows as it is especially
convenient to automatically restore the UI state when the program is restarted but
an object of any class can be made persistent. Moreover, persistence is implemented
in a non-intrusive way so that the original object class doesn’t need to be modified
at all in order to add support for saving and restoring its properties.
The persistence framework involves:
- PersistenceManager which all persistent objects register themselves with. This class
handles actual saving and restoring of persistent data as well as various global
aspects of persistence, e.g. it can be used to disable restoring the saved data;
- PersistentObject is the base class for all persistent objects or, rather, adaptors
for the persistent objects as this class main purpose is to provide the bridge between
the original class – which has no special persistence support – and PersistenceManager;
- PersistentHandlers which handle different kind of saving/restoring actions depending
on the widget kind.
Contents: