does not use a single _deviceDisplayInfo() function to configure its delegates, as causes binding updates to all delegates whenever any of the displayed delegate values change
uses a model of just service uids, rather than using the Global model delegates, as it does not need any of the extra data from those models
We could load delegates in this manner:
For each service type, create pages/settings/devicelist/delegates/DeviceListDelegate_<service-type>.qml.
The DeviceListPage ListView has a delegate that is a Loader, that loads the correct delegate URI based on the service type.
Have a base item DeviceListDelegate that can be extended for each delegate type.
This architecture will also make it easier to:
have custom delegates for each service type
provide third-party extensions to the Device List
In terms of the model, that can be a VeQItemModel or similar that provides the required uids.
DeviceListPage should be reworked so that it:
We could load delegates in this manner:
pages/settings/devicelist/delegates/DeviceListDelegate_<service-type>.qml
.This architecture will also make it easier to:
In terms of the model, that can be a VeQItemModel or similar that provides the required uids.
Example: