You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2007/05/04 11:05:50 UTC

svn commit: r535134 - in /jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui: AbstractJMeterGuiComponent.java GuiPackage.java action/AddToTree.java

Author: sebb
Date: Fri May  4 02:05:49 2007
New Revision: 535134

URL: http://svn.apache.org/viewvc?view=rev&rev=535134
Log:
Bug 30120 - Name of simple controller is resetted if a new simple controller is added as child

Modified:
    jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java
    jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/GuiPackage.java
    jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/action/AddToTree.java

Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java?view=diff&rev=535134&r1=535133&r2=535134
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java Fri May  4 02:05:49 2007
@@ -83,6 +83,7 @@
 		namePanel = new NamePanel();
 		commentPanel=new CommentPanel();
 		setName(getStaticLabel());
+        setComment(""); // $NON-NLS-1$
 	}
 
 	/**
@@ -93,6 +94,14 @@
 		namePanel.setName(name);
 	}
 
+    /**
+     * Provides a default implementation for the name property. It's unlikely
+     * developers will need to override.
+     */
+    public void setComment(String comment) {
+        commentPanel.setText(comment);
+    }
+
 	/**
 	 * Provides a default implementation for the enabled property. It's unlikely
 	 * developers will need to override.
@@ -118,8 +127,21 @@
 		if (getNamePanel() != null) {
 			return getNamePanel().getName();
 		} else
-			return "";
+			return ""; // $NON-NLS-1$
 	}
+    
+    /**
+     * Provides a default implementation for the comment property. It's unlikely
+     * developers will need to override.
+     */
+    public String getComment() {
+        if (getCommentPanel() != null) {
+            return getCommentPanel().getText();
+        }
+        else {
+            return ""; // $NON-NLS-1$
+        }
+    }
 
 	/**
 	 * Provides the Name Panel for extending classes. Extending classes are free
@@ -179,12 +201,13 @@
 
 	/**
 	 * Provides a default implementat that resets the name field to the value of
-	 * getStaticLabel(), and sets enabled to true. Your GUI may need more things
+	 * getStaticLabel(), reset comment and sets enabled to true. Your GUI may need more things
 	 * cleared, in which case you should override, clear the extra fields, and
 	 * still call super.clear().
 	 */
 	public void clear() {
 		setName(getStaticLabel());
+        setComment(""); // $NON-NLS-1$
 		enabled = true;
 	}
 
@@ -209,7 +232,7 @@
 		// This stores the state of the TestElement
 		log.debug("setting element to enabled: " + enabled);
 		mc.setProperty(new BooleanProperty(TestElement.ENABLED, enabled));
-		mc.setProperty(TestPlan.COMMENTS, getCommentPanel().getText());
+		mc.setProperty(TestPlan.COMMENTS, getComment());
 	}
 
 	/**
@@ -319,22 +342,4 @@
 	public JComponent getPrintableComponent() {
 		return this;
 	}
-
-	// /*
-	// * Dummy implementation so existing code still compiles.
-	// * Throws an error because it should not be invoked - and cannot provide a
-	// useful value.
-	// *
-	// * The target class should either implement getStaticLabel(), as before,
-	// or it
-	// * should implement getLabelResource()
-	// *
-	// * DONE: remove eventually
-	// */
-	// public String getLabelResource()
-	// {
-	// throw new UnsupportedOperationException("Needs to be implemented by the
-	// class: "
-	// +this.getClass().getName());
-	// }
 }

Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/GuiPackage.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/GuiPackage.java?view=diff&rev=535134&r1=535133&r2=535134
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/GuiPackage.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/GuiPackage.java Fri May  4 02:05:49 2007
@@ -401,9 +401,8 @@
 				TestElement el = currentNode.getTestElement();
 				comp.modifyTestElement(el);
 			}
-			if (currentNode != treeListener.getCurrentNode()) {
-				currentNodeUpdated = true;
-			}
+			// The current node is now updated
+			currentNodeUpdated = true;
 			currentNode = treeListener.getCurrentNode();
 		} catch (Exception e) {
 			log.error("Problem retrieving gui", e);

Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/action/AddToTree.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/action/AddToTree.java?view=diff&rev=535134&r1=535133&r2=535134
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/action/AddToTree.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/action/AddToTree.java Fri May  4 02:05:49 2007
@@ -26,15 +26,14 @@
 import javax.swing.JComponent;
 import javax.swing.tree.TreePath;
 
+import org.apache.jmeter.exceptions.IllegalUserActionException;
 import org.apache.jmeter.gui.GuiPackage;
 import org.apache.jmeter.gui.tree.JMeterTreeNode;
 import org.apache.jmeter.testelement.TestElement;
+import org.apache.jmeter.util.JMeterUtils;
 import org.apache.jorphan.logging.LoggingManager;
 import org.apache.log.Logger;
 
-/**
- * @version $Revision$ Last updated: $Date$
- */
 public class AddToTree implements Command {
 	private static final Logger log = LoggingManager.getLoggerForClass();
 
@@ -63,19 +62,21 @@
 	 * Adds the specified class to the current node of the tree.
 	 */
 	public void doAction(ActionEvent e) {
+        GuiPackage guiPackage = GuiPackage.getInstance();
 		try {
-			TestElement node = GuiPackage.getInstance().createTestElement(((JComponent) e.getSource()).getName());
-			addObjectToTree(node);
-		} catch (Exception err) {
-			log.error("", err);
+			guiPackage.updateCurrentNode();
+			TestElement testElement = guiPackage.createTestElement(((JComponent) e.getSource()).getName());
+            JMeterTreeNode parentNode = guiPackage.getCurrentNode();
+            JMeterTreeNode node = guiPackage.getTreeModel().addComponent(testElement, parentNode);
+            guiPackage.getMainFrame().getTree().setSelectionPath(new TreePath(node.getPath()));
+        }
+		catch (IllegalUserActionException iuae) {
+            log.error("", iuae); // $NON-NLS-1$
+		    JMeterUtils.reportErrorToUser(iuae.getMessage());
+		}
+        catch (Exception err) {
+			log.error("", err); // $NON-NLS-1$
+		    JMeterUtils.reportErrorToUser(err.getMessage());
 		}
-	}
-
-	protected void addObjectToTree(TestElement el) {
-		GuiPackage guiPackage = GuiPackage.getInstance();
-		JMeterTreeNode node = new JMeterTreeNode(el, guiPackage.getTreeModel());
-		guiPackage.getTreeModel().insertNodeInto(node, guiPackage.getTreeListener().getCurrentNode(),
-				guiPackage.getTreeListener().getCurrentNode().getChildCount());
-		guiPackage.getMainFrame().getTree().setSelectionPath(new TreePath(node.getPath()));
 	}
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org