Bug 530887 - Mark Dirtyable field from Part Descriptor for deletion

Change-Id: I6161fef57c7641d8ca7a0f240ff08f9e66b00e30
Signed-off-by: Olivier Prouvost <olivier.prouvost@opcoach.com>
diff --git a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/MPartDescriptor.java b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/MPartDescriptor.java
index 130488b..dbb7b85 100644
--- a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/MPartDescriptor.java
+++ b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/MPartDescriptor.java
@@ -189,30 +189,43 @@
 	void setCloseable(boolean value);
 
 	/**
-	 * Returns the value of the '<em><b>Dirtyable</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * <!-- begin-model-doc -->
+	 * Returns the value of the '<em><b>Dirtyable</b></em>' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc -->
 	 * <p>
 	 * Determines whether Parts generated from this template can participate in the
-	 * Dirty -> Save cycle. At best this is a hint since all Parts are inherently dirtyable.
+	 * Dirty -> Save cycle. At best this is a hint since all Parts are inherently
+	 * dirtyable.
 	 * </p>
 	 * <!-- end-model-doc -->
+	 * 
 	 * @return the value of the '<em>Dirtyable</em>' attribute.
 	 * @see #setDirtyable(boolean)
 	 * @model
-	 * @generated
+	 * @generated NOT
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
+	 * 
 	 */
+	@Deprecated
 	boolean isDirtyable();
 
 	/**
-	 * Sets the value of the '{@link org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor#isDirtyable <em>Dirtyable</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Dirtyable</em>' attribute.
+	 * Sets the value of the
+	 * '{@link org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor#isDirtyable
+	 * <em>Dirtyable</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Dirtyable</em>' attribute.
 	 * @see #isDirtyable()
-	 * @generated
+	 * @generated NOT
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
 	 */
+	@Deprecated
 	void setDirtyable(boolean value);
 
 	/**
diff --git a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/BasicPackageImpl.java b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/BasicPackageImpl.java
index 14481cc..e98e176 100644
--- a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/BasicPackageImpl.java
+++ b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/BasicPackageImpl.java
@@ -255,13 +255,19 @@
 	public static final int PART_DESCRIPTOR__CLOSEABLE = ApplicationPackageImpl.APPLICATION_ELEMENT_FEATURE_COUNT + 11;
 
 	/**
-	 * The feature id for the '<em><b>Dirtyable</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Dirtyable</b></em>' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @since 1.0
 	 * @generated
 	 * @ordered
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This constant is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
+	 * 
 	 */
+	@Deprecated
 	public static final int PART_DESCRIPTOR__DIRTYABLE = ApplicationPackageImpl.APPLICATION_ELEMENT_FEATURE_COUNT + 12;
 
 	/**
@@ -584,15 +590,21 @@
 	}
 
 	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor#isDirtyable <em>Dirtyable</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor#isDirtyable
+	 * <em>Dirtyable</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @return the meta object for the attribute '<em>Dirtyable</em>'.
 	 * @see org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor#isDirtyable()
 	 * @see #getPartDescriptor()
 	 * @since 1.0
 	 * @generated
+	 * @deprecated dirtyable is managed by Part
+	 * @noreference This method is not intended to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id= 530887">Bug
+	 *      530887</a>
 	 */
+	@Deprecated
 	public EAttribute getPartDescriptor_Dirtyable() {
 		return (EAttribute)partDescriptorEClass.getEStructuralFeatures().get(5);
 	}
@@ -891,12 +903,16 @@
 		public static final EAttribute PART_DESCRIPTOR__CLOSEABLE = eINSTANCE.getPartDescriptor_Closeable();
 
 		/**
-		 * The meta object literal for the '<em><b>Dirtyable</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
+		 * The meta object literal for the '<em><b>Dirtyable</b></em>' attribute
+		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
 		 * @since 1.0
-		 * @generated
+		 * @deprecated
+		 * @noreference This field is not intended to be referenced by clients.
+		 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id= 530887">Bug
+		 *      530887</a>
 		 */
