org.eclipse.jdt.debug.ui.launchConfigurations

## Class JavaJRETab

- java.lang.Object
- - org.eclipse.debug.ui.AbstractLaunchConfigurationTab
  - - org.eclipse.jdt.debug.ui.launchConfigurations.JavaLaunchTab
    - - org.eclipse.jdt.debug.ui.launchConfigurations.JavaJRETab

All Implemented Interfaces:
  ILaunchConfigurationTab, ILaunchConfigurationTab2

    public class JavaJRETab
    extends JavaLaunchTab

A launch configuration tab that displays and edits the VM install launch configuration attributes.

Clients may call `AbstractLaunchConfigurationTab.setHelpContextId(String)` on this tab prior to control creation to alter the default context help associated with this tab.

This class may be instantiated.

Since:
  2.0
Restriction:
  This class is not intended to be sub-classed by clients.

### Field Summary

Fields
`protected ILaunchConfigurationTab` `fDynamicTab`
`protected Composite` `fDynamicTabHolder`
`protected boolean` `fIsInitializing`
`protected org.eclipse.jdt.internal.debug.ui.jres.JREsComboBlock` `fJREBlock`
`protected ILaunchConfiguration` `fLaunchConfiguration`
`protected boolean` `fUseDynamicArea`
`protected ILaunchConfigurationWorkingCopy` `fWorkingCopy`

### Constructor Summary

Constructors
Constructor and Description
`JavaJRETab()` Constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `activated(ILaunchConfigurationWorkingCopy workingCopy)`
`void` `createControl(Composite parent)`
`void` `deactivated(ILaunchConfigurationWorkingCopy workingCopy)`
`void` `dispose()`
`protected org.eclipse.jdt.internal.debug.ui.jres.JREDescriptor` `getDefaultJREDescriptor()`
`protected ILaunchConfigurationTab` `getDynamicTab()`
`protected Composite` `getDynamicTabHolder()`
`String` `getErrorMessage()` Overridden here so that any error message in the dynamic UI gets returned.
`String` `getId()`
`Image` `getImage()`
`protected IJavaProject` `getJavaProject()` Returns the Java project associated with the current config being edited, or `null` if none.
`protected ILaunchConfiguration` `getLaunchConfiguration()`
`protected ILaunchConfigurationWorkingCopy` `getLaunchConfigurationWorkingCopy()`
`String` `getName()`
`protected org.eclipse.jdt.internal.debug.ui.jres.JREDescriptor` `getSpecificJREDescriptor()`
`protected ILaunchConfigurationTab` `getTabForCurrentJRE()` Return the class that implements `ILaunchConfigurationTab` that is registered against the install type of the currently selected VM.
`protected void` `handleSelectedJREChanged()` Notification that the user changed the selection in the JRE combination box.
`void` `initializeFrom(ILaunchConfiguration configuration)`
`protected boolean` `isUseDynamicJREArea()`
`boolean` `isValid(ILaunchConfiguration config)`
`protected void` `loadDynamicJREArea()` Show the contributed piece of UI that was registered for the install type of the currently selected VM.
`void` `performApply(ILaunchConfigurationWorkingCopy configuration)`
`protected void` `selectJRE(String typeID, String vmName)`
`void` `setDefaults(ILaunchConfigurationWorkingCopy config)`
`protected void` `setDynamicTab(ILaunchConfigurationTab tab)`
`protected void` `setDynamicTabHolder(Composite tabHolder)`
`protected void` `setLaunchConfiguration(ILaunchConfiguration launchConfiguration)`
`protected void` `setLaunchConfigurationWorkingCopy(ILaunchConfigurationWorkingCopy workingCopy)`
`void` `setVMSpecificArgumentsVisible(boolean visible)` Sets whether this tab will display the VM specific arguments area if a JRE supports VM specific arguments.
`protected void` `updateJREFromConfig(ILaunchConfiguration config)` This method updates the jre selection from the `ILaunchConfiguration`

### Methods inherited from class org.eclipse.jdt.debug.ui.launchConfigurations.JavaLaunchTab

`getContext, getCurrentLaunchConfiguration, initializeJavaProject`

### Methods inherited from class org.eclipse.debug.ui.AbstractLaunchConfigurationTab

`canSave, createCheckButton, createPushButton, createRadioButton, createSeparator, createUpdateJob, createVerticalSpacer, getControl, getHelpContextId, getLaunchConfigurationDialog, getLaunchManager, getMessage, getShell, getUpdateJobDelay, getWarningMessage, isDirty, launched, scheduleUpdateJob, setAttribute, setControl, setDirty, setErrorMessage, setHelpContextId, setLaunchConfigurationDialog, setMessage, setWarningMessage, updateLaunchConfigurationDialog`

### Methods inherited from class java.lang.Object

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

### Field Detail

#### fJREBlock

    protected org.eclipse.jdt.internal.debug.ui.jres.JREsComboBlock fJREBlock

#### fDynamicTab

    protected ILaunchConfigurationTab fDynamicTab

#### fDynamicTabHolder

    protected Composite fDynamicTabHolder

#### fUseDynamicArea

    protected boolean fUseDynamicArea

#### fWorkingCopy

    protected ILaunchConfigurationWorkingCopy fWorkingCopy

#### fLaunchConfiguration

    protected ILaunchConfiguration fLaunchConfiguration

#### fIsInitializing

    protected boolean fIsInitializing

### Constructor Detail

