diff options
author | tle | 2011-05-19 19:29:05 +0000 |
---|---|---|
committer | tle | 2011-05-19 19:29:05 +0000 |
commit | 31fe7d64e0a662a3d6dda42b7858ff2ac71bec47 (patch) | |
tree | 90737102cccb87aa6c19f6b2dfb9ddf6776e5f82 | |
parent | 02079effb97c5500640b8975824e5aa3b64e1d16 (diff) | |
download | webtools.dali-31fe7d64e0a662a3d6dda42b7858ff2ac71bec47.tar.gz webtools.dali-31fe7d64e0a662a3d6dda42b7858ff2ac71bec47.tar.xz webtools.dali-31fe7d64e0a662a3d6dda42b7858ff2ac71bec47.zip |
345323 - Delete confirmation doesn't provide complete information (patch v2 from JPAE team)
5 files changed, 38 insertions, 5 deletions
diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteJPAEntityFeature.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteJPAEntityFeature.java index 795296dcf9..7b81077a2b 100644 --- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteJPAEntityFeature.java +++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteJPAEntityFeature.java @@ -22,8 +22,10 @@ import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.emf.transaction.util.TransactionUtil; import org.eclipse.graphiti.features.IFeatureProvider; import org.eclipse.graphiti.features.context.IDeleteContext; +import org.eclipse.graphiti.features.context.IMultiDeleteInfo; import org.eclipse.graphiti.mm.pictograms.PictogramElement; import org.eclipse.graphiti.ui.features.DefaultDeleteFeature; +import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jpt.jpa.core.JpaProject; import org.eclipse.jpt.jpa.core.JptJpaCorePlugin; import org.eclipse.jpt.jpa.core.context.java.JavaPersistentType; @@ -31,10 +33,12 @@ import org.eclipse.jpt.jpadiagrameditor.ui.internal.i18n.JPAEditorMessages; import org.eclipse.jpt.jpadiagrameditor.ui.internal.provider.IJPAEditorFeatureProvider; import org.eclipse.jpt.jpadiagrameditor.ui.internal.util.JPAEditorUtil; import org.eclipse.jpt.jpadiagrameditor.ui.internal.util.JpaArtifactFactory; +import org.eclipse.ui.PlatformUI; public class DeleteJPAEntityFeature extends DefaultDeleteFeature { + private String entityClassName = null; private String entityName = null; public DeleteJPAEntityFeature(IFeatureProvider fp) { super(fp); @@ -44,7 +48,8 @@ public class DeleteJPAEntityFeature extends DefaultDeleteFeature { PictogramElement pe = context.getPictogramElement(); JavaPersistentType jpt = (JavaPersistentType)getFeatureProvider().getBusinessObjectForPictogramElement(pe); - entityName = jpt.getName(); + entityClassName = jpt.getName(); + entityName = JPAEditorUtil.returnSimpleName(JpaArtifactFactory.instance().getEntityName(jpt)); TransactionalEditingDomain ted = TransactionUtil.getEditingDomain(pe); ted.getCommandStack().execute(new RecordingCommand(ted) { protected void doExecute() { @@ -78,11 +83,27 @@ public class DeleteJPAEntityFeature extends DefaultDeleteFeature { } public String getQuestionToUser() { - return MessageFormat.format(JPAEditorMessages.DeleteJPAEntityFeature_deleteJPAEntityQuestion, new Object[] { entityName }); + return MessageFormat.format(JPAEditorMessages.DeleteJPAEntityFeature_deleteJPAEntityQuestion, entityName, entityClassName); } public IJPAEditorFeatureProvider getFeatureProvider() { return (IJPAEditorFeatureProvider)super.getFeatureProvider(); } + protected boolean getUserDecision(IDeleteContext context) { + String msg = ""; //$NON-NLS-1$ + IMultiDeleteInfo multiDeleteInfo = context.getMultiDeleteInfo(); + if (multiDeleteInfo != null) { + msg = JPAEditorMessages.DeleteJPAEntityFeature_deleteJPAEntitiesQuestion; + } else { + if (entityClassName != null && entityClassName.length() > 0) { + msg = MessageFormat.format(JPAEditorMessages.DeleteJPAEntityFeature_deleteJPAEntityQuestion, entityName, entityClassName); + } + } + return MessageDialog.openQuestion(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), + JPAEditorMessages.DeleteFeature_deleteConfirm, msg); + } + + + }
\ No newline at end of file diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteRelationFeature.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteRelationFeature.java index 972799d370..89e18ce7a1 100644 --- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteRelationFeature.java +++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteRelationFeature.java @@ -21,6 +21,7 @@ import org.eclipse.graphiti.features.context.impl.DeleteContext; import org.eclipse.graphiti.mm.pictograms.PictogramElement; import org.eclipse.graphiti.ui.features.DefaultDeleteFeature; import org.eclipse.jdt.core.ICompilationUnit; +import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jpt.jpa.core.context.java.JavaPersistentAttribute; import org.eclipse.jpt.jpadiagrameditor.ui.internal.i18n.JPAEditorMessages; import org.eclipse.jpt.jpadiagrameditor.ui.internal.provider.IJPAEditorFeatureProvider; @@ -31,6 +32,7 @@ import org.eclipse.jpt.jpadiagrameditor.ui.internal.relations.UnidirectionalRela import org.eclipse.jpt.jpadiagrameditor.ui.internal.util.IJPAEditorUtil; import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IWorkbenchSite; +import org.eclipse.ui.PlatformUI; public class DeleteRelationFeature extends DefaultDeleteFeature{ @@ -126,4 +128,9 @@ public class DeleteRelationFeature extends DefaultDeleteFeature{ return (IJPAEditorFeatureProvider)super.getFeatureProvider(); } + protected boolean getUserDecision(IDeleteContext context) { + return MessageDialog.openQuestion(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), + JPAEditorMessages.DeleteFeature_deleteConfirm, JPAEditorMessages.DeleteRelationFeature_deleteRelationQuestion); + } + }
\ No newline at end of file diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/JPAEditorMessages.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/JPAEditorMessages.java index b006e67362..ccc6cb4fff 100644 --- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/JPAEditorMessages.java +++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/JPAEditorMessages.java @@ -70,7 +70,10 @@ public class JPAEditorMessages extends NLS { public static String CreateOneToOneUniDirRelationFeature_oneToOneUniDirFeatureDescription; public static String CreateOneToOneUniDirRelationFeature_oneToOneUniDirFeatureName; + public static String DeleteFeature_deleteConfirm; + public static String DeleteJPAEntityFeature_deleteJPAEntityQuestion; + public static String DeleteJPAEntityFeature_deleteJPAEntitiesQuestion; public static String DeleteRelationFeature_deleteRelationQuestion; diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/messages.properties b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/messages.properties index 5c77cd5f91..2d74210023 100644 --- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/messages.properties +++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/messages.properties @@ -56,9 +56,11 @@ CreateOneToOneBiDirRelationFeature_oneToOneBiDirFeatureName=One-to-One CreateOneToOneUniDirRelationFeature_oneToOneUniDirFeatureDescription=Create new unidirectional one-to-one relation. CreateOneToOneUniDirRelationFeature_oneToOneUniDirFeatureName=One-to-One -DeleteJPAEntityFeature_deleteJPAEntityQuestion=Do you want to delete entity "{0}" from the JPA model? +DeleteFeature_deleteConfirm=Confirm Delete +DeleteJPAEntityFeature_deleteJPAEntityQuestion=Do you want to remove the entity "{0}" from the diagram and delete the corresponding Java resource "{1}"? +DeleteJPAEntityFeature_deleteJPAEntitiesQuestion=Do you want to remove the selected entities from the diagram and delete the corresponding Java resources? -DeleteRelationFeature_deleteRelationQuestion=Do you want to delete this relation? +DeleteRelationFeature_deleteRelationQuestion=Do you want to remove this relation from the diagram and update the corresponding Java resources? DirectEditAttributeFeature_attributeExists=Attribute with name "{0}" already exists. DirectEditAttributeFeature_classNameMsg=Enter an attribute name. diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtil.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtil.java index 5841e97df4..bb3e050476 100644 --- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtil.java +++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtil.java @@ -178,7 +178,7 @@ public class ModelIntegrationUtil { try { resource.load(null); } catch (IOException e) { - JPADiagramEditorPlugin.logInfo("The diagram file does not exist. It will be created"); + JPADiagramEditorPlugin.logInfo("The diagram file does not exist. It will be created"); //$NON-NLS-1$ JPADiagramEditorPlugin.logInfo(e.getLocalizedMessage()); } } |