+		@Deprecated
 		public static final EAttribute PART_DESCRIPTOR__DIRTYABLE = eINSTANCE.getPartDescriptor_Dirtyable();
 
 		/**
diff --git a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/PartDescriptorImpl.java b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/PartDescriptorImpl.java
index f88c7a6..9d5a5df 100644
--- a/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/PartDescriptorImpl.java
+++ b/bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/application/descriptor/basic/impl/PartDescriptorImpl.java
@@ -264,23 +264,34 @@
 	protected boolean closeable = CLOSEABLE_EDEFAULT;
 
 	/**
-	 * The default value of the '{@link #isDirtyable() <em>Dirtyable</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The default value of the '{@link #isDirtyable() <em>Dirtyable</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @see #isDirtyable()
-	 * @generated
+	 * @generated NOT
 	 * @ordered
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
 	 */
+	@Deprecated
 	protected static final boolean DIRTYABLE_EDEFAULT = false;
 
 	/**
-	 * The cached value of the '{@link #isDirtyable() <em>Dirtyable</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The cached value of the '{@link #isDirtyable() <em>Dirtyable</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @see #isDirtyable()
-	 * @generated
+	 * @generated NOT
 	 * @ordered
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
+	 * 
 	 */
+	@Deprecated
 	protected boolean dirtyable = DIRTYABLE_EDEFAULT;
 
 	/**
@@ -596,19 +607,27 @@
 	}
 
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
 	 */
+	@Deprecated
 	public boolean isDirtyable() {
 		return dirtyable;
 	}
 
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @deprecated dirtyable is managed by part
+	 * @noreference This method is not intented to be referenced by clients.
+	 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=530887">Bug
+	 *      530887</a>
 	 */
