Author: bobtarling Date: 2011-03-30 10:41:44-0700 New Revision: 19150 Modified: trunk/src/argouml-app/src/org/argouml/kernel/ProjectImpl.java trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddAttribute.java trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddOperation.java trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CoreFactoryMDRImpl.java trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java trunk/src/argouml-core-model/src/org/argouml/model/UmlFactoryDefaults.java
Log: Use the new defaults class to set the name of any newly created model element Modified: trunk/src/argouml-app/src/org/argouml/kernel/ProjectImpl.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/kernel/ProjectImpl.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/kernel/ProjectImpl.java (original) +++ trunk/src/argouml-app/src/org/argouml/kernel/ProjectImpl.java 2011-03-30 10:41:44-0700 @@ -597,6 +597,16 @@ } return null; } + public String getDefaultName(Object metaType) { + if (Model.getMetaTypes().getOperation() == metaType) { + return "newOperation"; + } else if (Model.getMetaTypes().getAttribute() == metaType) { + return "newAttr"; + } else if (Model.getMetaTypes().getEnumerationLiteral() == metaType) { + return "newLiteral"; + } + return null; + } }; } Modified: trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddAttribute.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddAttribute.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddAttribute.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddAttribute.java 2011-03-30 10:41:44-0700 @@ -48,6 +48,7 @@ import org.argouml.kernel.ProjectManager; import org.argouml.kernel.UmlModelMutator; import org.argouml.model.Model; +import org.argouml.model.UmlFactoryDefaults; import org.argouml.ui.targetmanager.TargetEvent; import org.argouml.ui.targetmanager.TargetListener; import org.argouml.ui.targetmanager.TargetManager; @@ -118,11 +119,8 @@ } Project project = ProjectManager.getManager().getCurrentProject(); - Object attrType = project.getDefaultAttributeType(); - Object attr = - Model.getCoreFactory().buildAttribute2( - classifier, - attrType); + UmlFactoryDefaults defaults = project.getUmlFactoryDefaults(); + Object attr = Model.getUmlFactory().buildNode(Model.getMetaTypes().getAttribute(), classifier, null, defaults); TargetManager.getInstance().setTarget(attr); } Modified: trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddOperation.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddOperation.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddOperation.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/ActionAddOperation.java 2011-03-30 10:41:44-0700 @@ -48,6 +48,7 @@ import org.argouml.kernel.ProjectManager; import org.argouml.kernel.UmlModelMutator; import org.argouml.model.Model; +import org.argouml.model.UmlFactoryDefaults; import org.argouml.ui.targetmanager.TargetEvent; import org.argouml.ui.targetmanager.TargetListener; import org.argouml.ui.targetmanager.TargetManager; @@ -103,7 +104,6 @@ super.actionPerformed(ae); - Project project = ProjectManager.getManager().getCurrentProject(); Object target = TargetManager.getInstance().getModelTarget(); Object classifier = null; @@ -114,12 +114,11 @@ } else { return; } - - Object returnType = project.getDefaultReturnType(); - Object oper = - Model.getCoreFactory().buildOperation(classifier, returnType); - TargetManager.getInstance().setTarget(oper); - + + Project project = ProjectManager.getManager().getCurrentProject(); + UmlFactoryDefaults defaults = project.getUmlFactoryDefaults(); + Object attr = Model.getUmlFactory().buildNode(Model.getMetaTypes().getOperation(), classifier, null, defaults); + TargetManager.getInstance().setTarget(attr); } /** Modified: trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java (original) +++ trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java 2011-03-30 10:41:44-0700 @@ -288,9 +288,15 @@ public Object buildNode(Object elementType, Object container, String property, UmlFactoryDefaults defaults) { Object element = buildNode(elementType, container, property); - if (defaults != null && defaults.getDefaultType(elementType) != null) { - Object type = defaults.getDefaultType(elementType); - modelImpl.getCoreHelper().setType(element, type); + if (defaults != null) { + final Object type = defaults.getDefaultType(elementType); + final String name = defaults.getDefaultName(elementType); + if (type != null) { + modelImpl.getCoreHelper().setType(element, type); + } + if (name != null) { + modelImpl.getCoreHelper().setName(element, name); + } } return element; } Modified: trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CoreFactoryMDRImpl.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CoreFactoryMDRImpl.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CoreFactoryMDRImpl.java (original) +++ trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CoreFactoryMDRImpl.java 2011-03-30 10:41:44-0700 @@ -797,7 +797,6 @@ */ Attribute buildAttribute() { Attribute attr = createAttribute(); - attr.setName("newAttr"); attr.setMultiplicity(getMultiplicity11()); attr.setVisibility(VisibilityKindEnum.VK_PUBLIC); attr.setOwnerScope(ScopeKindEnum.SK_INSTANCE); @@ -1096,7 +1095,6 @@ } Classifier cls = (Classifier) classifier; Operation oper = createOperation(); - oper.setName("newOperation"); oper.setOwner(cls); oper.setVisibility(VisibilityKindEnum.VK_PUBLIC); oper.setAbstract(false); Modified: trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java (original) +++ trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java 2011-03-30 10:41:44-0700 @@ -796,9 +796,15 @@ public Object buildNode(Object elementType, Object container, String property, UmlFactoryDefaults defaults) { Object element = buildNode(elementType, container, property); - if (defaults != null && defaults.getDefaultType(elementType) != null) { - Object type = defaults.getDefaultType(elementType); - modelImpl.getCoreHelper().setType(element, type); + if (defaults != null) { + final Object type = defaults.getDefaultType(elementType); + final String name = defaults.getDefaultName(elementType); + if (type != null) { + modelImpl.getCoreHelper().setType(element, type); + } + if (name != null) { + modelImpl.getCoreHelper().setName(element, name); + } } return element; } Modified: trunk/src/argouml-core-model/src/org/argouml/model/UmlFactoryDefaults.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model/src/org/argouml/model/UmlFactoryDefaults.java?view=diff&pathrev=19150&r1=19149&r2=19150 ============================================================================== --- trunk/src/argouml-core-model/src/org/argouml/model/UmlFactoryDefaults.java (original) +++ trunk/src/argouml-core-model/src/org/argouml/model/UmlFactoryDefaults.java 2011-03-30 10:41:44-0700 @@ -26,4 +26,11 @@ * @return the type instance to apply to the newly created object */ Object getDefaultType(Object metaType); + + /** + * Get the default name to apply when creating on object of the given meta type. + * @param metaType that is to be created + * @return the name to apply to the newly created object + */ + String getDefaultName(Object metaType); } ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2715381 To unsubscribe from this discussion, e-mail: [[email protected]].
