From: Benjamin B. <bg...@us...> - 2005-07-21 15:21:45
|
Update of /cvsroot/sblim/ecute/Plugin/com/ibm/ecute/rsa/core/internal/dialogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11035/Plugin/com/ibm/ecute/rsa/core/internal/dialogs Modified Files: EditQualifiersDialog.java Log Message: flavors presentation and modification rule implemented edit qualifiers dialog Index: EditQualifiersDialog.java =================================================================== RCS file: /cvsroot/sblim/ecute/Plugin/com/ibm/ecute/rsa/core/internal/dialogs/EditQualifiersDialog.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- EditQualifiersDialog.java 15 Jun 2005 09:41:48 -0000 1.8 +++ EditQualifiersDialog.java 21 Jul 2005 15:19:33 -0000 1.9 @@ -25,6 +25,7 @@ import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.RGB; import org.eclipse.swt.layout.FormAttachment; import org.eclipse.swt.layout.FormData; @@ -74,9 +75,11 @@ import com.ibm.ecute.EcuteEclipsePlugin; import com.ibm.ecute.Qualifiers.Qualifier; import com.ibm.ecute.Qualifiers.QualifiersList; +import com.ibm.ecute.rsa.core.internal.properties.FlavorsHelper; import com.ibm.ecute.rsa.core.internal.properties.QualifierDefinitionObject; import com.ibm.ecute.rsa.core.internal.properties.QualifierValueObject; import com.ibm.ecute.rsa.core.internal.properties.QualifiersPropertySection; +import com.ibm.ecute.rsa.core.internal.properties.ValuesTableHelper; import com.ibm.ecute.utils.Constants; import com.ibm.ecute.utils.License; @@ -105,8 +108,8 @@ // Copyright private static final String COPYRIGHT = License.COPYRIGHT; - private static final int BUTTON_WIDTH = 90; - private static final int BUTTON_HEIGHT = 22; + private /*static final*/ int BUTTON_WIDTH;// = 90; + private /*static final*/ int BUTTON_HEIGHT;// = 22; private static final int NAME_COL_WIDTH = 135; private static final int TYPE_COL_WIDTH = 60; @@ -118,6 +121,7 @@ private Color YELLOW = null; private Color WHITE = null; + Shell shell; Model uml2Model; IUMLDiagramHelper diagramHelper = UMLModeler.getUMLDiagramHelper(); @@ -126,7 +130,7 @@ Button showAllButton; Label inheritLabel; Combo inheritComboBox; - Label elementLabel; + //Label elementLabel; Table valueTable; Combo propertiesComboBox; Combo methodsComboBox; @@ -200,6 +204,7 @@ public EditQualifiersDialog(Shell shell, NamedElement element, int index, QualifiersPropertySection qualSec) { super(shell); setShellStyle(getShellStyle()|SWT.RESIZE| SWT.MAX); + //this.shell = shell; this.element = element; startElement = element; startIndex = index; @@ -210,9 +215,10 @@ public Control createDialogArea(Composite parent) { - parent.getShell().setText("Edit Qualifiers" + - " (" + Constants.toolName + " " + Constants.pluginVersion + ")"); - + this.shell = parent.getShell(); +// parent.getShell().setText("Edit Qualifiers" + +// " (" + Constants.toolName + " " + Constants.pluginVersion + ")"); + GridLayout grid = new GridLayout(); grid.numColumns = 1; parent.setLayout(grid); @@ -246,7 +252,7 @@ resetDefinitionTableChanged(); } } - fillValueTable(element); + fillValueTable(element, valueTable); } else if(folder.getSelectionIndex() == 1){ performMarksQuestion("leaveTab"); @@ -271,7 +277,7 @@ showAllButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent selectionevent) { - fillValueTable(element); + fillValueTable(element, valueTable); qualPropSec.setShowAll(showAllButton.getSelection()); } }); @@ -293,15 +299,16 @@ Package thisPackage = (Package)element.getOwner(); element = getSelectedClass(selected, thisPackage, true); // update dialog content - fillValueTable(element); + fillValueTable(element, valueTable); fillComboBoxes(element); - setElementLabel(); + //setElementLabel(); + setDialogTitle(); setButtonVisibility(); } }); // elementLabel - elementLabel = new Label(valComposite, SWT.NONE); + //elementLabel = new Label(valComposite, SWT.NONE); // valueTable valueTable = new Table(valComposite, @@ -376,9 +383,10 @@ element = getSelectedProperty(selected,(Class)element); } // update dialog content - fillValueTable(element); + fillValueTable(element, valueTable); fillComboBoxes(element); - setElementLabel(); + //setElementLabel(); + setDialogTitle(); setButtonVisibility(); } }); @@ -396,9 +404,10 @@ element = getSelectedMethod(selected,(Class)element); } // update dialog content - fillValueTable(element); + fillValueTable(element, valueTable); fillComboBoxes(element); - setElementLabel(); + //setElementLabel(); + setDialogTitle(); setButtonVisibility(); } }); @@ -425,9 +434,10 @@ element = getOtherParameter(selected,(Parameter)element); } // update dialog content - fillValueTable(element); + fillValueTable(element, valueTable); fillComboBoxes(element); - setElementLabel(); + //setElementLabel(); + setDialogTitle(); setButtonVisibility(); } }); @@ -459,9 +469,10 @@ element = (Operation)parameter.getOwner(); } // update dialog content - fillValueTable(element); + fillValueTable(element, valueTable); fillComboBoxes(element); - setElementLabel(); + //setElementLabel(); + setDialogTitle(); setButtonVisibility(); } }); @@ -553,7 +564,7 @@ performValuesChanges(); valueTable.removeAll(); - fillValueTable(element); + fillValueTable(element, valueTable); valLegendComposite.setVisible(false); applyButton.setEnabled(false); @@ -574,7 +585,7 @@ resetRemovedValues(); valueTable.removeAll(); - fillValueTable(element); + fillValueTable(element, valueTable); valLegendComposite.setVisible(false); applyButton.setEnabled(false); @@ -589,10 +600,12 @@ valuesTab.setControl(valComposite); // fill and layout tab - setElementLabel(); - fillValueTable(element); + //setElementLabel(); + setDialogTitle(); + fillValueTable(element, valueTable); fillComboBoxes(); setButtonVisibility(); + setButtonSize(); setValueTabLayout(); if(startIndex > -1){ valueTable.setSelection(startIndex); @@ -1065,19 +1078,19 @@ } else { definedIn = fullDefinedIn; } - if(!definedIn.equalsIgnoreCase("") && !definedIn.equalsIgnoreCase(element.getName()) && - valueObject.inheritance.trim().equalsIgnoreCase("ToSubclass DisableOverride")){ - MessageBox messageBox = - new MessageBox(Display.getCurrent().getActiveShell(), - SWT.OK| - SWT.ICON_INFORMATION); - messageBox.setText("Can't override qualifier"); - messageBox.setMessage("The qualifier you've selected has the flavor \"DisableOverride\" and its value is already\n" + - "set in "+ fullDefinedIn + ".\n" + - "Therefore you're not allowed to change the qualifier value in this element. To change this\n" + - "value, navigate to the element where it is defined and change the value there."); - messageBox.open(); - } else { +// if(!definedIn.equalsIgnoreCase("") && !definedIn.equalsIgnoreCase(element.getName()) && +// valueObject.inheritance.trim().equalsIgnoreCase("ToSubclass DisableOverride")){ +// MessageBox messageBox = +// new MessageBox(Display.getCurrent().getActiveShell(), +// SWT.OK| +// SWT.ICON_INFORMATION); +// messageBox.setText("Can't override qualifier"); +// messageBox.setMessage("The qualifier you've selected has the flavor \"DisableOverride\" and its value is already\n" + +// "set in "+ fullDefinedIn + ".\n" + +// "Therefore you're not allowed to change the qualifier value in this element. To change this\n" + +// "value, navigate to the element where it is defined and change the value there."); +// messageBox.open(); +// } else { if(valueObject.name.equalsIgnoreCase("In")||valueObject.name.equalsIgnoreCase("Out")){ setInOutValueObjects(valueObject); } @@ -1115,7 +1128,7 @@ valueTable.getItem(ai).setBackground(YELLOW); } } - } + //} valueTable.setSelection(ai); valueTable.setFocus(); @@ -1215,7 +1228,7 @@ } - private void fillValueTable(NamedElement element){ + private void fillValueTable(NamedElement element, Table valueTable){ valueTable.removeAll(); QualifiersList qualifiersList=null; try { @@ -1230,14 +1243,25 @@ allAvailableQualifers.add(vector.get(i)); } +// String definedIn = ""; +// if(element instanceof Class){ +// definedIn = element.getName(); +// }else{ +// Element owner = element.getOwner(); +// if(owner instanceof NamedElement) +// definedIn = ((NamedElement)element.getOwner()).getName(); +// } + String definedIn = ""; - if(element instanceof Class){ - definedIn = element.getName()+" ("+element.getNearestPackage().getName()+")"; - }else{ - Element owner = element.getOwner(); - if(owner instanceof NamedElement) - definedIn = ((NamedElement)element.getOwner()).getName()+" ("+owner.getNearestPackage().getName()+")"; - } + if(element instanceof Class){ + definedIn = element.getName(); + }else if(element instanceof Parameter){ + definedIn = ((NamedElement)element.getOwner().getOwner()).getName() + "::" + ((NamedElement)element.getOwner()).getName() + "::" + element.getName(); + }else{ + Element owner = element.getOwner(); + if(owner instanceof NamedElement) + definedIn = ((NamedElement)element.getOwner()).getName() + "::" +element.getName(); + } //display all qualifiers witch are set in the Qualifiers-Stereotype Stereotype cimStereotype = element.getAppliedStereotype("CIM::Qualifiers"); @@ -1449,20 +1473,46 @@ //Qualifier: Max, Min if(isOwnedEnd){ if(((AssociationClass)prop.getOwner()).getOwnedEnds().contains(prop)){ - if(prop.getUpper() != MultiplicityElement.UNLIMITED_UPPER_BOUND){ - qualifierName = "Max"; - String value = new Integer(prop.getUpper()).toString(); - Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); - addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); - allAvailableQualifers.remove(qualifierObject); - } - if(prop.getLower() != 0){ - qualifierName = "Min"; - String value = new Integer(prop.getLower()).toString(); - Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); - addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); - allAvailableQualifers.remove(qualifierObject); - } + + if((prop.getUpper() != MultiplicityElement.UNLIMITED_UPPER_BOUND) || + (prop.getUpper() == MultiplicityElement.UNLIMITED_UPPER_BOUND + &&prop.getUpper() != (FlavorsHelper.effectiveInheritedValue(element, "Max")).getIntValue())){ + qualifierName = "Max"; + String value = new Integer(prop.getUpper()).toString(); + if(value.equalsIgnoreCase("-1")){ + value = "null"; + } + Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); + addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); + allAvailableQualifers.remove(qualifierObject); + } + if((prop.getLower() != 0) || (prop.getLower() == 0 + && prop.getLower() != (FlavorsHelper.effectiveInheritedValue(element, "Min")).getIntValue())){ + qualifierName = "Min"; + String value = new Integer(prop.getLower()).toString(); + if(value.equalsIgnoreCase("-1")){ + value = "0"; + } + Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); + addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); + allAvailableQualifers.remove(qualifierObject); + } + + +// if(prop.getUpper() != MultiplicityElement.UNLIMITED_UPPER_BOUND){ +// qualifierName = "Max"; +// String value = new Integer(prop.getUpper()).toString(); +// Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); +// addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); +// allAvailableQualifers.remove(qualifierObject); +// } +// if(prop.getLower() != 0){ +// qualifierName = "Min"; +// String value = new Integer(prop.getLower()).toString(); +// Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); +// addQualiferToValueTable(qualifierName, value, definedIn, qualifierObject, -1, false); +// allAvailableQualifers.remove(qualifierObject); +// } } } //Qualifier: Octetstring @@ -1522,10 +1572,28 @@ } // TODO get inherited qualifiers + // Inherited qualifiers + // Get all inherited qualifiers which aren't already defined in this element + boolean isOwnedEnd = false; + if(element instanceof Property){ + Property prop = (Property)element; + isOwnedEnd = propertyIsOwnedEnd(prop); + } + + ValuesTableHelper tableHelper = new ValuesTableHelper(valueTable); + ArrayList inheritedQualifiers = tableHelper.getInheritedQualifers(element, allAvailableQualifers, isOwnedEnd); + for(int k = 0; k < inheritedQualifiers.size(); k++){ + qualifierName = ((QualifierValueObject)inheritedQualifiers.get(k)).name; + String qualifierValue = ((QualifierValueObject)inheritedQualifiers.get(k)).value; + definedIn = ((QualifierValueObject)inheritedQualifiers.get(k)).definedIn; + Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); + addQualiferToValueTable(qualifierName, qualifierValue, definedIn, qualifierObject, -1, false); + allAvailableQualifers.remove(qualifierObject); + } //dispaly all qualifiers with default values if(showAllButton.getSelection()){ - definedIn = ""; + definedIn = "Default value"; for(Iterator iterator1 = allAvailableQualifers.iterator(); iterator1.hasNext();) { Qualifier qualifier = (Qualifier)iterator1.next(); @@ -2304,6 +2372,14 @@ } } + private void setButtonSize(){ + + Point buttonSize = removeButton.computeSize(SWT.DEFAULT, SWT.DEFAULT); + + BUTTON_WIDTH = buttonSize.x; + BUTTON_HEIGHT = buttonSize.y; + } + private void setValueTabLayout(){ FormData formdata = new FormData(); @@ -2312,7 +2388,7 @@ showAllButton.setLayoutData(formdata); formdata = new FormData(); - formdata.right = new FormAttachment(100,-95); + formdata.right = new FormAttachment(100,-BUTTON_WIDTH-10); formdata.top = new FormAttachment(0,5); inheritComboBox.setLayoutData(formdata); @@ -2321,35 +2397,44 @@ formdata.top = new FormAttachment(0,8); inheritLabel.setLayoutData(formdata); - formdata = new FormData(); - formdata.left = new FormAttachment(0,5); - formdata.top = new FormAttachment(showAllButton,8); - elementLabel.setLayoutData(formdata); +// formdata = new FormData(); +// formdata.left = new FormAttachment(0,5); +// formdata.top = new FormAttachment(showAllButton,8); +// elementLabel.setLayoutData(formdata); formdata = new FormData(); formdata.left = new FormAttachment(0,50); - formdata.bottom = new FormAttachment(100,-5); + formdata.bottom = new FormAttachment(100,-6); propertiesComboBox.setLayoutData(formdata); formdata = new FormData(); formdata.left = new FormAttachment(propertiesComboBox,100); - formdata.bottom = new FormAttachment(100,-5); + formdata.bottom = new FormAttachment(100,-6); methodsComboBox.setLayoutData(formdata); formdata = new FormData(); formdata.left = new FormAttachment(methodsComboBox,100); - formdata.bottom = new FormAttachment(100, -5); + formdata.bottom = new FormAttachment(100, -6); rolesComboBox.setLayoutData(formdata); formdata = new FormData(); formdata.left = new FormAttachment(rolesComboBox,100); formdata.bottom = new FormAttachment(100, -5); formdata.height = BUTTON_HEIGHT; + formdata.width = BUTTON_WIDTH; parentButton.setLayoutData(formdata); + +// formdata = new FormData(); +// formdata.right = new FormAttachment(100,-5); +// formdata.top = new FormAttachment(editButton,5); +// //formdata.height = BUTTON_HEIGHT; +// //formdata.width = BUTTON_WIDTH; +// removeButton.setLayoutData(formdata); +// //setButtonSize(); formdata = new FormData(); formdata.right = new FormAttachment(100,-5); - formdata.top = new FormAttachment(0,53); + formdata.top = new FormAttachment(inheritComboBox,5); formdata.height = BUTTON_HEIGHT; formdata.width = BUTTON_WIDTH; editButton.setLayoutData(formdata); @@ -2360,7 +2445,7 @@ formdata.height = BUTTON_HEIGHT; formdata.width = BUTTON_WIDTH; removeButton.setLayoutData(formdata); - + // formdata = new FormData(); // formdata.right = new FormAttachment(100,-5); // formdata.top = new FormAttachment(deleteButton,5); @@ -2391,8 +2476,8 @@ formdata = new FormData(); formdata.left = new FormAttachment(0,5); formdata.right = new FormAttachment(editButton,-5); - formdata.top = new FormAttachment(elementLabel,10); - formdata.bottom = new FormAttachment(propertiesComboBox,-5); + formdata.top = new FormAttachment(inheritComboBox,5); + formdata.bottom = new FormAttachment(parentButton,-5); formdata.height = 200; valueTable.setLayoutData(formdata); @@ -2693,7 +2778,7 @@ performValuesChanges(); valueTable.removeAll(); - fillValueTable(element); + fillValueTable(element, valueTable); valLegendComposite.setVisible(false); applyButton.setEnabled(false); @@ -2706,7 +2791,7 @@ resetRemovedValues(); valueTable.removeAll(); - fillValueTable(element); + fillValueTable(element, valueTable); valLegendComposite.setVisible(false); applyButton.setEnabled(false); @@ -2715,17 +2800,108 @@ } } + private void setDialogTitle(){ + + //String title = shell.getText(); + //String title = + " (" + Constants.toolName + " " + Constants.pluginVersion + ")"; + //String elementLabelText = elementLabel.getText(); + String elementLabelText = getElementLabel(); + + String newTitle = "Edit Qualifiers" + " - " + elementLabelText + " (" + Constants.toolName + " " + Constants.pluginVersion + ")"; + shell.setText(newTitle); +// shell.setText("Edit Qualifiers" + +// " (" + Constants.toolName + " " + Constants.pluginVersion + ")"); + } - private void setElementLabel(){ + +// private void setElementLabel(){ +// if(element instanceof Class){ +// Class class_ = (Class) element; +// String className = class_.getName(); +// Package package_ = (Package) class_.getOwner(); +// String packageName = package_.getName(); +// //elementLabel.setText("<Class> " + className + " in <Package> " + packageName); +// elementLabel.setText("<Class> " + packageName + "::" + className ); +// } +// +// if(element instanceof Property){ +// Property property = (Property) element; +// String propertyName = property.getName(); +// Element owner = property.getOwner(); +// if (owner instanceof Class){ +// Class class_ = (Class) owner; +// String className = class_.getName(); +// Package package_ = (Package) class_.getOwner(); +// String packageName = package_.getName(); +//// elementLabel.setText("<Property> " + propertyName + " of <Class> " + className + +//// " in <Package> " + packageName); +// elementLabel.setText("<Property> " + packageName + "::" + className + "::" + propertyName); +// } +// if (owner instanceof AssociationClass){ +// AssociationClass class_ = (AssociationClass) owner; +// String className = class_.getName(); +// Package package_ = (Package) class_.getOwner(); +// String packageName = package_.getName(); +// if(property.getAssociation() != null){ +//// elementLabel.setText("<Role> " + propertyName + " of <Association> " + className + +//// " in <Package> " + packageName); +// elementLabel.setText("<Role> " + packageName + "::" + className + "::" + propertyName); +// } else { +// elementLabel.setText("<Property> " + packageName + "::" + className + "::" + propertyName); +//// elementLabel.setText("<Property> " + propertyName + " of <Association> " + className + +//// " in <Package> " + packageName); +// } +// } +// } +// +// if(element instanceof Operation){ +// Operation method = (Operation) element; +// String methodName = method.getName(); +// Class class_ = (Class)method.getOwner(); +// String className = class_.getName(); +// Package package_ = (Package) class_.getOwner(); +// String packageName = package_.getName(); +// elementLabel.setText("<Method> " + packageName + "::" + className + "::" + methodName); +// } +// +// if(element instanceof Parameter){ +// Parameter parameter = (Parameter) element; +// String parameterName= parameter.getName(); +// Operation owner = (Operation)parameter.getOwner(); +// String methodName = owner.getName(); +// Class class_ = (Class)owner.getOwner(); +// String className = class_.getName(); +// Package package_ = (Package) class_.getOwner(); +// String packageName = package_.getName(); +//// elementLabel.setText("<Parameter> " + parameterName + " of <Method> "+ methodName + +//// " of <Class> " + className + " in <Package> " + packageName); +// elementLabel.setText("<Parameter> " + packageName + "::" + className + "::" + methodName + "::" + parameterName); +// } +// +// if(element instanceof AssociationClass){ +// AssociationClass associationClass = (AssociationClass) element; +// String className = associationClass.getName(); +// Package package_ = (Package) associationClass.getOwner(); +// String packageName = package_.getName(); +// //elementLabel.setText("<Association> " + className + " in <Package> " + packageName); +// elementLabel.setText("<Association Class> " + packageName + "::" + className ); +// } +// elementLabel.pack(); +// setDialogTitle(); +// +// } + + private String getElementLabel(){ + String elementLabel = ""; + if(element instanceof Class){ Class class_ = (Class) element; String className = class_.getName(); Package package_ = (Package) class_.getOwner(); String packageName = package_.getName(); - elementLabel.setText("<Class> " + className + " in <Package> " + packageName); - } + elementLabel = "<Class> " + packageName + "::" + className; - if(element instanceof Property){ + } else if(element instanceof Property){ Property property = (Property) element; String propertyName = property.getName(); Element owner = property.getOwner(); @@ -2734,36 +2910,31 @@ String className = class_.getName(); Package package_ = (Package) class_.getOwner(); String packageName = package_.getName(); - elementLabel.setText("<Property> " + propertyName + " of <Class> " + className + - " in <Package> " + packageName); - } + elementLabel = "<Property> " + packageName + "::" + className + "::" + propertyName; + + } if (owner instanceof AssociationClass){ AssociationClass class_ = (AssociationClass) owner; String className = class_.getName(); Package package_ = (Package) class_.getOwner(); String packageName = package_.getName(); if(property.getAssociation() != null){ - elementLabel.setText("<Role> " + propertyName + " of <Association> " + className + - " in <Package> " + packageName); + elementLabel = "<Role> " + packageName + "::" + className + "::" + propertyName; } else { - elementLabel.setText("<Property> " + propertyName + " of <Association> " + className + - " in <Package> " + packageName); + elementLabel = "<Property> " + packageName + "::" + className + "::" + propertyName; } } - } - if(element instanceof Operation){ + } else if(element instanceof Operation){ Operation method = (Operation) element; String methodName = method.getName(); Class class_ = (Class)method.getOwner(); String className = class_.getName(); Package package_ = (Package) class_.getOwner(); String packageName = package_.getName(); - elementLabel.setText("<Method> " + methodName + " of <Class> " + className + - " in <Package> " + packageName); - } + elementLabel = "<Method> " + packageName + "::" + className + "::" + methodName; - if(element instanceof Parameter){ + } else if(element instanceof Parameter){ Parameter parameter = (Parameter) element; String parameterName= parameter.getName(); Operation owner = (Operation)parameter.getOwner(); @@ -2772,19 +2943,17 @@ String className = class_.getName(); Package package_ = (Package) class_.getOwner(); String packageName = package_.getName(); - elementLabel.setText("<Parameter> " + parameterName + " of <Method> "+ methodName + - " of <Class> " + className + " in <Package> " + packageName); - } + elementLabel = "<Parameter> " + packageName + "::" + className + "::" + methodName + "::" + parameterName; - if(element instanceof AssociationClass){ + } else if(element instanceof AssociationClass){ AssociationClass associationClass = (AssociationClass) element; String className = associationClass.getName(); Package package_ = (Package) associationClass.getOwner(); String packageName = package_.getName(); - elementLabel.setText("<Association> " + className + " in <Package> " + packageName); + elementLabel = "<Association Class> " + packageName + "::" + className; } - elementLabel.pack(); + return elementLabel; } private void setButtonVisibility(){ @@ -2839,7 +3008,7 @@ parentButton.setVisible(true); parentButton.setText("parent class"); parentButton.setToolTipText("Go to the parent class of this property"); - parentButton.pack(); + //parentButton.pack(); } if (element instanceof Operation){ inheritLabel.setVisible(false); @@ -2850,7 +3019,7 @@ parentButton.setVisible(true); parentButton.setText("parent class"); parentButton.setToolTipText("Go to the parent class of this property"); - parentButton.pack(); + //parentButton.pack(); rolesComboBox.pack(); } if (element instanceof Parameter){ @@ -2862,7 +3031,7 @@ parentButton.setVisible(true); parentButton.setText("parent method"); parentButton.setToolTipText("Go to the parent method of this parameter"); - parentButton.pack(); + //parentButton.pack(); } } @@ -3687,15 +3856,23 @@ private void updateEditedValues(){ QualifierValueObject maxObject = null; + //boolean setMaxDefault = false; for(int i = 0; i < editedValuesIndex; i++){ QualifierValueObject object = editedValues[i]; + // flavors patch ******* + boolean setDefault = false; + String effectiveInheritedValue = FlavorsHelper.effectiveInheritedValue(element, object.name).getValue(); + if(object.value.equalsIgnoreCase(effectiveInheritedValue) && !object.name.equalsIgnoreCase("Min")){ + setDefault = true; + } + //********************** if(object.name.equalsIgnoreCase("Max")){ // ensure that changes of the max qualifier are always // performed after the min qualifier is changed maxObject = object; } else { - editValue(object, false); + editValue(object, setDefault); } } |