Author: bobtarling Date: 2008-05-12 15:14:21-0700 New Revision: 14715 Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java
Log: Some refactoring to remove redundant code. As far as I can take this for now without some notation changes. Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java?view=diff&rev=14715&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java&r1=14714&r2=14715 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigClass.java 2008-05-12 15:14:21-0700 @@ -332,36 +332,17 @@ /* * @see org.argouml.uml.diagram.ui.FigNodeModelElement#textEdited(org.tigris.gef.presentation.FigText) + * TODO: Move this to superclass once TODO comments in + * FigEnumeration.textEdited complete */ protected void textEdited(FigText ft) throws PropertyVetoException { super.textEdited(ft); - Object classifier = getOwner(); - if (classifier == null) { + // TODO: Do we really need this? + if (getOwner() == null) { return; } - // TODO: Two duplicate code blocks here. Can this all be moved to - // FigEditableCompartment? - int i = new ArrayList(getAttributesFig().getFigs()).indexOf(ft); - if (i != -1) { - final CompartmentFigText figText = (CompartmentFigText) ft; - figText.setHighlighted(true); - - figText.getNotationProvider() - .parse(figText.getOwner(), ft.getText()); - ft.setText(figText.getNotationProvider().toString( - figText.getOwner(), null)); - return; - } - i = new ArrayList(getOperationsFig().getFigs()).indexOf(ft); - if (i != -1) { - final CompartmentFigText figText = (CompartmentFigText) ft; - figText.setHighlighted(true); - - figText.getNotationProvider() - .parse(figText.getOwner(), ft.getText()); - ft.setText(figText.getNotationProvider().toString( - figText.getOwner(), null)); - return; + if (ft instanceof CompartmentFigText) { + ((CompartmentFigText) ft).textEdited(); } } Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java?view=diff&rev=14715&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java&r1=14714&r2=14715 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigDataType.java 2008-05-12 15:14:21-0700 @@ -259,13 +259,15 @@ */ protected void textEdited(FigText ft) throws PropertyVetoException { super.textEdited(ft); - Object cls = getOwner(); - if (cls == null) { + // TODO: Do we really need this? + if (getOwner() == null) { return; } + // TODO: Can we do same here as in FigClass and FigInterface? + // FigEnumeration will need to be reworked first. + // Then we can move all common functionality of textEdited to + // superclass. int i = getOperationsFig().getFigs().indexOf(ft); - // TODO: Duplicate code here as in FigClass. Can this all be moved to - // FigEditableCompartment? if (i != -1) { final CompartmentFigText figText = (CompartmentFigText) ft; figText.setHighlighted(true); Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java?view=diff&rev=14715&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java&r1=14714&r2=14715 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigEnumeration.java 2008-05-12 15:14:21-0700 @@ -203,11 +203,12 @@ if (cls == null) { return; } - + // TODO: Can we do same here as in FigClass, FigInterface etc? + // Does work need doing in notations to allow this? + // Then we can move all common functionality of textEdited to + // superclass. int i = literalsCompartment.getFigs().indexOf(ft); - // TODO: Almost duplicate code here as in FigClass. Can this all be - // moved to FigEditableCompartment? - if (i != -1) { + if (ft instanceof CompartmentFigText) { final CompartmentFigText figText = (CompartmentFigText) ft; figText.setHighlighted(true); Model.getCoreHelper().setName(figText.getOwner(), Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java?view=diff&rev=14715&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java&r1=14714&r2=14715 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigInterface.java 2008-05-12 15:14:21-0700 @@ -298,24 +298,17 @@ /* * @see org.argouml.uml.diagram.ui.FigNodeModelElement#textEdited( * org.tigris.gef.presentation.FigText) + * TODO: Move this to superclass once TODO comments in + * FigEnumeration.textEdited complete */ protected void textEdited(FigText ft) throws PropertyVetoException { super.textEdited(ft); - Object cls = getOwner(); - if (cls == null) { + // TODO: Is this really needed? + if (getOwner() == null) { return; } - int i = getOperationsFig().getFigs().indexOf(ft); - // TODO: Duplicate code here as in FigClass. Can this all be moved to - // FigEditableCompartment? - if (i != -1) { - final CompartmentFigText figText = (CompartmentFigText) ft; - figText.setHighlighted(true); - - figText.getNotationProvider() - .parse(figText.getOwner(), ft.getText()); - ft.setText(figText.getNotationProvider().toString( - figText.getOwner(), null)); + if (ft instanceof CompartmentFigText) { + ((CompartmentFigText) ft).textEdited(); } } Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java?view=diff&rev=14715&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java&r1=14714&r2=14715 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java (original) +++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/CompartmentFigText.java 2008-05-12 15:14:21-0700 @@ -283,4 +283,15 @@ public boolean isHighlighted() { return highlighted; } + + /** + * Called when text editing has completed on this Fig. + * TODO: This should become protected once textEdited in FigEnumeration + * has been refactored to FigNodeModelElement + */ + public void textEdited() { + setHighlighted(true); + getNotationProvider().parse(getOwner(), getText()); + setText(getNotationProvider().toString(getOwner(), null)); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
