Author: pmouawad
Date: Wed Oct 12 17:22:07 2011
New Revision: 1182485

URL: http://svn.apache.org/viewvc?rev=1182485&view=rev
Log:
Bug 51876 - Functionnality to search in Samplers TreeView

Added reset search
Used reset search in search
Handled cancelation of search

Added:
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java
   (with props)
Modified:
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ActionNames.java
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/SearchTreeCommand.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages_fr.properties

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ActionNames.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ActionNames.java?rev=1182485&r1=1182484&r2=1182485&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ActionNames.java 
(original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ActionNames.java 
Wed Oct 12 17:22:07 2011
@@ -84,6 +84,7 @@ public class ActionNames {
     public static final String TOGGLE           = "toggle"; // $NON-NLS-1$ 
enable/disable
     public static final String WHAT_CLASS       = "what_class"; // $NON-NLS-1$
     public static final String SEARCH_TREE      = "search_tree"; // $NON-NLS-1$
+    public static final String SEARCH_RESET      = "search_reset"; // 
$NON-NLS-1$
 
     // Prevent instantiation
     private ActionNames(){

Added: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java?rev=1182485&view=auto
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java
 (added)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java
 Wed Oct 12 17:22:07 2011
@@ -0,0 +1,74 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.jmeter.gui.action;
+
+import java.awt.event.ActionEvent;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.jmeter.gui.GuiPackage;
+import org.apache.jmeter.gui.Searchable;
+import org.apache.jmeter.gui.tree.JMeterTreeModel;
+import org.apache.jmeter.gui.tree.JMeterTreeNode;
+
+/**
+ * Reset Search
+ */
+public class ResetSearchCommand extends AbstractAction {
+
+    private static final Set<String> commands = new HashSet<String>();
+
+    static {
+        commands.add(ActionNames.SEARCH_RESET);
+    }
+
+    /**
+     * @see Command#doAction(ActionEvent)
+     */
+    @Override
+    public void doAction(ActionEvent e) {
+        GuiPackage guiPackage = GuiPackage.getInstance();
+        JMeterTreeModel jMeterTreeModel = guiPackage.getTreeModel();
+        Iterator<?> iter = 
jMeterTreeModel.getNodesOfType(Searchable.class).iterator();
+        while (iter.hasNext()) {
+            JMeterTreeNode jMeterTreeNode = (JMeterTreeNode) iter.next();
+            if (jMeterTreeNode.getUserObject() instanceof Searchable){
+                List<JMeterTreeNode> matchingNodes = 
jMeterTreeNode.getPathToThreadGroup();
+                for (Iterator<JMeterTreeNode> iterator = 
matchingNodes.iterator(); iterator
+                        .hasNext();) {
+                    JMeterTreeNode jMeterTreeNode2 = iterator
+                            .next();
+                    jMeterTreeNode2.setMarkedBySearch(false); 
+                }
+            }
+        }
+        GuiPackage.getInstance().getMainFrame().repaint();
+    }
+
+
+    /**
+     * @see Command#getActionNames()
+     */
+    @Override
+    public Set<String> getActionNames() {
+        return commands;
+    }
+}

Propchange: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/ResetSearchCommand.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/SearchTreeCommand.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/SearchTreeCommand.java?rev=1182485&r1=1182484&r2=1182485&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/SearchTreeCommand.java
 (original)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/SearchTreeCommand.java
 Wed Oct 12 17:22:07 2011
@@ -58,6 +58,10 @@ public class SearchTreeCommand extends A
                 JMeterUtils.getResString("search_word"),  // $NON-NLS-1$
                 JMeterUtils.getResString("search_tree_title"),  // $NON-NLS-1$
                 JOptionPane.QUESTION_MESSAGE);
+        if(wordToSearch==null) {
+            return;
+        }
+        ActionRouter.getInstance().doActionNow(new ActionEvent(e.getSource(), 
e.getID(), ActionNames.SEARCH_RESET));
         GuiPackage guiPackage = GuiPackage.getInstance();
         JMeterTreeModel jMeterTreeModel = guiPackage.getTreeModel();
         Iterator<?> iter = 
jMeterTreeModel.getNodesOfType(Searchable.class).iterator();
@@ -68,12 +72,6 @@ public class SearchTreeCommand extends A
                 if (jMeterTreeNode.getUserObject() instanceof Searchable){
                     Searchable searchable = (Searchable) 
jMeterTreeNode.getUserObject();
                     List<JMeterTreeNode> matchingNodes = 
jMeterTreeNode.getPathToThreadGroup();
-                    for (Iterator<JMeterTreeNode> iterator = 
matchingNodes.iterator(); iterator
-                            .hasNext();) {
-                        JMeterTreeNode jMeterTreeNode2 = iterator
-                                .next();
-                        jMeterTreeNode2.setMarkedBySearch(false); 
-                    }
                     if(!StringUtils.isEmpty(wordToSearch)) {
                         boolean result = 
searchable.searchContent(wordToSearch);
                         if(result) {

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java?rev=1182485&r1=1182484&r2=1182485&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java 
(original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java 
Wed Oct 12 17:22:07 2011
@@ -502,6 +502,10 @@ public class JMeterMenuBar extends JMenu
         JMenuItem search = makeMenuItemRes("menu_search", 
ActionNames.SEARCH_TREE); //$NON-NLS-1$
         searchMenu.add(search);
         searchMenu.setEnabled(true);
+
+        JMenuItem searchReset = makeMenuItemRes("menu_search_reset", 
ActionNames.SEARCH_RESET); //$NON-NLS-1$
+        searchMenu.add(searchReset);
+        searchMenu.setEnabled(true);
     }
     
     public void setRunning(boolean running, String host) {

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties?rev=1182485&r1=1182484&r2=1182485&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties 
(original)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties 
Wed Oct 12 17:22:07 2011
@@ -505,6 +505,7 @@ menu_post_processors=Post Processors
 menu_pre_processors=Pre Processors
 menu_response_based_modifiers=Response Based Modifiers
 menu_search=Search
+menu_search_reset=Reset Search
 menu_tables=Table
 menu_timer=Timer
 metadata=MetaData

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages_fr.properties
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages_fr.properties?rev=1182485&r1=1182484&r2=1182485&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages_fr.properties
 (original)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages_fr.properties
 Wed Oct 12 17:22:07 2011
@@ -464,6 +464,7 @@ menu_open=Ouvrir...
 menu_post_processors=Post-Processeurs
 menu_pre_processors=Pr\u00E9-Processeurs
 menu_response_based_modifiers=Modificateurs bas\u00E9s sur la r\u00E9ponse
+menu_search_reset=Effacer la recherche
 menu_search=Rechercher
 menu_threads=Moteurs d'utilisateurs
 menu_timer=Compteurs de temps



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to