Class AbstractSplashHandler
- java.lang.Object
-
- org.eclipse.ui.splash.AbstractSplashHandler
-
- Direct Known Subclasses:
BasicSplashHandler
public abstract class AbstractSplashHandler extends Object
Base class for splash implementations. Please note that methods on this class will be invoked while the Workbench is being instantiated. As such, any resource provided by the workbench plug-in cannot be guaranteed to be available to this class while executing. No attempt should be made to accessIWorkbench
or any subordinate interfaces or resources.- Since:
- 3.3
-
-
Constructor Summary
Constructors Constructor Description AbstractSplashHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose()
Signal the handler to end the splash and dispose of any resources.IProgressMonitor
getBundleProgressMonitor()
Return the progress monitor responsible for showing bundle loading.Shell
getSplash()
Get theShell
associated with this splash screen.void
init(Shell splash)
Initialize this splash implementation.
-
-
-
Method Detail
-
init
public void init(Shell splash)
Initialize this splash implementation. This is called very early in the workbench lifecycle before any window is created. The provided shell will already have a background image provided to it but subclasses are free to customize the shell in whatever way they see fit. Subclasses should ensure that they call the base implementation of this method at some point after their own method is invoked.Calls to this method will be made from the UI thread.
- Parameters:
splash
- the splash shell
-
dispose
public void dispose()
Signal the handler to end the splash and dispose of any resources. Subclasses should ensure that they call the base implementation of this method at some point after their own method is invoked.Calls to this method will be made from the UI thread.
-
getBundleProgressMonitor
public IProgressMonitor getBundleProgressMonitor()
Return the progress monitor responsible for showing bundle loading. Default implementation returns a null progress monitor.Calls made to methods on this progress monitor may be made from non-UI threads so implementors must take care to ensure proper synchronization with the UI thread if necessary.
Please note that progress will only be shown if the "org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP" property has been set to
true
. Because this property defaults tofalse
RCP developers must set this property via aplugin_customization.ini
file or by setting the preference on the Platform UI preference store in theWorkbenchAdvisor.initialize(org.eclipse.ui.application.IWorkbenchConfigurer)
method if they wish to have progress reported on startup.- Returns:
- the progress monitor
- See Also:
NullProgressMonitor
,PlatformUI.getPreferenceStore()
,IWorkbenchPreferenceConstants.SHOW_PROGRESS_ON_STARTUP
,WorkbenchAdvisor.initialize(org.eclipse.ui.application.IWorkbenchConfigurer)
-
getSplash
public Shell getSplash()
Get theShell
associated with this splash screen. If this method returns a non-null
value prior to theinit(Shell)
being invoked then this shell will be used for the splash shell and it will subsequently be passed to theinit(Shell)
method. In this way a splash handler may participate in splash processes prior to the workbench startup.Calls to this method may be made from any thread. Implementors must take care to ensure proper synchronization with the UI thread if necessary.
- Returns:
- the splash shell
-
-