You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2016/02/22 22:09:04 UTC

svn commit: r1731740 - in /jmeter/trunk: src/core/org/apache/jmeter/gui/action/ChangeParent.java xdocs/changes.xml

Author: pmouawad
Date: Mon Feb 22 21:09:04 2016
New Revision: 1731740

URL: http://svn.apache.org/viewvc?rev=1731740&view=rev
Log:
Bug 59046 - JMeter Gui Replace controller should keep the name and the selection
#resolve #139
https://github.com/apache/jmeter/pull/139
Contribution by Benoit Wiart
Bugzilla Id: 59046

Modified:
    jmeter/trunk/src/core/org/apache/jmeter/gui/action/ChangeParent.java
    jmeter/trunk/xdocs/changes.xml

Modified: jmeter/trunk/src/core/org/apache/jmeter/gui/action/ChangeParent.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ChangeParent.java?rev=1731740&r1=1731739&r2=1731740&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/gui/action/ChangeParent.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/gui/action/ChangeParent.java Mon Feb 22 21:09:04 2016
@@ -24,11 +24,18 @@ import java.awt.event.ActionEvent;
 import java.util.HashSet;
 import java.util.Set;
 
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.TreePath;
+
+import org.apache.commons.lang3.StringUtils;
 import org.apache.jmeter.control.Controller;
 import org.apache.jmeter.gui.GuiPackage;
+import org.apache.jmeter.gui.JMeterGUIComponent;
 import org.apache.jmeter.gui.tree.JMeterTreeModel;
 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;
 
@@ -73,6 +80,16 @@ public class ChangeParent implements Com
     }
 
     private void changeParent(TestElement newParent, GuiPackage guiPackage, JMeterTreeNode currentNode) {
+        
+        // keep the old name if it was not the default one
+        Controller currentController = (Controller) currentNode.getUserObject();
+        JMeterGUIComponent currentGui = guiPackage.getCurrentGui();
+        String defaultName = JMeterUtils.getResString(currentGui.getLabelResource());
+        if(StringUtils.isNotBlank(currentController.getName()) 
+                && !currentController.getName().equals(defaultName)){
+            newParent.setName(currentController.getName());            
+        }
+
         JMeterTreeModel treeModel = guiPackage.getTreeModel();
         JMeterTreeNode newNode = new JMeterTreeNode(newParent, treeModel);
         JMeterTreeNode parentNode = (JMeterTreeNode) currentNode.getParent();
@@ -86,6 +103,11 @@ public class ChangeParent implements Com
             treeModel.removeNodeFromParent(node);
             treeModel.insertNodeInto(node, newNode, newNode.getChildCount());
         }
+
+        // select the node
+        TreeNode[] nodes = treeModel.getPathToRoot(newNode);
+        JTree tree = guiPackage.getTreeListener().getJTree();
+        tree.setSelectionPath(new TreePath(nodes));
     }
 
 }

Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1731740&r1=1731739&r2=1731740&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Mon Feb 22 21:09:04 2016
@@ -213,6 +213,7 @@ Summary
 <li><bug>59037</bug>Drop HtmlParserHTMLParser and dependencies on htmlparser and htmllexer</li>
 <li><bug>58933</bug>JSyntaxTextArea : Ability to set font.  Contributed by Denis Kirpichenkov (denis.kirpichenkov at gmail.com)</li>
 <li><bug>58793</bug>Create developers page explaining how to build and contribute</li>
+<li><bug>59046</bug>JMeter Gui Replace controller should keep the name and the selection. Contributed by Benoit Wiart (benoit dot wiart at gmail.com)</li>
 </ul>
 <ch_section>Non-functional changes</ch_section>
 <ul>