svn commit: r18168 - trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui
Bob Tarling <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: bobtarling
Date: 2010-03-25 11:46:25-0700
New Revision: 18168
Added:
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigateNextAction.java
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigatePreviousAction.java
Log:
Reinstate buttons to traverse siblings
Added: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigateNextAction.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigateNextAction.java?view=markup&pathrev=18168
==============================================================================
--- (empty file)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigateNextAction.java 2010-03-25 11:46:25-0700
@@ -0,0 +1,65 @@
+/* $Id$
+ *******************************************************************************
+ * Copyright (c) 2010 Contributors - see below
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bob Tarling
+ *******************************************************************************
+ */
+
+package org.argouml.core.propertypanels.ui;
+
+import java.awt.event.ActionEvent;
+import java.util.List;
+
+import javax.swing.AbstractAction;
+
+import org.argouml.application.helpers.ResourceLoaderWrapper;
+import org.argouml.i18n.Translator;
+import org.argouml.model.Model;
+import org.argouml.ui.targetmanager.TargetManager;
+
+/**
+ * This action changes the target to the owning model element
+ * of the given element.
+ *
+ * @author Bob Tarling
+ */
+class NavigateNextAction extends AbstractAction {
+
+ final Object modelElement;
+
+ public NavigateNextAction(Object modelElement) {
+ super(Translator.localize("action.navigate-forward"),
+ ResourceLoaderWrapper.lookupIcon("action.navigate-forward"));
+
+ this.modelElement = modelElement;
+ }
+ public void actionPerformed(ActionEvent arg0) {
+ final Object owner =
+ Model.getFacade().getModelElementContainer(modelElement);
+ Object newTarget = null;
+ List list = null;
+ if (Model.getFacade().isAAttribute(modelElement)) {
+ list = Model.getFacade().getAttributes(owner);
+ }
+ if (Model.getFacade().isAOperation(modelElement)
+ || Model.getFacade().isAReception(modelElement)) {
+ list = Model.getFacade().getOperationsAndReceptions(owner);
+ }
+ if (Model.getFacade().isAParameter(modelElement)) {
+ list = Model.getFacade().getParametersList(owner);
+ }
+ if (list != null) {
+ final int posn = list.indexOf(modelElement);
+ if (posn >= 0 && posn < list.size() - 1) {
+ newTarget = list.get(posn + 1);
+ TargetManager.getInstance().setTarget(newTarget);
+ }
+ }
+ }
+}
Added: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigatePreviousAction.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigatePreviousAction.java?view=markup&pathrev=18168
==============================================================================
--- (empty file)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/NavigatePreviousAction.java 2010-03-25 11:46:25-0700
@@ -0,0 +1,66 @@
+/* $Id$
+ *******************************************************************************
+ * Copyright (c) 2010 Contributors - see below
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bob Tarling
+ *******************************************************************************
+ */
+
+package org.argouml.core.propertypanels.ui;
+
+import java.awt.event.ActionEvent;
+import java.util.List;
+
+import javax.swing.AbstractAction;
+
+import org.argouml.application.helpers.ResourceLoaderWrapper;
+import org.argouml.i18n.Translator;
+import org.argouml.model.Model;
+import org.argouml.ui.targetmanager.TargetManager;
+
+/**
+ * This action changes the target to the owning model element
+ * of the given element.
+ *
+ * @author Bob Tarling
+ */
+class NavigatePreviousAction extends AbstractAction {
+
+ final Object modelElement;
+
+ public NavigatePreviousAction(Object modelElement) {
+ super(Translator.localize("action.navigate-forward"),
+ ResourceLoaderWrapper.lookupIcon("action.navigate-back"));
+
+ this.modelElement = modelElement;
+ }
+ public void actionPerformed(ActionEvent arg0) {
+ final Object owner =
+ Model.getFacade().getModelElementContainer(modelElement);
+ Object newTarget = null;
+ List list = null;
+ if (Model.getFacade().isAAttribute(modelElement)) {
+ list = Model.getFacade().getAttributes(owner);
+ }
+ if (Model.getFacade().isAOperation(modelElement)
+ || Model.getFacade().isAReception(modelElement)) {
+ list = Model.getFacade().getOperationsAndReceptions(owner);
+ }
+ if (Model.getFacade().isAParameter(modelElement)) {
+ list = Model.getFacade().getParametersList(owner);
+ }
+ if (list != null) {
+ final int posn = list.indexOf(modelElement);
+ if (posn > 0) {
+ newTarget = list.get(posn - 1);
+ TargetManager.getInstance().setTarget(newTarget);
+ }
+ }
+ }
+
+}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2465074
To unsubscribe from this discussion, e-mail: [[email protected]].