Package org.eclipse.debug.ui
Class WorkingDirectoryBlock
- java.lang.Object
-
- org.eclipse.debug.ui.AbstractLaunchConfigurationTab
-
- org.eclipse.debug.ui.WorkingDirectoryBlock
-
- All Implemented Interfaces:
IPrototypeAttributesLabelProvider,ILaunchConfigurationTab,ILaunchConfigurationTab2
public abstract class WorkingDirectoryBlock extends AbstractLaunchConfigurationTab
A control for setting the working directory associated with a launch configuration.- Since:
- 3.5
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedWorkingDirectoryBlock(String workingDirectoryAttribteName)Creates a new WorkingDirectoryBlock for setting a working directory.protectedWorkingDirectoryBlock(String workingDirectoryAttribteName, String helpContextId)Creates a new WorkingDirectoryBlock for setting a working directory.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidcreateControl(Composite parent)Creates the top level control for this launch configuration tab under the given parent composite.protected IContainergetContainer()Returns the selected workspace container ornullprotected ILaunchConfigurationgetLaunchConfiguration()Returns the launch configuration that this working directory block is using.StringgetName()Returns the name of this tab.protected abstract IProjectgetProject(ILaunchConfiguration configuration)Returns the project associated with the specified launch configuration ornullif none.protected StringgetWorkingDirectoryText()Retrieves the path from the text box that has been selected.voidinitializeFrom(ILaunchConfiguration configuration)Initializes this tab's controls with values from the given launch configuration.booleanisValid(ILaunchConfiguration config)Returns whether this tab is in a valid state in the context of the specified launch configuration.protected voidlog(CoreException e)Logs exceptions that have been caught by this working directory block.voidperformApply(ILaunchConfigurationWorkingCopy configuration)Copies values from this tab into the given launch configuration.voidsetDefaults(ILaunchConfigurationWorkingCopy config)Sets the default working directory to be used by the launch configuration.protected voidsetDefaultWorkingDir()Sets the default working directory.protected voidsetDefaultWorkingDirectoryText(String dir)Sets the text of the default working directory.voidsetEnabled(boolean enabled)Allows this entire block to be enabled/disabledprotected voidsetLaunchConfiguration(ILaunchConfiguration config)Sets the launch configuration to be used by this working directory block.protected voidsetOtherWorkingDirectoryText(String dir)Sets the directory of the other working directory to be used.-
Methods inherited from class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
activated, canSave, createCheckButton, createPushButton, createRadioButton, createSeparator, createUpdateJob, createVerticalSpacer, deactivated, dispose, getAttributeLabel, getAttributesLabelsForPrototype, getControl, getErrorMessage, getHelpContextId, getId, getImage, getLaunchConfigurationDialog, getLaunchManager, getMessage, getShell, getUpdateJobDelay, getWarningMessage, initializeAttributes, 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
-
Methods inherited from interface org.eclipse.debug.ui.ILaunchConfigurationTab
OkToLeaveTab, postApply
-
-
-
-
Constructor Detail
-
WorkingDirectoryBlock
protected WorkingDirectoryBlock(String workingDirectoryAttribteName)
Creates a new WorkingDirectoryBlock for setting a working directory.- Parameters:
workingDirectoryAttribteName- the name of the launch configuration attribute to set the working directory's location, cannot benull
-
WorkingDirectoryBlock
protected WorkingDirectoryBlock(String workingDirectoryAttribteName, String helpContextId)
Creates a new WorkingDirectoryBlock for setting a working directory.- Parameters:
workingDirectoryAttribteName- the name of the launch configuration attribute to set the working directory's location, cannot benullhelpContextId- the help context id to use to hook onto the help system
-
-
Method Detail
-
createControl
public final void createControl(Composite parent)
Description copied from interface:ILaunchConfigurationTabCreates the top level control for this launch configuration tab under the given parent composite. This method is called once on tab creation, aftersetLaunchConfigurationDialogis called.Implementors are responsible for ensuring that the created control can be accessed via
getControl- Parameters:
parent- the parent composite
-
getContainer
protected IContainer getContainer()
Returns the selected workspace container ornull- Returns:
- the selected workspace container or
null
-
setDefaultWorkingDir
protected void setDefaultWorkingDir()
Sets the default working directory.
-
getProject
protected abstract IProject getProject(ILaunchConfiguration configuration) throws CoreException
Returns the project associated with the specified launch configuration ornullif none.- Parameters:
configuration- the launch configuration that has been set to this working directory block- Returns:
- the project specified by the launch configuration, or
nullif nothing has been set - Throws:
CoreException- if an error occurred while retrieving the project from the launch configuration
-
isValid
public boolean isValid(ILaunchConfiguration config)
Description copied from interface:ILaunchConfigurationTabReturns whether this tab is in a valid state in the context of the specified launch configuration.This information is typically used by the launch configuration dialog to decide when it is okay to launch.
- Specified by:
isValidin interfaceILaunchConfigurationTab- Overrides:
isValidin classAbstractLaunchConfigurationTab- Parameters:
config- launch configuration which provides context for validating this tab. This value must not benull.- Returns:
- whether this tab is in a valid state
- See Also:
ILaunchConfigurationTab.isValid(ILaunchConfiguration)
-
setDefaults
public void setDefaults(ILaunchConfigurationWorkingCopy config)
Sets the default working directory to be used by the launch configuration. The default implementation has no default working directory.- Parameters:
config- launch configuration- See Also:
ILaunchConfigurationTab.setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-
initializeFrom
public void initializeFrom(ILaunchConfiguration configuration)
Description copied from interface:ILaunchConfigurationTabInitializes this tab's controls with values from the given launch configuration. This method is called when a configuration is selected to view or edit, after this tab's control has been created.- Parameters:
configuration- launch configuration
-
performApply
public void performApply(ILaunchConfigurationWorkingCopy configuration)
Description copied from interface:ILaunchConfigurationTabCopies values from this tab into the given launch configuration.- Parameters:
configuration- launch configuration
-
getName
public String getName()
Description copied from interface:ILaunchConfigurationTabReturns the name of this tab.- Returns:
- the name of this tab
-
log
protected void log(CoreException e)
Logs exceptions that have been caught by this working directory block. Subclasses should reimplement if they wish to monitor such exceptions. Default implementation does nothing.- Parameters:
e- the exception to log
-
getWorkingDirectoryText
protected final String getWorkingDirectoryText()
Retrieves the path from the text box that has been selected.- Returns:
- the working directory the user wishes to use
-
setDefaultWorkingDirectoryText
protected final void setDefaultWorkingDirectoryText(String dir)
Sets the text of the default working directory.- Parameters:
dir- the directory to set the widget to
-
setOtherWorkingDirectoryText
protected final void setOtherWorkingDirectoryText(String dir)
Sets the directory of the other working directory to be used.- Parameters:
dir- the directory to set the widget to
-
setLaunchConfiguration
protected void setLaunchConfiguration(ILaunchConfiguration config)
Sets the launch configuration to be used by this working directory block.- Parameters:
config- set the backing launch configuration for this block
-
getLaunchConfiguration
protected ILaunchConfiguration getLaunchConfiguration()
Returns the launch configuration that this working directory block is using.- Returns:
- this working directory block's launch configuration
-
setEnabled
public final void setEnabled(boolean enabled)
Allows this entire block to be enabled/disabled- Parameters:
enabled- whether to enable it or not
-
-