#### JavaJRETab

    public JavaJRETab()

Constructor

### Method Detail

#### dispose

    public void dispose()

Specified by:
  `dispose` in interface `ILaunchConfigurationTab`
Overrides:
  `dispose` in class `AbstractLaunchConfigurationTab`

#### createControl

    public void createControl(Composite parent)

See Also:
  `ILaunchConfigurationTab.createControl(Composite)`

#### setDynamicTabHolder

    protected void setDynamicTabHolder(Composite tabHolder)

#### getDynamicTabHolder

    protected Composite getDynamicTabHolder()

#### setDynamicTab

    protected void setDynamicTab(ILaunchConfigurationTab tab)

#### getDynamicTab

    protected ILaunchConfigurationTab getDynamicTab()

#### setDefaults

    public void setDefaults(ILaunchConfigurationWorkingCopy config)

See Also:
  `ILaunchConfigurationTab.setDefaults(ILaunchConfigurationWorkingCopy)`

#### initializeFrom

    public void initializeFrom(ILaunchConfiguration configuration)

Specified by:
  `initializeFrom` in interface `ILaunchConfigurationTab`
Overrides:
  `initializeFrom` in class `JavaLaunchTab`
See Also:
  `ILaunchConfigurationTab.initializeFrom(ILaunchConfiguration)`

#### performApply

    public void performApply(ILaunchConfigurationWorkingCopy configuration)

See Also:
  `ILaunchConfigurationTab.performApply(ILaunchConfigurationWorkingCopy)`

#### isValid

    public boolean isValid(ILaunchConfiguration config)

Specified by:
  `isValid` in interface `ILaunchConfigurationTab`
Overrides:
  `isValid` in class `AbstractLaunchConfigurationTab`
See Also:
  `ILaunchConfigurationTab.isValid(ILaunchConfiguration)`

#### getName

    public String getName()

See Also:
  `ILaunchConfigurationTab.getName()`

#### getImage

    public Image getImage()

Specified by:
  `getImage` in interface `ILaunchConfigurationTab`
Overrides:
  `getImage` in class `AbstractLaunchConfigurationTab`
See Also:
  `ILaunchConfigurationTab.getImage()`

#### getId

    public String getId()

Overrides:
  `getId` in class `AbstractLaunchConfigurationTab`
Since:
  3.3
See Also:
  `AbstractLaunchConfigurationTab.getId()`

#### updateJREFromConfig

    protected void updateJREFromConfig(ILaunchConfiguration config)

This method updates the jre selection from the `ILaunchConfiguration`

Parameters:
  `config` - the config to update from

#### handleSelectedJREChanged

    protected void handleSelectedJREChanged()

Notification that the user changed the selection in the JRE combination box.

#### selectJRE

    protected void selectJRE(String typeID,
                             String vmName)

#### getTabForCurrentJRE

    protected ILaunchConfigurationTab getTabForCurrentJRE()

Return the class that implements `ILaunchConfigurationTab` that is registered against the install type of the currently selected VM.

Returns:
  the backing `ILaunchConfigurationTab`

#### loadDynamicJREArea

    protected void loadDynamicJREArea()

Show the contributed piece of UI that was registered for the install type of the currently selected VM.

#### getLaunchConfigurationWorkingCopy

    protected ILaunchConfigurationWorkingCopy getLaunchConfigurationWorkingCopy()

#### getErrorMessage

    public String getErrorMessage()

Overridden here so that any error message in the dynamic UI gets returned.

Specified by:
  `getErrorMessage` in interface `ILaunchConfigurationTab`
Overrides:
  `getErrorMessage` in class `AbstractLaunchConfigurationTab`
See Also:
  `ILaunchConfigurationTab.getErrorMessage()`

#### setLaunchConfigurationWorkingCopy

    protected void setLaunchConfigurationWorkingCopy(ILaunchConfigurationWorkingCopy workingCopy)

#### getLaunchConfiguration

    protected ILaunchConfiguration getLaunchConfiguration()

#### setLaunchConfiguration

    protected void setLaunchConfiguration(ILaunchConfiguration launchConfiguration)

#### setVMSpecificArgumentsVisible

    public void setVMSpecificArgumentsVisible(boolean visible)

Sets whether this tab will display the VM specific arguments area if a JRE supports VM specific arguments.

Parameters:
  `visible` - whether this tab will display the VM specific arguments area if a JRE supports VM specific arguments

#### isUseDynamicJREArea

    protected boolean isUseDynamicJREArea()

#### getDefaultJREDescriptor

    protected org.eclipse.jdt.internal.debug.ui.jres.JREDescriptor getDefaultJREDescriptor()

#### getSpecificJREDescriptor

    protected org.eclipse.jdt.internal.debug.ui.jres.JREDescriptor getSpecificJREDescriptor()

#### getJavaProject

    protected IJavaProject getJavaProject()

Returns the Java project associated with the current config being edited, or `null` if none.

Returns:
  java project or `null`

#### activated

    public void activated(ILaunchConfigurationWorkingCopy workingCopy)

Specified by:
  `activated` in interface `ILaunchConfigurationTab`
Overrides:
  `activated` in class `AbstractLaunchConfigurationTab`

#### deactivated

    public void deactivated(ILaunchConfigurationWorkingCopy workingCopy)

Specified by:
  `deactivated` in interface `ILaunchConfigurationTab`
Overrides:
  `deactivated` in class `AbstractLaunchConfigurationTab`