Files: gui/univbrowser.c, gui/undohistory.c
To provide an interface between the VRR kernel and the GTK viewing widgets, we implement the GtkTreeModel interface for several internal structures: the main object structure of universe, and the undo history. The implementations are the “VrrKernelStore” and “VrrUndoStore” objects derived from the GObject class and are used in GtkTreeView widgets. They are used in the Universe Browser window (The Universe Browser) and the Undo History window (The Undo History Window).
These objects implement only those features needed for viewing the structure contents, they do not enable changing them directly. When any kernel data change is announced by a hook, the interface emits the appropriate signals to inform the widgets about the change.