# Class BasicSplashHandler

java.lang.Object
org.eclipse.ui.splash.AbstractSplashHandler
org.eclipse.ui.splash.BasicSplashHandler

public abstract class BasicSplashHandler extends AbstractSplashHandler
Basic splash implementation that provides an absolute positioned progress bar and message string that is hooked up to a progress monitor.

Since:
  3.3

## Constructor Summary

Constructors
Constructor
Description
`BasicSplashHandler()`

## Method Summary

Modifier and Type
Method
Description
`IProgressMonitor`
`getBundleProgressMonitor()`
Return the progress monitor responsible for showing bundle loading.
`protected Composite`
`getContent()`
Get the composite on which any supplemental controls should be drawn.
`protected Color`
`getForeground()`
Get the foreground text color.
`protected void`
`setForeground(RGB foregroundRGB)`
Set the foreground text color.
`protected void`
`setMessageRect(Rectangle messageRect)`
Set the location of the message text in the splash.
`protected void`
`setProgressRect(Rectangle progressRect)`
Set the location of the progress bar in the splash.

### Methods inherited from class AbstractSplashHandler

`dispose, getSplash, init`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### BasicSplashHandler

public BasicSplashHandler()

## Method Details

### getBundleProgressMonitor

public IProgressMonitor getBundleProgressMonitor()
Description copied from class: `AbstractSplashHandler`
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 to `false` RCP developers must set this property via a `plugin_customization.ini` file or by setting the preference on the Platform UI preference store in the `WorkbenchAdvisor.initialize(org.eclipse.ui.application.IWorkbenchConfigurer)` method if they wish to have progress reported on startup.

Overrides:
  `getBundleProgressMonitor` in class `AbstractSplashHandler`
Returns:
  the progress monitor
See Also:
  - `NullProgressMonitor`
  - `PlatformUI.getPreferenceStore()`
  - `IWorkbenchPreferenceConstants.SHOW_PROGRESS_ON_STARTUP`
  - `WorkbenchAdvisor.initialize(org.eclipse.ui.application.IWorkbenchConfigurer)`

### setForeground

protected void setForeground(RGB foregroundRGB)
Set the foreground text color. This method has no effect after `getBundleProgressMonitor()` has been invoked.

Parameters:
  `foregroundRGB` - the color

### getForeground

protected Color getForeground()
Get the foreground text color. This color should not be disposed by callers.

Returns:
  the foreground color

### setMessageRect

protected void setMessageRect(Rectangle messageRect)
Set the location of the message text in the splash. This method has no effect after `getBundleProgressMonitor()` has been invoked.

Parameters:
  `messageRect` - the location of the message text

### setProgressRect

protected void setProgressRect(Rectangle progressRect)
Set the location of the progress bar in the splash. This method has no effect after `getBundleProgressMonitor()` has been invoked.

Parameters:
  `progressRect` - the location of the progress bar

### getContent

protected Composite getContent()
Get the composite on which any supplemental controls should be drawn. This will not have a layout set and clients are responsible for setting the location of child controls manually.

This method must be called in the `AbstractSplashHandler.init(org.eclipse.swt.widgets.Shell)` method of a subclasses to ensure proper creation of controls

Please note that the default implementation of this method assumes that the `IProgressMonitor` returned from `getBundleProgressMonitor()` can be safely casted to a `Composite`. If this is not the case this method must be reimplemented to reflect the new progress controls.

Returns:
  the composite
See Also:
  - `AbstractSplashHandler.init(org.eclipse.swt.widgets.Shell)`