Open
Description
Currently the only way to obtain a IDialogSettingsProvider
seem to be by calling org.eclipse.ui.PlatformUI.getDialogSettingsProvider(Bundle)
but this is E3 API and require a running workbench.
This actually already calls into E4 land by using org.eclipse.e4.ui.internal.workbench.swt.DialogSettingsProviderService
but that's all internal.
To make this usable outside E3 also in plain E4 RCP applications the following should be done:
- Have an
IDialogSettingsProviderService
that has methodIDialogSettingsProviderService#getDialogSettingsProvider
and is published in the OSGi-Service Factory, this then would also allow to handel all the currently static parts with proper OSGi-DS injections, e.g currently tracked bundles and the event listeners are never cleaned up! - Allow to
@Inject IDialogSettingsProvider provider
into E4 Components by having a context function. Such context function should then be implemented as aServiceFactory
so it supply a proper object per bundle if used in an E4 component.