Package 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:
  `IPrototypeAttributesLabelProvider`, `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
Modifier and Type
Field
Description
`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
Description
`JavaJRETab()`
Constructor
`JavaJRETab(boolean checkForClasspathDependenciesChange)`
Constructor

## Method Summary

Modifier and Type
Method
Description
`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.
`protected void`
`initializeAttributes()`
`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.
`boolean`
`OkToLeaveTab()`
`void`
`performApply(ILaunchConfigurationWorkingCopy configuration)`
`void`
`postApply()`
`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, getAttributeLabel, getAttributesLabelsForPrototype, 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 Details

### 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 Details

### JavaJRETab

public JavaJRETab()
Constructor

### JavaJRETab

public JavaJRETab(boolean checkForClasspathDependenciesChange)
Constructor

Parameters:
  `checkForClasspathDependenciesChange` - if this is true, and the user changes between a non-modular jvm and a modular jvm, the user will be asked to apply changes before the tab is exited and the tabs will be refreshed.
Since:
  3.9

## Method Details

### 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`

### postApply

public void postApply()

Since:
  3.9

### OkToLeaveTab

public boolean OkToLeaveTab()

Since:
  3.9

### initializeAttributes

protected void initializeAttributes()

Overrides:
  `initializeAttributes` in class `JavaLaunchTab`