+	@Deprecated
 	public void setDirtyable(boolean newDirtyable) {
 		boolean oldDirtyable = dirtyable;
 		dirtyable = newDirtyable;
@@ -743,16 +762,16 @@
 	@Override
 	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
 		switch (featureID) {
-			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
-				return ((InternalEList<?>)getHandlers()).basicRemove(otherEnd, msgs);
-			case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
-				return ((InternalEList<?>)getMenus()).basicRemove(otherEnd, msgs);
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
-				return basicSetToolbar(null, msgs);
-			case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
-				return ((InternalEList<?>)((EMap.InternalMapView<String, String>)getProperties()).eMap()).basicRemove(otherEnd, msgs);
-			case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
-				return ((InternalEList<?>)getTrimBars()).basicRemove(otherEnd, msgs);
+		case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
+			return ((InternalEList<?>)getHandlers()).basicRemove(otherEnd, msgs);
+		case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
+			return ((InternalEList<?>)getMenus()).basicRemove(otherEnd, msgs);
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
+			return basicSetToolbar(null, msgs);
+		case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
+			return ((InternalEList<?>)((EMap.InternalMapView<String, String>)getProperties()).eMap()).basicRemove(otherEnd, msgs);
+		case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
+			return ((InternalEList<?>)getTrimBars()).basicRemove(otherEnd, msgs);
 		}
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
@@ -765,45 +784,45 @@
 	@Override
 	public Object eGet(int featureID, boolean resolve, boolean coreType) {
 		switch (featureID) {
-			case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
-				return getLabel();
-			case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
-				return getIconURI();
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
-				return getTooltip();
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL:
-				return getLocalizedLabel();
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP:
-				return getLocalizedTooltip();
-			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
-				return getHandlers();
-			case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
-				return getBindingContexts();
-			case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
-				return isAllowMultiple();
-			case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
-				return getCategory();
-			case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
-				return getMenus();
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
-				return getToolbar();
-			case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
-				return isCloseable();
-			case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
-				return isDirtyable();
-			case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
-				return getContributionURI();
-			case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
-				return getDescription();
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_DESCRIPTION:
-				return getLocalizedDescription();
-			case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
-				return getVariables();
-			case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
-				if (coreType) return ((EMap.InternalMapView<String, String>)getProperties()).eMap();
-				else return getProperties();
-			case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
-				return getTrimBars();
+		case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
+			return getLabel();
+		case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
+			return getIconURI();
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
+			return getTooltip();
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL:
+			return getLocalizedLabel();
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP:
+			return getLocalizedTooltip();
+		case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
+			return getHandlers();
+		case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
+			return getBindingContexts();
+		case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
+			return isAllowMultiple();
+		case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
+			return getCategory();
+		case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
+			return getMenus();
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
+			return getToolbar();
+		case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
+			return isCloseable();
+		case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
+			return isDirtyable();
+		case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
+			return getContributionURI();
+		case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
+			return getDescription();
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_DESCRIPTION:
+			return getLocalizedDescription();
+		case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
+			return getVariables();
+		case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
+			if (coreType) return ((EMap.InternalMapView<String, String>)getProperties()).eMap();
+			else return getProperties();
+		case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
+			return getTrimBars();
 		}
 		return super.eGet(featureID, resolve, coreType);
 	}
@@ -817,59 +836,59 @@
 	@Override
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
-			case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
-				setLabel((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
-				setIconURI((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
-				setTooltip((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
-				getHandlers().clear();
-				getHandlers().addAll((Collection<? extends MHandler>)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
-				getBindingContexts().clear();
-				getBindingContexts().addAll((Collection<? extends MBindingContext>)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
-				setAllowMultiple((Boolean)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
-				setCategory((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
-				getMenus().clear();
-				getMenus().addAll((Collection<? extends MMenu>)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
-				setToolbar((MToolBar)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
-				setCloseable((Boolean)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
-				setDirtyable((Boolean)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
-				setContributionURI((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
-				getVariables().clear();
-				getVariables().addAll((Collection<? extends String>)newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
-				((EStructuralFeature.Setting)((EMap.InternalMapView<String, String>)getProperties()).eMap()).set(newValue);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
-				getTrimBars().clear();
-				getTrimBars().addAll((Collection<? extends MTrimBar>)newValue);
-				return;
+		case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
+			setLabel((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
+			setIconURI((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
+			setTooltip((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
+			getHandlers().clear();
+			getHandlers().addAll((Collection<? extends MHandler>)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
+			getBindingContexts().clear();
+			getBindingContexts().addAll((Collection<? extends MBindingContext>)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
+			setAllowMultiple((Boolean)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
+			setCategory((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
+			getMenus().clear();
+			getMenus().addAll((Collection<? extends MMenu>)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
+			setToolbar((MToolBar)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
+			setCloseable((Boolean)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
+			setDirtyable((Boolean)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
+			setContributionURI((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
+			setDescription((String)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
+			getVariables().clear();
+			getVariables().addAll((Collection<? extends String>)newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
+			((EStructuralFeature.Setting)((EMap.InternalMapView<String, String>)getProperties()).eMap()).set(newValue);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
+			getTrimBars().clear();
+			getTrimBars().addAll((Collection<? extends MTrimBar>)newValue);
+			return;
 		}
 		super.eSet(featureID, newValue);
 	}
@@ -882,54 +901,54 @@
 	@Override
 	public void eUnset(int featureID) {
 		switch (featureID) {
-			case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
-				setIconURI(ICON_URI_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
-				setTooltip(TOOLTIP_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
-				getHandlers().clear();
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
-				getBindingContexts().clear();
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
-				setAllowMultiple(ALLOW_MULTIPLE_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
-				setCategory(CATEGORY_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
-				getMenus().clear();
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
-				setToolbar((MToolBar)null);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
-				setCloseable(CLOSEABLE_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
-				setDirtyable(DIRTYABLE_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
-				setContributionURI(CONTRIBUTION_URI_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
-				getVariables().clear();
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
-				getProperties().clear();
-				return;
-			case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
-				getTrimBars().clear();
-				return;
+		case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
+			setLabel(LABEL_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
+			setIconURI(ICON_URI_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
+			setTooltip(TOOLTIP_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
+			getHandlers().clear();
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
+			getBindingContexts().clear();
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
+			setAllowMultiple(ALLOW_MULTIPLE_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
+			setCategory(CATEGORY_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
+			getMenus().clear();
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
+			setToolbar((MToolBar)null);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
+			setCloseable(CLOSEABLE_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
+			setDirtyable(DIRTYABLE_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
+			setContributionURI(CONTRIBUTION_URI_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
+			setDescription(DESCRIPTION_EDEFAULT);
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
+			getVariables().clear();
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
+			getProperties().clear();
+			return;
+		case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
+			getTrimBars().clear();
+			return;
 		}
 		super.eUnset(featureID);
 	}
@@ -942,44 +961,44 @@
 	@Override
 	public boolean eIsSet(int featureID) {
 		switch (featureID) {
-			case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
-				return ICON_URI_EDEFAULT == null ? iconURI != null : !ICON_URI_EDEFAULT.equals(iconURI);
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
-				return TOOLTIP_EDEFAULT == null ? tooltip != null : !TOOLTIP_EDEFAULT.equals(tooltip);
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL:
-				return LOCALIZED_LABEL_EDEFAULT == null ? getLocalizedLabel() != null : !LOCALIZED_LABEL_EDEFAULT.equals(getLocalizedLabel());
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP:
-				return LOCALIZED_TOOLTIP_EDEFAULT == null ? getLocalizedTooltip() != null : !LOCALIZED_TOOLTIP_EDEFAULT.equals(getLocalizedTooltip());
-			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
-				return handlers != null && !handlers.isEmpty();
-			case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
-				return bindingContexts != null && !bindingContexts.isEmpty();
-			case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
-				return allowMultiple != ALLOW_MULTIPLE_EDEFAULT;
-			case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
-				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
-			case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
-				return menus != null && !menus.isEmpty();
-			case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
-				return toolbar != null;
-			case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
-				return closeable != CLOSEABLE_EDEFAULT;
-			case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
-				return dirtyable != DIRTYABLE_EDEFAULT;
-			case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
-				return CONTRIBUTION_URI_EDEFAULT == null ? contributionURI != null : !CONTRIBUTION_URI_EDEFAULT.equals(contributionURI);
-			case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_DESCRIPTION:
-				return LOCALIZED_DESCRIPTION_EDEFAULT == null ? getLocalizedDescription() != null : !LOCALIZED_DESCRIPTION_EDEFAULT.equals(getLocalizedDescription());
-			case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
-				return variables != null && !variables.isEmpty();
-			case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
-				return properties != null && !properties.isEmpty();
-			case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
-				return trimBars != null && !trimBars.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__LABEL:
+			return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+		case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI:
+			return ICON_URI_EDEFAULT == null ? iconURI != null : !ICON_URI_EDEFAULT.equals(iconURI);
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP:
+			return TOOLTIP_EDEFAULT == null ? tooltip != null : !TOOLTIP_EDEFAULT.equals(tooltip);
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL:
+			return LOCALIZED_LABEL_EDEFAULT == null ? getLocalizedLabel() != null : !LOCALIZED_LABEL_EDEFAULT.equals(getLocalizedLabel());
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP:
+			return LOCALIZED_TOOLTIP_EDEFAULT == null ? getLocalizedTooltip() != null : !LOCALIZED_TOOLTIP_EDEFAULT.equals(getLocalizedTooltip());
+		case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS:
+			return handlers != null && !handlers.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS:
+			return bindingContexts != null && !bindingContexts.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__ALLOW_MULTIPLE:
+			return allowMultiple != ALLOW_MULTIPLE_EDEFAULT;
+		case BasicPackageImpl.PART_DESCRIPTOR__CATEGORY:
+			return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+		case BasicPackageImpl.PART_DESCRIPTOR__MENUS:
+			return menus != null && !menus.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__TOOLBAR:
+			return toolbar != null;
+		case BasicPackageImpl.PART_DESCRIPTOR__CLOSEABLE:
+			return closeable != CLOSEABLE_EDEFAULT;
+		case BasicPackageImpl.PART_DESCRIPTOR__DIRTYABLE:
+			return dirtyable != DIRTYABLE_EDEFAULT;
+		case BasicPackageImpl.PART_DESCRIPTOR__CONTRIBUTION_URI:
+			return CONTRIBUTION_URI_EDEFAULT == null ? contributionURI != null : !CONTRIBUTION_URI_EDEFAULT.equals(contributionURI);
+		case BasicPackageImpl.PART_DESCRIPTOR__DESCRIPTION:
+			return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+		case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_DESCRIPTION:
+			return LOCALIZED_DESCRIPTION_EDEFAULT == null ? getLocalizedDescription() != null : !LOCALIZED_DESCRIPTION_EDEFAULT.equals(getLocalizedDescription());
+		case BasicPackageImpl.PART_DESCRIPTOR__VARIABLES:
+			return variables != null && !variables.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__PROPERTIES:
+			return properties != null && !properties.isEmpty();
+		case BasicPackageImpl.PART_DESCRIPTOR__TRIM_BARS:
+			return trimBars != null && !trimBars.isEmpty();
 		}
 		return super.eIsSet(featureID);
 	}
@@ -993,29 +1012,29 @@
 	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
 		if (baseClass == MLocalizable.class) {
 			switch (derivedFeatureID) {
-				default: return -1;
+			default: return -1;
 			}
 		}
 		if (baseClass == MUILabel.class) {
 			switch (derivedFeatureID) {
-				case BasicPackageImpl.PART_DESCRIPTOR__LABEL: return UiPackageImpl.UI_LABEL__LABEL;
-				case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI: return UiPackageImpl.UI_LABEL__ICON_URI;
-				case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP: return UiPackageImpl.UI_LABEL__TOOLTIP;
-				case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL: return UiPackageImpl.UI_LABEL__LOCALIZED_LABEL;
-				case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP: return UiPackageImpl.UI_LABEL__LOCALIZED_TOOLTIP;
-				default: return -1;
+			case BasicPackageImpl.PART_DESCRIPTOR__LABEL: return UiPackageImpl.UI_LABEL__LABEL;
+			case BasicPackageImpl.PART_DESCRIPTOR__ICON_URI: return UiPackageImpl.UI_LABEL__ICON_URI;
+			case BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP: return UiPackageImpl.UI_LABEL__TOOLTIP;
+			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL: return UiPackageImpl.UI_LABEL__LOCALIZED_LABEL;
+			case BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP: return UiPackageImpl.UI_LABEL__LOCALIZED_TOOLTIP;
+			default: return -1;
 			}
 		}
 		if (baseClass == MHandlerContainer.class) {
 			switch (derivedFeatureID) {
-				case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS: return CommandsPackageImpl.HANDLER_CONTAINER__HANDLERS;
-				default: return -1;
+			case BasicPackageImpl.PART_DESCRIPTOR__HANDLERS: return CommandsPackageImpl.HANDLER_CONTAINER__HANDLERS;
+			default: return -1;
 			}
 		}
 		if (baseClass == MBindings.class) {
 			switch (derivedFeatureID) {
-				case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS: return CommandsPackageImpl.BINDINGS__BINDING_CONTEXTS;
-				default: return -1;
+			case BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS: return CommandsPackageImpl.BINDINGS__BINDING_CONTEXTS;
+			default: return -1;
 			}
 		}
 		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
@@ -1030,29 +1049,29 @@
 	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
 		if (baseClass == MLocalizable.class) {
 			switch (baseFeatureID) {
-				default: return -1;
+			default: return -1;
 			}
 		}
 		if (baseClass == MUILabel.class) {
 			switch (baseFeatureID) {
-				case UiPackageImpl.UI_LABEL__LABEL: return BasicPackageImpl.PART_DESCRIPTOR__LABEL;
-				case UiPackageImpl.UI_LABEL__ICON_URI: return BasicPackageImpl.PART_DESCRIPTOR__ICON_URI;
-				case UiPackageImpl.UI_LABEL__TOOLTIP: return BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP;
-				case UiPackageImpl.UI_LABEL__LOCALIZED_LABEL: return BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL;
-				case UiPackageImpl.UI_LABEL__LOCALIZED_TOOLTIP: return BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP;
-				default: return -1;
+			case UiPackageImpl.UI_LABEL__LABEL: return BasicPackageImpl.PART_DESCRIPTOR__LABEL;
+			case UiPackageImpl.UI_LABEL__ICON_URI: return BasicPackageImpl.PART_DESCRIPTOR__ICON_URI;
+			case UiPackageImpl.UI_LABEL__TOOLTIP: return BasicPackageImpl.PART_DESCRIPTOR__TOOLTIP;
+			case UiPackageImpl.UI_LABEL__LOCALIZED_LABEL: return BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_LABEL;
+			case UiPackageImpl.UI_LABEL__LOCALIZED_TOOLTIP: return BasicPackageImpl.PART_DESCRIPTOR__LOCALIZED_TOOLTIP;
+			default: return -1;
 			}
 		}
 		if (baseClass == MHandlerContainer.class) {
 			switch (baseFeatureID) {
-				case CommandsPackageImpl.HANDLER_CONTAINER__HANDLERS: return BasicPackageImpl.PART_DESCRIPTOR__HANDLERS;
-				default: return -1;
+			case CommandsPackageImpl.HANDLER_CONTAINER__HANDLERS: return BasicPackageImpl.PART_DESCRIPTOR__HANDLERS;
+			default: return -1;
 			}
 		}
 		if (baseClass == MBindings.class) {
 			switch (baseFeatureID) {
-				case CommandsPackageImpl.BINDINGS__BINDING_CONTEXTS: return BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS;
-				default: return -1;
+			case CommandsPackageImpl.BINDINGS__BINDING_CONTEXTS: return BasicPackageImpl.PART_DESCRIPTOR__BINDING_CONTEXTS;
+			default: return -1;
 			}
 		}
 		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
@@ -1067,23 +1086,23 @@
 	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
 		if (baseClass == MLocalizable.class) {
 			switch (baseOperationID) {
-				case UiPackageImpl.LOCALIZABLE___UPDATE_LOCALIZATION: return BasicPackageImpl.PART_DESCRIPTOR___UPDATE_LOCALIZATION;
-				default: return -1;
+			case UiPackageImpl.LOCALIZABLE___UPDATE_LOCALIZATION: return BasicPackageImpl.PART_DESCRIPTOR___UPDATE_LOCALIZATION;
+			default: return -1;
 			}
 		}
 		if (baseClass == MUILabel.class) {
 			switch (baseOperationID) {
-				default: return -1;
+			default: return -1;
 			}
 		}
 		if (baseClass == MHandlerContainer.class) {
 			switch (baseOperationID) {
-				default: return -1;
+			default: return -1;
 			}
 		}
 		if (baseClass == MBindings.class) {
 			switch (baseOperationID) {
-				default: return -1;
+			default: return -1;
 			}
 		}
 		return super.eDerivedOperationID(baseOperationID, baseClass);
@@ -1097,9 +1116,9 @@
 	@Override
 	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
 		switch (operationID) {
-			case BasicPackageImpl.PART_DESCRIPTOR___UPDATE_LOCALIZATION:
-				updateLocalization();
-				return null;
+		case BasicPackageImpl.PART_DESCRIPTOR___UPDATE_LOCALIZATION:
+			updateLocalization();
+			return null;
 		}
 		return super.eInvoke(operationID, arguments);
 	}
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/UIEvents.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/UIEvents.java
index 5ac6d40..9804477 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/UIEvents.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/UIEvents.java
@@ -657,6 +657,13 @@
 		String TOPIC_CLOSEABLE = "org/eclipse/e4/ui/model/basic/PartDescriptor/closeable/*"; //$NON-NLS-1$
 		String TOPIC_CONTRIBUTIONURI = "org/eclipse/e4/ui/model/basic/PartDescriptor/contributionURI/*"; //$NON-NLS-1$
 		String TOPIC_DESCRIPTION = "org/eclipse/e4/ui/model/basic/PartDescriptor/description/*"; //$NON-NLS-1$
+		/**
+		 * @deprecated
+		 * @noreference This field is not intended to be referenced by clients.
+		 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id= 530887">Bug
+		 *      530887</a>
+		 */
+		@Deprecated
 		String TOPIC_DIRTYABLE = "org/eclipse/e4/ui/model/basic/PartDescriptor/dirtyable/*"; //$NON-NLS-1$
 		String TOPIC_MENUS = "org/eclipse/e4/ui/model/basic/PartDescriptor/menus/*"; //$NON-NLS-1$
 		String TOPIC_TOOLBAR = "org/eclipse/e4/ui/model/basic/PartDescriptor/toolbar/*"; //$NON-NLS-1$
@@ -672,6 +679,12 @@
 		String CLOSEABLE = "closeable"; //$NON-NLS-1$
 		String CONTRIBUTIONURI = "contributionURI"; //$NON-NLS-1$
 		String DESCRIPTION = "description"; //$NON-NLS-1$
+		/**
+		 * @deprecated
+		 * @noreference This field is not intended to be referenced by clients.
+		 * @see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id= 530887">Bug
+		 *      530887</a>
+		 */
 		String DIRTYABLE = "dirtyable"; //$NON-NLS-1$
 		String MENUS = "menus"; //$NON-NLS-1$
 		String TOOLBAR = "toolbar"; //$NON-NLS-1$