Author: bobtarling Date: 2009-12-19 05:24:27-0800 New Revision: 17686 Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionAsynchronousCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionSynchCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndNavigableCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndOrderingCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndTargetScopeCheckbox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLBehavioralFeatureQueryCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLClassActiveCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLDerivedCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLFeatureOwnerScopeCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementAbstractCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementLeafCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementRootCheckBox.java trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLTaggedValueCheckBox.java
Log: Remove the hardcoded property name that checkbox is being listened to. This means we can vary this for UML2. Make sure listeners are removed when checkbox removed Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java 2009-12-19 05:24:27-0800 @@ -274,33 +274,37 @@ private void buildCheckBox( final JPanel panel, final Object target, - final CheckBoxMeta p) { + final CheckBoxMeta prop) { UMLCheckBox checkbox = null; - if ("isAbstract".equals(p.getName())) { - checkbox = new UMLGeneralizableElementAbstractCheckBox(); - } else if ("isLeaf".equals(p.getName())) { - checkbox = new UMLGeneralizableElementLeafCheckBox(); - } else if ("isRoot".equals(p.getName())) { - checkbox = new UMLGeneralizableElementRootCheckBox(); - } else if ("derived".equals(p.getName())) { - checkbox = new UMLDerivedCheckBox(); - } else if ("isActive".equals(p.getName())) { - checkbox = new UMLClassActiveCheckBox(); - } else if ("ownerScope".equals(p.getName())) { - checkbox = new UMLFeatureOwnerScopeCheckBox(); - } else if ("targetScope".equals(p.getName())) { - checkbox = new UMLAssociationEndTargetScopeCheckbox(); - } else if ("isQuery".equals(p.getName())) { - checkbox = new UMLBehavioralFeatureQueryCheckBox(); - } else if ("isNavigable".equals(p.getName())) { - checkbox = new UMLAssociationEndNavigableCheckBox(); - } else if ("ordering".equals(p.getName())) { - checkbox = new UMLAssociationEndOrderingCheckBox(); - } else if ("isAsynchronous".equals(p.getName())) { - checkbox = new UMLActionAsynchronousCheckBox(); - } else if ("isSynch".equals(p.getName())) { - checkbox = new UMLActionSynchCheckBox(); + final String propertyName = prop.getName(); + + if ("isAbstract".equals(propertyName)) { + checkbox = new UMLGeneralizableElementAbstractCheckBox(propertyName, target); + } else if ("isLeaf".equals(propertyName)) { + checkbox = new UMLGeneralizableElementLeafCheckBox(propertyName, target); + } else if ("isRoot".equals(propertyName)) { + checkbox = new UMLGeneralizableElementRootCheckBox(propertyName, target); + } else if ("derived".equals(propertyName)) { + checkbox = new UMLDerivedCheckBox(propertyName, target); + } else if ("isActive".equals(propertyName)) { + checkbox = new UMLClassActiveCheckBox(propertyName, target); + } else if ("ownerScope".equals(propertyName)) { + checkbox = new UMLFeatureOwnerScopeCheckBox(propertyName, target); + } else if ("targetScope".equals(propertyName)) { + // TODO: An alternative property name will need to be inserted for + // UML 2.x + checkbox = new UMLAssociationEndTargetScopeCheckbox(propertyName, target); + } else if ("isQuery".equals(propertyName)) { + checkbox = new UMLBehavioralFeatureQueryCheckBox(propertyName, target); + } else if ("isNavigable".equals(propertyName)) { + checkbox = new UMLAssociationEndNavigableCheckBox(propertyName, target); + } else if ("ordering".equals(propertyName)) { + checkbox = new UMLAssociationEndOrderingCheckBox(propertyName, target); + } else if ("isAsynchronous".equals(propertyName)) { + checkbox = new UMLActionAsynchronousCheckBox(propertyName, target); + } else if ("isSynch".equals(propertyName)) { + checkbox = new UMLActionSynchCheckBox(propertyName, target); } if (checkbox != null) { Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionAsynchronousCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionAsynchronousCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionAsynchronousCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionAsynchronousCheckBox.java 2009-12-19 05:24:27-0800 @@ -47,9 +47,10 @@ /** * Constructor for UMLAssociationEndNavigableCheckBox. */ - public UMLActionAsynchronousCheckBox() { + public UMLActionAsynchronousCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.asynchronous"), - new ActionSetActionAsynchronous(), "isAsynchronous"); + new ActionSetActionAsynchronous(), propertyName, + target); } /* @@ -84,15 +85,13 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAAction(target)) { - Object m = target; - Model.getCommonBehaviorHelper().setAsynchronous( - m, - source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAAction(target)) { + Object m = target; + Model.getCommonBehaviorHelper().setAsynchronous( + m, + source.isSelected()); } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionSynchCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionSynchCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionSynchCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLActionSynchCheckBox.java 2009-12-19 05:24:27-0800 @@ -47,9 +47,11 @@ /** * Constructor for UMLAssociationEndNavigableCheckBox. */ - public UMLActionSynchCheckBox() { + public UMLActionSynchCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.synch-lc"), - new ActionSetSynch(), "isSynch"); + new ActionSetSynch(), + propertyName, + target); } /* @@ -83,15 +85,13 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAObjectFlowState(target)) { - Object m = target; - Model.getActivityGraphsHelper().setSynch( - m, - source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAObjectFlowState(target)) { + Object m = target; + Model.getActivityGraphsHelper().setSynch( + m, + source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndNavigableCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndNavigableCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndNavigableCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndNavigableCheckBox.java 2009-12-19 05:24:27-0800 @@ -47,9 +47,11 @@ /** * Constructor for UMLAssociationEndNavigableCheckBox. */ - public UMLAssociationEndNavigableCheckBox() { + public UMLAssociationEndNavigableCheckBox(final String propertyName, final Object target) { super(Translator.localize("label.navigable"), - new ActionSetAssociationEndNavigable(), "isNavigable"); + new ActionSetAssociationEndNavigable(), + propertyName, + target); } /* @@ -89,13 +91,11 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAAssociationEnd(target)) { - Object m = target; - Model.getCoreHelper().setNavigable(m, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAAssociationEnd(target)) { + Object m = target; + Model.getCoreHelper().setNavigable(m, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndOrderingCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndOrderingCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndOrderingCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndOrderingCheckBox.java 2009-12-19 05:24:27-0800 @@ -40,11 +40,17 @@ class UMLAssociationEndOrderingCheckBox extends UMLCheckBox { /** + * The class uid + */ + private static final long serialVersionUID = 2024978703219494507L; + + /** * Constructor for UMLAssociationEndOrderingCheckBox. */ - public UMLAssociationEndOrderingCheckBox() { + public UMLAssociationEndOrderingCheckBox(final String propertyName, final Object target) { super(Translator.localize("label.ordered"), - new ActionSetAssociationEndOrdering(), "ordering"); + new ActionSetAssociationEndOrdering(), propertyName, + target); } /* @@ -86,18 +92,16 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAAssociationEnd(target)) { - Object m = target; - if (source.isSelected()) { - Model.getCoreHelper().setOrdering(m, - Model.getOrderingKind().getOrdered()); - } else { - Model.getCoreHelper().setOrdering(m, - Model.getOrderingKind().getUnordered()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAAssociationEnd(target)) { + Object m = target; + if (source.isSelected()) { + Model.getCoreHelper().setOrdering(m, + Model.getOrderingKind().getOrdered()); + } else { + Model.getCoreHelper().setOrdering(m, + Model.getOrderingKind().getUnordered()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndTargetScopeCheckbox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndTargetScopeCheckbox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndTargetScopeCheckbox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLAssociationEndTargetScopeCheckbox.java 2009-12-19 05:24:27-0800 @@ -40,14 +40,18 @@ class UMLAssociationEndTargetScopeCheckbox extends UMLCheckBox { /** + * The class uid + */ + private static final long serialVersionUID = -8161016926703486344L; + + /** * Constructor for UMLAssociationEndTargetScopeCheckbox. */ - public UMLAssociationEndTargetScopeCheckbox() { - // TODO: property name will need to be updated for UML 2.x - // Unfortunately we can specify two property names here + public UMLAssociationEndTargetScopeCheckbox(final String propertyName, final Object target) { super(Translator.localize("label.static"), new ActionSetAssociationEndTargetScope(), - "targetScope"); + propertyName, + target); } /* @@ -87,13 +91,11 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAAssociationEnd(target)) { - Object m = target; - Model.getCoreHelper().setStatic(m, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAAssociationEnd(target)) { + Object m = target; + Model.getCoreHelper().setStatic(m, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLBehavioralFeatureQueryCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLBehavioralFeatureQueryCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLBehavioralFeatureQueryCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLBehavioralFeatureQueryCheckBox.java 2009-12-19 05:24:27-0800 @@ -44,9 +44,11 @@ /** * Constructor. */ - public UMLBehavioralFeatureQueryCheckBox() { + public UMLBehavioralFeatureQueryCheckBox( + final String propertyName, + final Object target) { super(Translator.localize("checkbox.query-lc"), - new ActionSetBehavioralFeatureQuery(), "isQuery"); + new ActionSetBehavioralFeatureQuery(), propertyName, target); } /* @@ -83,13 +85,11 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isABehavioralFeature(target)) { - Object m = target; - Model.getCoreHelper().setQuery(m, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isABehavioralFeature(target)) { + Object m = target; + Model.getCoreHelper().setQuery(m, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLCheckBox.java 2009-12-19 05:24:27-0800 @@ -32,9 +32,6 @@ import org.argouml.model.Model; import org.argouml.ui.LookAndFeelMgr; -import org.argouml.ui.targetmanager.TargetEvent; -import org.argouml.ui.targetmanager.TargetListener; -import org.tigris.gef.presentation.Fig; /** * The checkbox to be used to show boolean UML attributes in the GUI's. Mostly @@ -52,6 +49,11 @@ private Object checkBoxTarget; private String propertySetName; + + /** + * The action that will be called when the checkbox changes + */ + private Action action; /** * Constructor for UMLCheckBox. @@ -59,13 +61,15 @@ * @param a the action we're going to listen to * @param name the property set name */ - public UMLCheckBox(String text, Action a, String name) { + public UMLCheckBox(String text, Action a, String name, Object target) { super(text); + action = a; setFont(LookAndFeelMgr.getInstance().getStandardFont()); propertySetName = name; addActionListener(a); setActionCommand((String) a.getValue(Action.ACTION_COMMAND_KEY)); + setTarget(target); } /* @@ -90,7 +94,7 @@ * not come via the container. * @param target The target to set */ - public void setTarget(Object target) { + protected void setTarget(Object target) { checkBoxTarget = target; Model.getPump().addModelEventListener( this, checkBoxTarget, propertySetName); @@ -103,4 +107,13 @@ * for example UMLModelElementListModel. */ public abstract void buildModel(); + + /** + * Remove all listeners when the component is removed from its parent + */ + public void removeNotify() { + removeActionListener(action); + Model.getPump().removeModelEventListener( + this, checkBoxTarget, propertySetName); + } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLClassActiveCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLClassActiveCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLClassActiveCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLClassActiveCheckBox.java 2009-12-19 05:24:27-0800 @@ -40,11 +40,17 @@ class UMLClassActiveCheckBox extends UMLCheckBox { /** + * The class uid + */ + private static final long serialVersionUID = 4417702876240900704L; + + /** * Constructor for UMLGeneralizableElementRootCheckBox. */ - public UMLClassActiveCheckBox() { + public UMLClassActiveCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.active-lc"), - new ActionSetClassActive(), "isActive"); + new ActionSetClassActive(), propertyName, + target); } /* @@ -63,6 +69,11 @@ private static class ActionSetClassActive extends UndoableAction { /** + * The class uid + */ + private static final long serialVersionUID = 251121174283896062L; + + /** * Constructor. */ public ActionSetClassActive() { @@ -77,13 +88,11 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAClass(target)) { - Object m = target; - Model.getCoreHelper().setActive(m, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAClass(target)) { + Object m = target; + Model.getCoreHelper().setActive(m, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLDerivedCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLDerivedCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLDerivedCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLDerivedCheckBox.java 2009-12-19 05:24:27-0800 @@ -24,8 +24,6 @@ package org.argouml.core.propertypanels.ui; -import org.argouml.model.Facade; - /** * Class to represent a checkbox for the derived tagged value. * @@ -34,11 +32,16 @@ class UMLDerivedCheckBox extends UMLTaggedValueCheckBox { /** + * The class uid + */ + private static final long serialVersionUID = 4011685721602249221L; + + /** * The constructor. * */ - public UMLDerivedCheckBox() { + public UMLDerivedCheckBox(final String propertyName, final Object target) { // TODO: This is a tagged value name which will never trigger an event - super(Facade.DERIVED_TAG); + super(propertyName, target); } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLFeatureOwnerScopeCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLFeatureOwnerScopeCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLFeatureOwnerScopeCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLFeatureOwnerScopeCheckBox.java 2009-12-19 05:24:27-0800 @@ -46,9 +46,10 @@ /** * Constructor for UMLFeatureOwnerScopeCheckBox. */ - public UMLFeatureOwnerScopeCheckBox() { + public UMLFeatureOwnerScopeCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.static-lc"), - new ActionSetFeatureOwnerScope(), "ownerScope"); + new ActionSetFeatureOwnerScope(), propertyName, + target); } /* @@ -84,12 +85,10 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAFeature(target)) { - Model.getCoreHelper().setStatic(target, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAFeature(target)) { + Model.getCoreHelper().setStatic(target, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementAbstractCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementAbstractCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementAbstractCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementAbstractCheckBox.java 2009-12-19 05:24:27-0800 @@ -47,10 +47,13 @@ /** * Constructor for UMLGeneralizableElementRootCheckBox. */ - public UMLGeneralizableElementAbstractCheckBox() { + public UMLGeneralizableElementAbstractCheckBox( + final String propertyName, + final Object target) { super(Translator.localize("checkbox.abstract-lc"), new ActionSetGeneralizableElementAbstract(), - "isAbstract"); + propertyName, + target); } /* @@ -92,14 +95,12 @@ */ public void actionPerformed(ActionEvent e) { super.actionPerformed(e); - if (e.getSource() instanceof UMLCheckBox) { - UMLCheckBox source = (UMLCheckBox) e.getSource(); - Object target = source.getTarget(); - if (Model.getFacade().isAGeneralizableElement(target) - || Model.getFacade().isAOperation(target) - || Model.getFacade().isAReception(target)) { - Model.getCoreHelper().setAbstract(target, source.isSelected()); - } + UMLCheckBox source = (UMLCheckBox) e.getSource(); + Object target = source.getTarget(); + if (Model.getFacade().isAGeneralizableElement(target) + || Model.getFacade().isAOperation(target) + || Model.getFacade().isAReception(target)) { + Model.getCoreHelper().setAbstract(target, source.isSelected()); } } } Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementLeafCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementLeafCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementLeafCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementLeafCheckBox.java 2009-12-19 05:24:27-0800 @@ -42,9 +42,11 @@ /** * Constructor for UMLGeneralizableElementLeafCheckBox. */ - public UMLGeneralizableElementLeafCheckBox() { + public UMLGeneralizableElementLeafCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.leaf-lc"), - new ActionSetGeneralizableElementLeaf(), "isLeaf"); + new ActionSetGeneralizableElementLeaf(), + propertyName, + target); } /* Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementRootCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementRootCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementRootCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLGeneralizableElementRootCheckBox.java 2009-12-19 05:24:27-0800 @@ -47,9 +47,11 @@ /** * Constructor for UMLGeneralizableElementRootCheckBox. */ - public UMLGeneralizableElementRootCheckBox() { + public UMLGeneralizableElementRootCheckBox(final String propertyName, final Object target) { super(Translator.localize("checkbox.root-lc"), - new ActionSetGeneralizableElementRoot(), "isRoot"); + new ActionSetGeneralizableElementRoot(), + propertyName, + target); } /* Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLTaggedValueCheckBox.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLTaggedValueCheckBox.java?view=diff&pathrev=17686&r1=17685&r2=17686 ============================================================================== --- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLTaggedValueCheckBox.java (original) +++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLTaggedValueCheckBox.java 2009-12-19 05:24:27-0800 @@ -43,11 +43,12 @@ private String tagName; - public UMLTaggedValueCheckBox(String name) { - super(Translator.localize("checkbox." + name + "-lc"), - new ActionBooleanTaggedValue(name), - name); - tagName = name; + public UMLTaggedValueCheckBox(String propertyName, Object target) { + super(Translator.localize("checkbox." + propertyName + "-lc"), + new ActionBooleanTaggedValue(propertyName), + propertyName, + target); + tagName = propertyName; } /** ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2431716 To unsubscribe from this discussion, e-mail: [[email protected]].
