Author: pmouawad
Date: Tue Nov  1 13:09:34 2011
New Revision: 1195976

URL: http://svn.apache.org/viewvc?rev=1195976&view=rev
Log:
Bug 52118 - New toolbar : shutdown and stop buttons not disabled when no test 
is running

Modified:
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/MainFrame.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterToolBar.java
    jakarta/jmeter/trunk/xdocs/changes.xml

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/MainFrame.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/MainFrame.java?rev=1195976&r1=1195975&r2=1195976&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/MainFrame.java 
(original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/MainFrame.java Tue Nov  
1 13:09:34 2011
@@ -45,7 +45,6 @@ import javax.swing.JPanel;
 import javax.swing.JPopupMenu;
 import javax.swing.JScrollPane;
 import javax.swing.JSplitPane;
-import javax.swing.JToolBar;
 import javax.swing.JTree;
 import javax.swing.MenuElement;
 import javax.swing.SwingUtilities;
@@ -126,6 +125,8 @@ public class MainFrame extends JFrame im
     private JLabel totalThreads;
     private JLabel activeThreads;
 
+    private JMeterToolBar toolbar;
+
     /**
      * Create a new JMeter frame.
      *
@@ -331,6 +332,7 @@ public class MainFrame extends JFrame im
     public void testStarted() {
         testStarted(LOCAL);
         menuBar.setEnabled(true);
+        toolbar.setTestStarted(true);
     }
 
     /**
@@ -357,6 +359,7 @@ public class MainFrame extends JFrame im
     public void testEnded() {
         testEnded(LOCAL);
         menuBar.setEnabled(false);
+        toolbar.setTestStarted(false);
     }
 
     /**
@@ -389,7 +392,6 @@ public class MainFrame extends JFrame im
     private void init() {
         menuBar = new JMeterMenuBar();
         setJMenuBar(menuBar);
-
         JPanel all = new JPanel(new BorderLayout());
         all.add(createToolBar(), BorderLayout.NORTH);
 
@@ -435,7 +437,7 @@ public class MainFrame extends JFrame im
     private Component createToolBar() {
         Box toolPanel = new Box(BoxLayout.X_AXIS);
         // add the toolbar
-        JToolBar toolbar = JMeterToolBar.createToolbar(DISPLAY_TOOLBAR);
+        this.toolbar = JMeterToolBar.createToolbar(DISPLAY_TOOLBAR);
         GuiPackage guiInstance = GuiPackage.getInstance();
         guiInstance.setMainToolbar(toolbar);
         
guiInstance.getMenuItemToolbar().getModel().setSelected(DISPLAY_TOOLBAR);

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterToolBar.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterToolBar.java?rev=1195976&r1=1195975&r2=1195976&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterToolBar.java 
(original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterToolBar.java 
Tue Nov  1 13:09:34 2011
@@ -19,9 +19,12 @@
 
 package org.apache.jmeter.gui.util;
 
+import java.awt.Component;
 import java.net.URL;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.Properties;
 
 import javax.swing.ImageIcon;
@@ -29,6 +32,7 @@ import javax.swing.JButton;
 import javax.swing.JOptionPane;
 import javax.swing.JToolBar;
 
+import org.apache.jmeter.gui.action.ActionNames;
 import org.apache.jmeter.gui.action.ActionRouter;
 import org.apache.jmeter.util.JMeterUtils;
 import org.apache.jmeter.util.LocaleChangeEvent;
@@ -64,7 +68,7 @@ public class JMeterToolBar extends JTool
      * Create the default JMeter toolbar
      * @return the JMeter toolbar
      */
-    public static JToolBar createToolbar(boolean visible) {
+    public static JMeterToolBar createToolbar(boolean visible) {
         JMeterToolBar toolBar = new JMeterToolBar();
         toolBar.setFloatable(false);
         toolBar.setVisible(visible);
@@ -89,6 +93,7 @@ public class JMeterToolBar extends JTool
                     toolBar.add(makeButtonItemRes(iconToolbarBean));
                 }
             }
+            toolBar.setTestStarted(false);
         }
     }
     
@@ -173,4 +178,28 @@ public class JMeterToolBar extends JTool
         this.removeAll();
         setupToolbarContent(this);
     }
+
+    /**
+     * Change state of buttons
+     * @param started
+     */
+    public void setTestStarted(boolean started) {
+        Map<String, Boolean> buttonStates = new HashMap<String, Boolean>();
+        buttonStates.put(ActionNames.ACTION_START,Boolean.valueOf(!started));
+        buttonStates.put(ActionNames.ACTION_STOP,Boolean.valueOf(started));
+        buttonStates.put(ActionNames.ACTION_SHUTDOWN,Boolean.valueOf(started));
+        
buttonStates.put(ActionNames.REMOTE_START_ALL,Boolean.valueOf(!started));
+        buttonStates.put(ActionNames.REMOTE_STOP_ALL,Boolean.valueOf(started));
+        buttonStates.put(ActionNames.REMOTE_SHUT_ALL,Boolean.valueOf(started));
+        Component[] components = getComponents();
+        for (int i = 0; i < components.length; i++) {
+            if(components[i]instanceof JButton) {
+                JButton button = (JButton) components[i];
+                Boolean enabled = buttonStates.get(button.getActionCommand());
+                if(enabled != null) {
+                    button.setEnabled(enabled.booleanValue());
+                }
+            }
+        }
+    }
 }
\ No newline at end of file

Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=1195976&r1=1195975&r2=1195976&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Tue Nov  1 13:09:34 2011
@@ -140,6 +140,7 @@ these occurs, Sampler is marked as faile
 <li>Bug 52029 - Command-line shutdown only gets sent to last engine that was 
started</li>
 <li>Bug 52093 - Toolbar ToolTips don't switch language</li>
 <li>Bug 51733 - SyncTimer is messed up if you a interrupt a test plan</li>
+<li>Bug 52118 - New toolbar : shutdown and stop buttons not disabled when no 
test is running</li>
 </ul>
 
 <!-- =================== Improvements =================== -->



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

Reply via email to