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/03/15 18:08:21 UTC
svn commit: r518693 - in /jakarta/jmeter/branches/rel-2-2:
src/core/org/apache/jmeter/control/gui/ src/core/org/apache/jmeter/gui/
xdocs/
Author: sebb
Date: Thu Mar 15 10:08:20 2007
New Revision: 518693
URL: http://svn.apache.org/viewvc?view=rev&rev=518693
Log:
Bug 41259 - Comment field added to all test elements
Added:
jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java (with props)
Modified:
jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/control/gui/TestPlanGui.java
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/MainFrame.java
jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/control/gui/TestPlanGui.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/control/gui/TestPlanGui.java?view=diff&rev=518693&r1=518692&r2=518693
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/control/gui/TestPlanGui.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/control/gui/TestPlanGui.java Thu Mar 15 10:08:20 2007
@@ -23,7 +23,6 @@
import java.util.Collection;
import javax.swing.JCheckBox;
-import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
@@ -60,9 +59,6 @@
/** A panel allowing the user to define variables. */
private ArgumentsPanel argsPanel;
- /** A panel to contain comments on the test plan. */
- private JTextArea commentPanel;
-
FileListPanel browseJar = null;
/**
@@ -115,7 +111,6 @@
tp.setFunctionalMode(functionalMode.isSelected());
tp.setSerialized(serializedMode.isSelected());
tp.setUserDefinedVariables((Arguments) argsPanel.createTestElement());
- tp.setProperty(TestPlan.COMMENTS, commentPanel.getText());
tp.setTestPlanClasspathArray(browseJar.getFiles());
}
}
@@ -154,7 +149,6 @@
if (el.getProperty(TestPlan.USER_DEFINED_VARIABLES) != null) {
argsPanel.configure((Arguments) el.getProperty(TestPlan.USER_DEFINED_VARIABLES).getObjectValue());
}
- commentPanel.setText(el.getPropertyAsString(TestPlan.COMMENTS));
browseJar.setFiles( ((TestPlan)el).getTestPlanClasspathArray() );
}
@@ -169,16 +163,6 @@
return argsPanel;
}
- private Container createCommentPanel() {
- Container panel = makeTitlePanel();
- commentPanel = new JTextArea();
- JLabel label = new JLabel(JMeterUtils.getResString("testplan_comments"));
- label.setLabelFor(commentPanel);
- panel.add(label);
- panel.add(commentPanel);
- return panel;
- }
-
protected Container createClassPathPanel() {
browseJar = new FileListPanel(JMeterUtils.getResString("test_plan_classpath_browse"), ".jar");
return browseJar;
@@ -191,7 +175,7 @@
setLayout(new BorderLayout(10, 10));
setBorder(makeBorder());
- add(createCommentPanel(), BorderLayout.NORTH);
+ add(makeTitlePanel(), BorderLayout.NORTH);
add(createVariablePanel(), BorderLayout.CENTER);
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=518693&r1=518692&r2=518693
==============================================================================
--- 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 Thu Mar 15 10:08:20 2007
@@ -33,6 +33,7 @@
import org.apache.jmeter.gui.util.VerticalPanel;
import org.apache.jmeter.samplers.Clearable;
import org.apache.jmeter.testelement.TestElement;
+import org.apache.jmeter.testelement.TestPlan;
import org.apache.jmeter.testelement.property.BooleanProperty;
import org.apache.jmeter.testelement.property.NullProperty;
import org.apache.jmeter.testelement.property.StringProperty;
@@ -71,6 +72,8 @@
/** A GUI panel containing the name of this component. */
protected NamePanel namePanel;
+ private CommentPanel commentPanel;
+
/**
* When constructing a new component, this takes care of basic tasks like
* setting up the Name Panel and assigning the class's static label as the
@@ -78,6 +81,7 @@
*/
public AbstractJMeterGuiComponent() {
namePanel = new NamePanel();
+ commentPanel=new CommentPanel();
setName(getStaticLabel());
}
@@ -129,6 +133,9 @@
return namePanel;
}
+ private CommentPanel getCommentPanel(){
+ return commentPanel;
+ }
/**
* Provides a label containing the title for the component. Subclasses
* typically place this label at the top of their GUI. The title is set to
@@ -167,6 +174,7 @@
} else {
enabled = element.getPropertyAsBoolean(TestElement.ENABLED);
}
+ getCommentPanel().setText(element.getPropertyAsString(TestPlan.COMMENTS));
}
/**
@@ -201,6 +209,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());
}
/**
@@ -231,7 +240,11 @@
protected Container makeTitlePanel() {
VerticalPanel titlePanel = new VerticalPanel();
titlePanel.add(createTitleLabel());
- titlePanel.add(getNamePanel());
+ VerticalPanel contentPanel = new VerticalPanel();
+ contentPanel.setBorder(BorderFactory.createEtchedBorder());
+ contentPanel.add(getNamePanel());
+ contentPanel.add(getCommentPanel());
+ titlePanel.add(contentPanel);
return titlePanel;
}
Added: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java?view=auto&rev=518693
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java (added)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java Thu Mar 15 10:08:20 2007
@@ -0,0 +1,69 @@
+/*
+ * 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;
+
+import java.awt.BorderLayout;
+
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+
+import org.apache.jmeter.gui.util.VerticalPanel;
+import org.apache.jmeter.util.JMeterUtils;
+
+/**
+ * Generic comment panel for Test Elements
+ *
+ */
+public class CommentPanel extends JPanel {
+ /** A text field containing the comment. */
+ private JTextArea commentField;
+
+ /**
+ * Create a new NamePanel with the default name.
+ */
+ public CommentPanel() {
+ init();
+ }
+
+ /**
+ * Initialize the GUI components and layout.
+ */
+ private void init() {
+ setLayout(new BorderLayout(5, 0));
+
+ commentField = new JTextArea();
+ JLabel commentLabel = new JLabel(JMeterUtils.getResString("testplan_comments"));
+ commentLabel.setLabelFor(commentField);
+
+ VerticalPanel commentPanel = new VerticalPanel();
+
+ commentPanel.add(commentLabel);
+ commentPanel.add(commentField);
+ add(commentPanel);
+ }
+
+ public void setText(String comment) {
+ this.commentField.setText(comment);
+ }
+
+ public String getText() {
+ return this.commentField.getText();
+ }
+}
Propchange: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/CommentPanel.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/MainFrame.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/MainFrame.java?view=diff&rev=518693&r1=518692&r2=518693
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/MainFrame.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/gui/MainFrame.java Thu Mar 15 10:08:20 2007
@@ -25,6 +25,7 @@
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.HashSet;
@@ -47,9 +48,11 @@
import javax.swing.JTree;
import javax.swing.MenuElement;
import javax.swing.SwingUtilities;
+import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.TreeCellRenderer;
import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreePath;
import org.apache.jmeter.engine.event.LoopIterationEvent;
import org.apache.jmeter.gui.action.ActionNames;
@@ -58,7 +61,9 @@
import org.apache.jmeter.gui.tree.JMeterTreeListener;
import org.apache.jmeter.gui.util.JMeterMenuBar;
import org.apache.jmeter.samplers.Remoteable;
+import org.apache.jmeter.testelement.TestElement;
import org.apache.jmeter.testelement.TestListener;
+import org.apache.jmeter.testelement.TestPlan;
import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.gui.ComponentUtil;
@@ -432,7 +437,26 @@
* @return the initialized test tree GUI
*/
private JTree makeTree(TreeModel treeModel, JMeterTreeListener treeListener) {
- JTree treevar = new JTree(treeModel);
+ JTree treevar = new JTree(treeModel) {
+ public String getToolTipText(MouseEvent event) {
+ TreePath path = this.getPathForLocation(event.getX(), event.getY());
+ if (path != null) {
+ Object treeNode = path.getLastPathComponent();
+ if (treeNode instanceof DefaultMutableTreeNode) {
+ Object testElement = ((DefaultMutableTreeNode) treeNode).getUserObject();
+ if (testElement instanceof TestElement) {
+ String comment =
+ ((TestElement) testElement).getPropertyAsString(TestPlan.COMMENTS);
+ if (comment != null && comment.length() > 0) {
+ return comment;
+ }
+ }
+ }
+ }
+ return null;
+ }
+ };
+ treevar.setToolTipText("");
treevar.setCellRenderer(getCellRenderer());
treevar.setRootVisible(false);
treevar.setShowsRootHandles(true);
Modified: jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml?view=diff&rev=518693&r1=518692&r2=518693
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml Thu Mar 15 10:08:20 2007
@@ -118,6 +118,7 @@
<li>Bug 40103 - various LDAP enhancements</li>
<li>Bug 39864 - BeanShell init files now found from currrent or bin directory</li>
<li>New -j option to easily change jmeter log file</li>
+<li>Bug 41259 - Comment field added to all test elements</li>
</ul>
<h4>Non-functional improvements:</h4>
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org