Class CustomizableIntroPart

All Implemented Interfaces:
EventListener, IAdaptable, IExecutableExtension, IRegistryChangeListener, IIntroPart

public final class CustomizableIntroPart extends IntroPart implements IRegistryChangeListener
A re-usable intro part that the Eclipse platform uses for its Out of the Box Experience. It is a customizable intro part where both its presentation, and its content can be customized based on a configuration. Both are contributed using the org.eclipse.ui.intro.config extension point. There are two presentations: an SWT browser based presentation, and a UI forms presentation. Based on the configuration, one is chosen on startup. If a Browser based presentation is selected, and the intro is being loaded on a platform that does not support the SWT Browser control, the default behavior is to degrade to UI forms presentation. Content displayed in this intro part can be static or dynamic. Static is html files, dynamic is markup in content files. Again, both of which can be specified using the above extension point.

Memento Support: This intro part tries to restore its previous state when possible. The state of the intro page is remembered, along with which standby content content part was opened. IStandbyContent parts are passed the Intro's memento shortly after construction, and are expected to restore there own state based on the memento. The customizable intro part handles there initial creation on load, and leaves restoring state to content part. Same with saving state. The memento is passed shortly before shutdown to enable storing of part specific data. Note: This class was made public for re-use, as-is, as a valid class for the org.eclipse.ui.intro extension point. It is not intended to be subclassed or used otherwise.

Since:
3.0
  • Constructor Details

    • CustomizableIntroPart

      public CustomizableIntroPart()
  • Method Details

    • init

      public void init(IIntroSite site, IMemento memento) throws PartInitException
      Description copied from class: IntroPart
      The base implementation of this IIntroPartmethod ignores the memento and initializes the part in a fresh state. Subclasses may extend to perform any state restoration, but must call the super method.
      Specified by:
      init in interface IIntroPart
      Overrides:
      init in class IntroPart
      Parameters:
      site - the intro site
      memento - the intro part state or null if there is no previous saved state
      Throws:
      PartInitException - if this part was not initialized successfully
    • createPartControl

      public void createPartControl(Composite parent)
      Creates the UI based on how the InroPart has been configured.
      Specified by:
      createPartControl in interface IIntroPart
      Specified by:
      createPartControl in class IntroPart
      Parameters:
      parent - the parent control
      See Also:
    • standbyStateChanged

      public void standbyStateChanged(boolean standby)
      Description copied from interface: IIntroPart
      Sets the standby state of this intro part. An intro part should render itself differently in the full and standby modes. In standby mode, the part should be partially visible to the user but otherwise allow them to work. In full mode, the part should be fully visible and be the center of the user's attention.

      This method is automatically called by the workbench at appropriate times. Clients must not call this method directly (call IIntroManager.setIntroStandby(IIntroPart, boolean) instead.

      Specified by:
      standbyStateChanged in interface IIntroPart
      Parameters:
      standby - true to put this part in its partially visible standy mode, and false to make it fully visible
    • setFocus

      public void setFocus()
      Description copied from interface: IIntroPart
      Asks this part to take focus within the workbench.

      Clients should not call this method (the workbench calls this method at appropriate times). To have the workbench activate a part, use IIntroManager.showIntro(IWorkbenchWindow, boolean).

      Specified by:
      setFocus in interface IIntroPart
      Specified by:
      setFocus in class IntroPart
    • dispose

      public void dispose()
      Description copied from class: IntroPart
      The IntroPart implementation of this IIntroPart method disposes the title image loaded by setInitializationData. Subclasses may extend.
      Specified by:
      dispose in interface IIntroPart
      Overrides:
      dispose in class IntroPart
    • getControl

      public Control getControl()
      Returns the primary control associated with this Intro part.
      Returns:
      the SWT control which displays this Intro part's content, or null if this standby part's controls have not yet been created.
    • saveState

      public void saveState(IMemento memento)
      Description copied from class: IntroPart
      The base implementation of this IIntroPart method does nothing. Subclasses may override.
      Specified by:
      saveState in interface IIntroPart
      Overrides:
      saveState in class IntroPart
      Parameters:
      memento - a memento to receive the object state
    • registryChanged

      public void registryChanged(IRegistryChangeEvent event)
      Support dynamic awarness.
      Specified by:
      registryChanged in interface IRegistryChangeListener
      Parameters:
      event - the registry change event
      See Also:
    • internal_isFinishedLoading

      public boolean internal_isFinishedLoading()