svn commit: r17641 - trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels: meta ui
Bob Tarling <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: bobtarling
Date: 2009-12-11 09:46:34-0800
New Revision: 17641
Modified:
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/meta/panels.xml
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SwingUIFactory.java
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLComboBoxModel.java
Log:
Fields added to TemplateParameter panel
Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/meta/panels.xml
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/meta/panels.xml?view=diff&pathrev=17641&r1=17640&r2=17641
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/meta/panels.xml (original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/meta/panels.xml 2009-12-11 09:46:34-0800
@@ -1127,9 +1127,9 @@
<attribute name="container" type="Component" />
</panel>
<panel name="TemplateParameter">
- <attribute name="template" type="ModelElement" />
- <attribute name="parameter" type="ModelElement" />
- <attribute name="defaultElement" type="ModelElement" />
+ <singlerow name="template" type="ModelElement" />
+ <combo name="parameter" type="ModelElement" />
+ <combo name="defaultElement" type="ModelElement" />
</panel>
<panel name="Primitive">
<text name="name" type="Name" />
Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java?view=diff&pathrev=17641&r1=17640&r2=17641
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java (original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java 2009-12-11 09:46:34-0800
@@ -107,6 +107,8 @@
model = new UMLStateVertexContainerListModel(modelElement);
} else if ("activityGraph".equals(propName)) {
model = new UMLPartitionActivityGraphListModel(modelElement);
+ } else if ("template".equals(propName)) {
+ model = new UMLTemplateParameterTemplateListModel(modelElement);
}
if (model != null) {
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=17641&r1=17640&r2=17641
==============================================================================
--- 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-11 09:46:34-0800
@@ -521,7 +521,18 @@
typeComboBox);
// TODO: Why is this disabled always?
comp.setEnabled(false);
- }
+ } else if ("parameter".equals(prop.getName())) {
+ final UMLComboBoxModel model =
+ new UMLTemplateParameterParameterComboBoxModel(target);
+ final JComboBox combo = new UMLComboBox(model, null);
+ comp = combo;
+ } else if ("defaultElement".equals(prop.getName())) {
+ final UMLComboBoxModel model =
+ new UMLTemplateParameterDefaultElementComboBoxModel();
+ model.setTarget(target);
+ final JComboBox combo = new UMLComboBox(model, null);
+ comp = combo;
+ }
if (comp != null) {
addControl(panel, prop.getName(), comp);
Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLComboBoxModel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLComboBoxModel.java?view=diff&pathrev=17641&r1=17640&r2=17641
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLComboBoxModel.java (original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLComboBoxModel.java 2009-12-11 09:46:34-0800
@@ -358,61 +358,37 @@
return;
}
LOG.debug("setTarget target : " + theNewTarget);
- if (Model.getFacade().isAModelElement(theNewTarget)
- || theNewTarget instanceof ArgoDiagram) {
+ if (Model.getFacade().isAElement(theNewTarget)
+ || Model.getFacade().isATemplateParameter(theNewTarget)) {
- /* Remove old listeners: */
- if (Model.getFacade().isAModelElement(comboBoxTarget)) {
- Model.getPump().removeModelEventListener(this, comboBoxTarget,
- propertySetName);
- // Allow listening to other elements:
- removeOtherModelEventListeners(comboBoxTarget);
- } else if (comboBoxTarget instanceof ArgoDiagram) {
- ((ArgoDiagram) comboBoxTarget).removePropertyChangeListener(
- ArgoDiagram.NAMESPACE_KEY, this);
- }
+ Model.getPump().removeModelEventListener(this, comboBoxTarget,
+ propertySetName);
+ // Allow listening to other elements:
+ removeOtherModelEventListeners(comboBoxTarget);
/* Add new listeners: */
- if (Model.getFacade().isAModelElement(theNewTarget)) {
- comboBoxTarget = theNewTarget;
- Model.getPump().addModelEventListener(this, comboBoxTarget,
- propertySetName);
- // Allow listening to other elements:
- addOtherModelEventListeners(comboBoxTarget);
-
- buildingModel = true;
- try {
- LOG.info("Building the combo box model for " + this);
- buildMinimalModelList();
- // Do not set buildingModel = false here,
- // otherwise the action for selection is performed.
- setSelectedItem(getSelectedModelElement());
- } catch (InvalidElementException e) {
- LOG.warn("buildModelList attempted to operate on "
- + "deleted element");
- } finally {
- buildingModel = false;
- }
-
- if (getSize() > 0) {
- fireIntervalAdded(this, 0, getSize() - 1);
- }
- } else if (theNewTarget instanceof ArgoDiagram) {
- comboBoxTarget = theNewTarget;
- ArgoDiagram diagram = (ArgoDiagram) theNewTarget;
- diagram.addPropertyChangeListener(
- ArgoDiagram.NAMESPACE_KEY, this);
- buildingModel = true;
+ comboBoxTarget = theNewTarget;
+ Model.getPump().addModelEventListener(this, comboBoxTarget,
+ propertySetName);
+ // Allow listening to other elements:
+ addOtherModelEventListeners(comboBoxTarget);
+
+ buildingModel = true;
+ try {
LOG.info("Building the combo box model for " + this);
- buildModelList();
+ buildMinimalModelList();
+ // Do not set buildingModel = false here,
+ // otherwise the action for selection is performed.
setSelectedItem(getSelectedModelElement());
+ } catch (InvalidElementException e) {
+ LOG.warn("buildModelList attempted to operate on "
+ + "deleted element");
+ } finally {
buildingModel = false;
- if (getSize() > 0) {
- fireIntervalAdded(this, 0, getSize() - 1);
- }
- } else { /* MVW: This can never happen, isn't it? */
- comboBoxTarget = null;
- removeAllElements();
+ }
+
+ if (getSize() > 0) {
+ fireIntervalAdded(this, 0, getSize() - 1);
}
if (getSelectedItem() != null && isClearable) {
addElement(""); // makes sure we can select 'none'
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2429826
To unsubscribe from this discussion, e-mail: [[email protected]].