svn commit: r17996 - trunk/src/argouml-app/src/org/argouml/uml/ui: . foundation/core
Tom Morris <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: tfmorris
Date: 2010-02-13 11:42:04-0800
New Revision: 17996
Modified:
trunk/src/argouml-app/src/org/argouml/uml/ui/ActionNavigateNamespace.java
trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementNamespaceComboBoxModel.java
trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementVisibilityRadioButtonPanel.java
Log:
Protect against null pointer exceptions when a Diagram is the target.
Modified: trunk/src/argouml-app/src/org/argouml/uml/ui/ActionNavigateNamespace.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/ActionNavigateNamespace.java?view=diff&pathrev=17996&r1=17995&r2=17996
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/ui/ActionNavigateNamespace.java (original)
+++ trunk/src/argouml-app/src/org/argouml/uml/ui/ActionNavigateNamespace.java 2010-02-13 11:42:04-0800
@@ -40,6 +40,7 @@
package org.argouml.uml.ui;
import org.argouml.model.Model;
+import org.argouml.uml.diagram.ui.UMLDiagram;
/**
@@ -53,7 +54,12 @@
* @see org.argouml.uml.ui.AbstractActionNavigate#navigateTo(java.lang.Object)
*/
protected Object navigateTo(Object elem) {
- return Model.getFacade().getNamespace(elem);
+ if (elem instanceof UMLDiagram) {
+ return ((UMLDiagram) elem).getNamespace();
+ } else if (Model.getFacade().isANamedElement(elem)) {
+ return Model.getFacade().getNamespace(elem);
+ }
+ return null;
}
}
Modified: trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementNamespaceComboBoxModel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementNamespaceComboBoxModel.java?view=diff&pathrev=17996&r1=17995&r2=17996
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementNamespaceComboBoxModel.java (original)
+++ trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementNamespaceComboBoxModel.java 2010-02-13 11:42:04-0800
@@ -47,6 +47,7 @@
import org.argouml.kernel.ProjectManager;
import org.argouml.model.Model;
import org.argouml.model.UmlChangeEvent;
+import org.argouml.uml.diagram.ui.UMLDiagram;
import org.argouml.uml.ui.UMLComboBoxModel2;
import org.argouml.uml.util.PathComparator;
@@ -95,7 +96,12 @@
Collection c = new ArrayList(1);
if (target != null) {
- Object namespace = Model.getFacade().getNamespace(target);
+ Object namespace = null;
+ if (target instanceof UMLDiagram) {
+ namespace = ((UMLDiagram) target).getNamespace();
+ } else if (Model.getFacade().isAElement(target)) {
+ namespace = Model.getFacade().getNamespace(target);
+ }
if (namespace != null && !c.contains(namespace)) {
c.add(namespace);
}
@@ -142,7 +148,8 @@
* @see org.argouml.uml.ui.UMLComboBoxModel2#getSelectedModelElement()
*/
protected Object getSelectedModelElement() {
- if (getTarget() != null) {
+ Object target = getTarget();
+ if (getTarget() != null && Model.getFacade().isANamedElement(target)) {
return Model.getFacade().getNamespace(getTarget());
}
return null;
Modified: trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementVisibilityRadioButtonPanel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementVisibilityRadioButtonPanel.java?view=diff&pathrev=17996&r1=17995&r2=17996
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementVisibilityRadioButtonPanel.java (original)
+++ trunk/src/argouml-app/src/org/argouml/uml/ui/foundation/core/UMLModelElementVisibilityRadioButtonPanel.java 2010-02-13 11:42:04-0800
@@ -98,8 +98,8 @@
* @see org.argouml.uml.ui.UMLRadioButtonPanel#buildModel()
*/
public void buildModel() {
- if (getTarget() != null) {
- Object target = getTarget();
+ Object target = getTarget();
+ if (target != null && Model.getFacade().isAElement(target)) {
Object kind = Model.getFacade().getVisibility(target);
if (kind == null) {
setSelected(null);
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2447328
To unsubscribe from this discussion, e-mail: [[email protected]].