As a basis for T23296 we need to implement a base widget that can be used to implement different views on the data storage.
Such a base widget (DataStorageViewer) should have access to the data storage. It should be possible to filter the nodes in the data storage (using node predicates).
The idea is to allow developers to create their own concrete data storage view widget, without having to manage data storage node events or model selection events etc. The developer should only customize the view by providing a QtAbstractItemView and a QtAbstractItemModel.
The base class provides functions that are called on data storage node events and transforms model selection events into a list of currently selected data nodes.
The base class provides a signal / slot mechanism to send / receive selected data nodes to / from its local workbench view.