jsalvata    2003/11/30 17:39:54

  Modified:    src/protocol/http/org/apache/jmeter/protocol/http/proxy/gui
                        ProxyControlGui.java
  Log:
  Fixing bug in new functionality: the proxy was forgetting the
  target selection when selecting another component in the
  tree and them coming back to it.
  
  Revision  Changes    Path
  1.29      +14 -13    
jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/gui/ProxyControlGui.java
  
  Index: ProxyControlGui.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/gui/ProxyControlGui.java,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- ProxyControlGui.java      1 Dec 2003 01:19:14 -0000       1.28
  +++ ProxyControlGui.java      1 Dec 2003 01:39:54 -0000       1.29
  @@ -360,14 +360,7 @@
               log.debug("Change target "+targetNodes.getSelectedItem());
               log.debug("In model "+model);
               TreeNodeWrapper nw= (TreeNodeWrapper)targetNodes.getSelectedItem();
  -            if (nw == null)
  -            {
  -                model.setTarget(null); 
  -            }
  -            else
  -            {
  -                model.setTarget(nw.getTreeNode());
  -            }
  +            model.setTarget(nw.getTreeNode());
           }
       }
   
  @@ -556,8 +549,8 @@
       {
           targetNodesModel= new DefaultComboBoxModel();
           targetNodes = new JComboBox(targetNodesModel);
  -        targetNodes.addActionListener(this);
           targetNodes.setActionCommand(CHANGE_TARGET);
  +        // Action listener will be added later
           
           JLabel label = new JLabel(JMeterUtils.getResString("proxy_target"));
           label.setLabelFor(targetNodes);
  @@ -655,6 +648,10 @@
   
       private void reinitializeTargetCombo() {
           log.debug("Reinitializing target combo");
  +
  +        // Stop action notifications while we shuffle this around:
  +        targetNodes.removeActionListener(this);
  +        
           targetNodesModel.removeAllElements();
           GuiPackage gp = GuiPackage.getInstance();
           JMeterTreeNode root;
  @@ -671,17 +668,21 @@
                       JMeterUtils.getResString("use_recording_controller")));
               buildNodesModel(root, "", 0);
           }
  +        TreeNodeWrapper choice = null;
           for (int i = 0; i < targetNodesModel.getSize(); i++)
           {
  -            TreeNodeWrapper choice = 
  -                (TreeNodeWrapper) targetNodesModel.getElementAt(i);
  +            choice = (TreeNodeWrapper) targetNodesModel.getElementAt(i);
               if (choice.getTreeNode() == model.getTarget()) // .equals caused NPE
               {
                   log.debug("Selecting item "+choice);
  -                targetNodesModel.setSelectedItem(choice);
                   break;
               }
           }
  +        // Reinstate action notifications:
  +        targetNodes.removeActionListener(this);
  +        // Set the current value:
  +        targetNodesModel.setSelectedItem(choice);        
  +        
           log.debug("Reinitialization complete");
       }
       
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to