Class AbstractDataBindingLaunchConfigurationTab
java.lang.Object
org.eclipse.debug.ui.AbstractLaunchConfigurationTab
org.palladiosimulator.commons.ui.launch.AbstractDataBindingLaunchConfigurationTab
- All Implemented Interfaces:
IPrototypeAttributesLabelProvider
,ILaunchConfigurationTab
,ILaunchConfigurationTab2
public abstract class AbstractDataBindingLaunchConfigurationTab
extends AbstractLaunchConfigurationTab
This abstract super class integrates the observable launch configuration adapter with the launch
configuration tab hierarchy.
It simplifies creating launch configuration dialogs, as it relieves you from implementing the
same validation logic multiple times.
Instead of implementing
ILaunchConfigurationTab.initializeFrom(ILaunchConfiguration)
,
ILaunchConfigurationTab.performApply(ILaunchConfigurationWorkingCopy)
and
ILaunchConfigurationTab.setDefaults(ILaunchConfigurationWorkingCopy)
, registry the
required bindings, already providing sensible defaults through
#registerDataBindings(ObservableLaunchConfigurationAttributeFactory)
.
Please note, that due to the way, the launch configurations work, the data bindings need to be
registered before the controls are created. To bind your UI elements to launch configuration
properties, please store the observable value references as class attributes.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
activated
(ILaunchConfigurationWorkingCopy workingCopy) final void
createControl
(Composite parent) protected abstract void
createControlInternal
(Composite parent, DataBindingContext bindingContext) void
deactivated
(ILaunchConfigurationWorkingCopy workingCopy) void
initializeFrom
(ILaunchConfiguration configuration) void
performApply
(ILaunchConfigurationWorkingCopy configuration) protected abstract void
registerDataBindings
(ObservableLaunchConfigurationAttributeFactory attributeFactory, DataBindingContext bindingContext) void
setDefaults
(ILaunchConfigurationWorkingCopy configuration) Methods inherited from class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
canSave, createCheckButton, createPushButton, createRadioButton, createSeparator, createUpdateJob, createVerticalSpacer, dispose, getAttributeLabel, getAttributesLabelsForPrototype, getControl, getErrorMessage, getHelpContextId, getId, getImage, getLaunchConfigurationDialog, getLaunchManager, getMessage, getShell, getUpdateJobDelay, getWarningMessage, initializeAttributes, isDirty, isValid, 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
getName, OkToLeaveTab, postApply
-
Constructor Details
-
AbstractDataBindingLaunchConfigurationTab
public AbstractDataBindingLaunchConfigurationTab()
-
-
Method Details
-
registerDataBindings
protected abstract void registerDataBindings(ObservableLaunchConfigurationAttributeFactory attributeFactory, DataBindingContext bindingContext) -
createControlInternal
-
createControl
-
initializeFrom
-
performApply
-
setDefaults
-
activated
- Specified by:
activated
in interfaceILaunchConfigurationTab
- Overrides:
activated
in classAbstractLaunchConfigurationTab
-
deactivated
- Specified by:
deactivated
in interfaceILaunchConfigurationTab
- Overrides:
deactivated
in classAbstractLaunchConfigurationTab
-