jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Mouawad <philippe.moua...@gmail.com>
Subject Re: svn commit: r1500124 - in /jmeter/trunk: ./ res/maven/ src/components/org/apache/jmeter/assertions/gui/ src/core/org/apache/jmeter/testbeans/gui/ src/protocol/java/org/apache/jmeter/protocol/java/control/gui/ xdocs/
Date Fri, 05 Jul 2013 21:34:53 GMT
maybe we can open a bug on pom content no ?

On Friday, July 5, 2013, Milamber wrote:

>
> Le 05/07/2013 22:20, Milamber a ecrit :
>
>>
>> Le 05/07/2013 21:55, sebb a ecrit :
>>
>>> On 5 July 2013 21:39, <milamber@apache.org> wrote:
>>>
>>>> Author: milamber
>>>> Date: Fri Jul  5 20:39:54 2013
>>>> New Revision: 1500124
>>>>
>>>> URL: http://svn.apache.org/r1500124
>>>> Log:
>>>> Bug 55202 - Proposal to add RSyntaxTextArea for BeanShell, BSF, and
>>>> JSR223 elements
>>>> Bugzilla Id: 55202
>>>>
>>> -1
>>>
>>> I think the jar needs to be obtained somewhere other than Maven
>>> Central, as the pom license there says LGPL.
>>>
>>
> Ah... I just saw the .pom on maven repo...
>
>
>
>> The mvnrepository.com website (whish said LGPL) is not official Maven
>> repository (and not affiliate with Maven/ASF if you see the whois
>> information).
>> You cannot trust on informations in this site.
>>
>> The official website indicate the license (modified BSD), and I have
>> added the same version than the binary release (in zip file):
>> http://sourceforge.net/**projects/rsyntaxtextarea/**
>> files/rsyntaxtextarea-demo/2.**0.7/<http://sourceforge.net/projects/rsyntaxtextarea/files/rsyntaxtextarea-demo/2.0.7/>
>>
>> Unfortunately, I don't found a direct link to the jar on official
>> website. I think we can keep the download from Maven repo2 (it's not the
>> mvvrepository.com site, and don't show any Lgpl license for this jar).
>>
>>
>>> Please remove the download part for now.
>>>
>>>  Added:
>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties
>>>> (with props)
>>>> Modified:
>>>>      jmeter/trunk/LICENSE
>>>>      jmeter/trunk/build.properties
>>>>      jmeter/trunk/build.xml
>>>>      jmeter/trunk/eclipse.classpath
>>>>      jmeter/trunk/res/maven/**ApacheJMeter_parent.pom
>>>> jmeter/trunk/src/components/**org/apache/jmeter/assertions/**
>>>> gui/BeanShellAssertionGui.java
>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> GenericTestBeanCustomizer.java
>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> TextAreaEditor.java
>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java
>>>>
>>>> jmeter/trunk/src/protocol/**java/org/apache/jmeter/**
>>>> protocol/java/control/gui/**BeanShellSamplerGui.java
>>>>      jmeter/trunk/xdocs/changes.xml
>>>>
>>>> Modified: jmeter/trunk/LICENSE
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/LICENSE?rev=**
>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/LICENSE?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/LICENSE [utf-8] (original)
>>>> +++ jmeter/trunk/LICENSE [utf-8] Fri Jul  5 20:39:54 2013
>>>> @@ -1565,7 +1565,7 @@ The jsoup code-base (include source and
>>>>   distributed under the open source MIT license as described below.
>>>>   The MIT License
>>>>
>>>> -Copyright � 2009 - 2012 Jonathan Hedley (jonathan@hedley.net)
>>>> +Copyright � 2009 - 2012 Jonathan Hedley (jonathan@hedley.net)
>>>>
>>>>   Permission is hereby granted, free of charge, to any person obtaining
>>>> a
>>>>   copy of this software and associated documentation files (the
>>>> "Software"),
>>>> @@ -1926,7 +1926,7 @@ As a special exception, the copyright ho
>>>>   Open Icon Library from
>>>>   http://openiconlibrary.**sourceforge.net/<http://openiconlibrary.sourceforge.net/>
>>>>
>>>> -Detailled Licenses information:
>>>> +Detailed Licenses information:
>>>>   http://openiconlibrary.**sourceforge.net/LICENSES.html<http://openiconlibrary.sourceforge.net/LICENSES.html>
>>>>
>>>>   ============ Packages used by Apache JMeter =========
>>>> @@ -2029,3 +2029,39 @@ UNLESS OTHERWISE MUTUALLY AGREED TO BY T
>>>>
>>>> ##############################**##############################**
>>>> ####################
>>>>
>>>> +RSyntaxTextArea License
>>>> +=============================**============
>>>> +
>>>> +RSyntaxTextArea  from
>>>> +http://fifesoft.com/**rsyntaxtextarea/<http://fifesoft.com/rsyntaxtextarea/>
>>>> +
>>>> +Detailed License information:
>>>> +http://fifesoft.com/**rsyntaxtextarea/**RSyntaxTextArea.License.txt<http://fifesoft.com/rsyntaxtextarea/RSyntaxTextArea.License.txt>
>>>> +
>>>> +============== RSyntaxTextArea  License =============
>>>> +Copyright (c) 2012, Robert Futrell
>>>> +All rights reserved.
>>>> +
>>>> +Redistribution and use in source and binary forms, with or without
>>>> +modification, are permitted provided that the following conditions are
>>>> met:
>>>> +    * Redistributions of source code must retain the above copyright
>>>> +      notice, this list of conditions and the following disclaimer.
>>>> +    * Redistributions in binary form must reproduce the above copyright
>>>> +      notice, this list of conditions and the following disclaimer in
>>>> the
>>>> +      documentation and/or other materials provided with the
>>>> distribution.
>>>> +    * Neither the name of the author nor the names of its contributors
>>>> may
>>>> +      be used to endorse or promote products derived from this software
>>>> +      without specific prior written permission.
>>>> +
>>>> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
>>>> "AS IS" AND
>>>> +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
>>>> IMPLIED
>>>> +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
>>>> +DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
>>>> +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
>>>> DAMAGES
>>>> +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
>>>> SERVICES;
>>>> +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
>>>> CAUSED AND
>>>> +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
>>>> TORT
>>>> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
>>>> OF THIS
>>>> +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>>>> +
>>>> +#############################**##############################**#####################
>>>>
>>>> \ No newline at end of file
>>>>
>>>> Modified: jmeter/trunk/build.properties
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/build.properties?**
>>>> rev=1500124&r1=1500123&r2=**1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/build.properties?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/build.properties (original)
>>>> +++ jmeter/trunk/build.properties Fri Jul  5 20:39:54 2013
>>>> @@ -223,6 +223,11 @@ mongo-java-driver.jar
>>>>          = mongo-java-d
>>>>   mongo-java-driver.loc                                  =
>>>> ${maven2.repo}/org/mongodb/**mongo-java-driver/${mongo-**
>>>> java-driver.version}
>>>>   mongo-java-driver.md5                                  =
>>>> fed5e6d998256e285396b4e0d81537**bd
>>>>
>>>> +rsyntaxtextarea.version     = 2.0.7
>>>> +rsyntaxtextarea.jar         = rsyntaxtextarea-${**
>>>> rsyntaxtextarea.version}.jar
>>>> +rsyntaxtextarea.loc         = ${maven2.repo}/com/fifesoft/**
>>>> rsyntaxtextarea/${**rsyntaxtextarea.version}
>>>> +rsyntaxtextarea.md5         = 00ab3c8ce58bb8bb1dbb3ae506f06d**30
>>>>
>>> -1
>>>
>>> I don't think we can download from there until the license issue is
>>> sorted out.
>>>
>>>  +
>>>>   slf4j-api.version           = 1.7.5
>>>>   slf4j-api.jar               = slf4j-api-${slf4j-api.version}**.jar
>>>>   slf4j-api.loc               = ${maven2.repo}/org/slf4j/**
>>>> slf4j-api/${slf4j-api.version}
>>>>
>>>> Modified: jmeter/trunk/build.xml
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/build.xml?rev=**
>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/build.xml?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/build.xml (original)
>>>> +++ jmeter/trunk/build.xml Fri Jul  5 20:39:54 2013
>>>> @@ -387,6 +387,7 @@
>>>>       <include name="${lib.dir}/${junit.jar}"**/>
>>>>       <include name="${lib.dir}/${logkit.jar}**"/>
>>>>       <include name="${lib.dir}/${mongo-java-**driver.jar}"/>
>>>> +    <include name="${lib.dir}/${**rsyntaxtextarea.jar}"/>
>>>>       <include name="${lib.dir}/${serializer.**jar}"/>
>>>>       <include name="${lib.dir}/${slf4j-api.**jar}"/>
>>>>       <include name="${lib.dir}/${soap.jar}"/**>
>>>> @@ -454,6 +455,7 @@
>>>>       <pathelement location="${lib.dir}/${junit.**jar}"/>
>>>>       <pathelement location="${lib.dir}/${logkit.**jar}"/>
>>>>       <pathelement location="${lib.dir}/${mongo-**java-driver.jar}"/>
>>>> +    <pathelement location="${lib.dir}/${**rsyntaxtextarea.jar}"/>
>>>>       <pathelement location="${lib.dir}/${**serializer.jar}"/>
>>>>       <pathelement location="${lib.dir}/${slf4j-**api.jar}"/>
>>>>       <pathelement location="${lib.dir}/${soap.**jar}"/>
>>>> @@ -2879,6 +2881,7 @@ run JMeter unless all the JMeter jars ar
>>>>           <process_jarfile jarname="junit"/>
>>>>           <process_jarfile jarname="logkit"/>
>>>>           <process_jarfile jarname="mongo-java-driver"/>
>>>> +        <process_jarfile jarname="rsyntaxtextarea"/>
>>>>           <process_jarfile jarname="serializer"/>
>>>>          <process_jarfile jarname="slf4j-api"/>
>>>>           <process_jarfile jarname="soap"/>
>>>>
>>>> Modified: jmeter/trunk/eclipse.classpath
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/eclipse.**
>>>> classpath?rev=1500124&r1=**1500123&r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/eclipse.classpath?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/eclipse.classpath (original)
>>>> +++ jmeter/trunk/eclipse.classpath Fri Jul  5 20:39:54 2013
>>>> @@ -76,6 +76,7 @@
>>>>          <classpathentry kind="lib" path="lib/logkit-2.0.jar"/>
>>>>          <classpathentry kind="lib" path="lib/mail-1.4.4.jar"/>
>>>>       <classpathentry kind="lib" path="lib/mongo-java-driver-2.**
>>>> 11.2.jar"/>
>>>> +    <classpathentry kind="lib" path="lib/rsyntaxtextarea-2.0.**
>>>> 7.jar"/>
>>>>          <classpathentry kind="lib" path="lib/oro-2.0.8.jar"/>
>>>>          <classpathentry kind="lib" path="lib/serializer-2.7.1.**jar"/>
>>>>       <classpathentry kind="lib" path="lib/slf4j-api-1.7.5.jar"**/>
>>>>
>>>> Modified: jmeter/trunk/res/maven/**ApacheJMeter_parent.pom
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/res/maven/**
>>>> ApacheJMeter_parent.pom?rev=**1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/res/maven/ApacheJMeter_parent.pom?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/res/maven/**ApacheJMeter_parent.pom (original)
>>>> +++ jmeter/trunk/res/maven/**ApacheJMeter_parent.pom Fri Jul  5
>>>> 20:39:54 2013
>>>> @@ -84,6 +84,7 @@ under the License.
>>>>         <junit.version>4.11</junit.**version>
>>>>         <logkit.version>2.0</logkit.**version>
>>>> <mongo-java-driver.version>2.**11.2</mongo-java-driver.**version>
>>>> + <rsyntaxtextarea.version>2.0.**7</rsyntaxtextarea.version>
>>>>         <slf4j.version>1.7.5</slf4j.**version>
>>>>         <soap.version>2.3.1</soap.**version>
>>>>         <tidy.version>r938</tidy.**version>
>>>> @@ -357,6 +358,11 @@ under the License.
>>>> <version>${mongo-java-driver.**version}</version>
>>>>         </dependency>
>>>>         <dependency>
>>>> +        <groupId>com.fifesoft</**groupId>
>>>> +        <artifactId>rsyntaxtextarea</**artifactId>
>>>> + <version>${rsyntaxtextarea.**version}</version>
>>>> +      </dependency>
>>>> +      <dependency>
>>>>           <groupId>org.slf4j</groupId>
>>>>           <artifactId>slf4j-api</**artifactId>
>>>>           <version>${slf4j.version}</**version>
>>>>
>>>> Modified: jmeter/trunk/src/components/**org/apache/jmeter/assertions/**
>>>> gui/BeanShellAssertionGui.java
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/components/**
>>>> org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.**
>>>> java?rev=1500124&r1=1500123&**r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/assertions/gui/BeanShellAssertionGui.java?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/components/**org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.java
>>>> (original)
>>>> +++ jmeter/trunk/src/components/**org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.java
>>>> Fri Jul  5 20:39:54 2013
>>>> @@ -24,7 +24,6 @@ import javax.swing.Box;
>>>>   import javax.swing.JCheckBox;
>>>>   import javax.swing.JLabel;
>>>>   import javax.swing.JPanel;
>>>> -import javax.swing.JScrollPane;
>>>>   import javax.swing.JTextArea;
>>>>   import javax.swing.JTextField;
>>>>
>>>> @@ -32,6 +31,9 @@ import org.apache.jmeter.assertions.**Bean
>>>>   import org.apache.jmeter.testelement.**TestElement;
>>>>   import org.apache.jmeter.testelement.**property.BooleanProperty;
>>>>   import org.apache.jmeter.util.**JMeterUtils;
>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea;
>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants;
>>>> +import org.fife.ui.rtextarea.**RTextScrollPane;
>>>>
>>>>   public class BeanShellAssertionGui extends AbstractAssertionGui {
>>>>
>>>> @@ -43,7 +45,7 @@ public class BeanShellAssertionGui exten
>>>>
>>>>       private JTextField parameters;// parameters to pass to script
>>>> file (or script)
>>>>
>>>> -    private JTextArea scriptField;// script area
>>>> +    private RSyntaxTextArea scriptField; // script area
>>>>
>>>>       public BeanShellAssertionGui() {
>>>>           init();
>>>> @@ -139,8 +141,10 @@ public class BeanShellAssertionGui exten
>>>>       }
>>>>
>>>>       private JPanel createScriptPanel() {
>>>> -        scriptField = new JTextArea();
>>>> -        scriptField.setRows(4);
>>>> +        scriptField = new RSyntaxTextArea(20,20);
>>>> + scriptField.**setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**
>>>> JAVA);
>>>> +        scriptField.**setCodeFoldingEnabled(true);
>>>> +        scriptField.**setAntiAliasingEnabled(true);
>>>>           scriptField.setLineWrap(true);
>>>>           scriptField.setWrapStyleWord(**true);
>>>>
>>>> @@ -149,7 +153,7 @@ public class BeanShellAssertionGui exten
>>>>
>>>>           JPanel panel = new JPanel(new BorderLayout());
>>>>           panel.add(label, BorderLayout.NORTH);
>>>> -        panel.add(new JScrollPane(scriptField), BorderLayout.CENTER);
>>>> +        panel.add(new RTextScrollPane(scriptField),
>>>> BorderLayout.CENTER);
>>>>
>>>>           JTextArea explain = new JTextArea(JMeterUtils.**
>>>> getResString("bsh_assertion_**script_variables")); //$NON-NLS-1$
>>>>           explain.setLineWrap(true);
>>>>
>>>> Modified: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> GenericTestBeanCustomizer.java
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/**
>>>> apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.**
>>>> java?rev=1500124&r1=1500123&**r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.java
>>>> (original)
>>>> +++ jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.java
>>>> Fri Jul  5 20:39:54 2013
>>>> @@ -203,6 +203,8 @@ public class GenericTestBeanCustomizer e
>>>>
>>>>           // Obtain the propertyEditors:
>>>>           editors = new PropertyEditor[descriptors.**length];
>>>> +        int scriptLanguageIndex = 0;
>>>> +        int textAreaEditorIndex = 0;
>>>>           for (int i = 0; i < descriptors.length; i++) { // Index is
>>>> also used for accessing editors array
>>>>               PropertyDescriptor descriptor = descriptors[i];
>>>>               String name = descriptor.getName();
>>>> @@ -218,7 +220,7 @@ public class GenericTestBeanCustomizer e
>>>>               PropertyEditor propertyEditor;
>>>>               Object guiType = descriptor.getValue(GUITYPE);
>>>>               if (guiType instanceof TypeEditor) {
>>>> -                propertyEditor = ((TypeEditor) guiType).getInstance(**
>>>> descriptor);
>>>> +                propertyEditor = ((TypeEditor) guiType).getInstance(**
>>>> descriptor);
>>>>               } else {
>>>>                   Class<?> editorClass = descriptor.**
>>>> getPropertyEditorClass();
>>>>                   if (log.isDebugEnabled()) {
>>>> @@ -267,6 +269,10 @@ public class GenericTestBeanCustomizer e
>>>>               {
>>>> ((TestBeanPropertyEditor)**propertyEditor).setDescriptor(**descriptor);
>>>>               }
>>>> +
>>>> +            if (propertyEditor instanceof TextAreaEditor) {
>>>> +                textAreaEditorIndex = i;
>>>> +            }
>>>>               if (propertyEditor.**getCustomEditor() instanceof
>>>> JScrollPane) {
>>>>                   scrollerCount++;
>>>>               }
>>>> @@ -276,6 +282,17 @@ public class GenericTestBeanCustomizer e
>>>>               // Initialize the editor with the provided default value
>>>> or null:
>>>>               setEditorValue(i, descriptor.getValue(DEFAULT));
>>>>
>>>> +            if (name.equals("scriptLanguage")**) {
>>>> +                scriptLanguageIndex = i;
>>>> +            }
>>>> +
>>>> +        }
>>>> +        // In case of BSF and JSR elements i want to add
>>>> textAreaEditor as a listener to scriptLanguage ComboBox.
>>>> +        String beanName = this.beanInfo.**
>>>> getBeanDescriptor().getName();
>>>> +        if (beanName.startsWith("BSF") ||
>>>> beanName.startsWith("JSR223")) { // $NON-NLS-1$ $NON-NLS-2$
>>>> +            WrapperEditor we = (WrapperEditor)
>>>> editors[scriptLanguageIndex];
>>>> +            TextAreaEditor tae = (TextAreaEditor)
>>>> editors[textAreaEditorIndex];
>>>> +            we.addChangeListener(tae);
>>>>           }
>>>>
>>>>           // Obtain message formats:
>>>>
>>>> Modified: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> TextAreaEditor.java
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/**
>>>> apache/jmeter/testbeans/gui/**TextAreaEditor.java?rev=**
>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/TextAreaEditor.java?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**TextAreaEditor.java
>>>> (original)
>>>> +++ jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**TextAreaEditor.java
>>>> Fri Jul  5 20:39:54 2013
>>>> @@ -24,17 +24,23 @@ package org.apache.jmeter.testbeans.**gui;
>>>>   import java.awt.Component;
>>>>   import java.awt.event.FocusEvent;
>>>>   import java.awt.event.FocusListener;
>>>> +import java.beans.**PropertyChangeEvent;
>>>> +import java.beans.**PropertyChangeListener;
>>>>   import java.beans.**PropertyEditorSupport;
>>>> +import java.util.Properties;
>>>>
>>>> -import javax.swing.JScrollPane;
>>>> -import javax.swing.JTextArea;
>>>> -import javax.swing.**ScrollPaneConstants;
>>>> +import org.apache.jmeter.util.**JMeterUtils;
>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea;
>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants;
>>>> +import org.fife.ui.rtextarea.**RTextScrollPane;
>>>>
>>>> -public class TextAreaEditor extends PropertyEditorSupport implements
>>>> FocusListener {
>>>> +public class TextAreaEditor extends PropertyEditorSupport implements
>>>> FocusListener, PropertyChangeListener {
>>>>
>>>> -    private JTextArea textUI;
>>>> +    private RSyntaxTextArea textUI;
>>>>
>>>> -    private JScrollPane scroller;
>>>> +    private RTextScrollPane scroller;
>>>> +
>>>> +    private Properties languageProperties;
>>>>
>>>>       /** {@inheritDoc} */
>>>>       @Override
>>>> @@ -48,12 +54,17 @@ public class TextAreaEditor extends Prop
>>>>       }
>>>>
>>>>       private final void init() {// called from ctor, so must not be
>>>> overridable
>>>> -        textUI = new JTextArea();
>>>> +        textUI = new RSyntaxTextArea(20, 20);
>>>> +        textUI.discardAllEdits();
>>>> + textUI.setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**JAVA);
>>>> +        textUI.setCodeFoldingEnabled(**true);
>>>> +        textUI.setAntiAliasingEnabled(**true);
>>>>           textUI.addFocusListener(this);
>>>>           textUI.setWrapStyleWord(true);
>>>>           textUI.setLineWrap(true);
>>>> -        scroller = new JScrollPane(textUI,
>>>> ScrollPaneConstants.VERTICAL_**SCROLLBAR_AS_NEEDED,
>>>> - ScrollPaneConstants.**HORIZONTAL_SCROLLBAR_NEVER);
>>>> +        scroller = new RTextScrollPane(textUI);
>>>> +        scroller.**setFoldIndicatorEnabled(true);
>>>> +        languageProperties = JMeterUtils.loadProperties("**
>>>> org/apache/jmeter/testbeans/**gui/textarea.properties"); //$NON-NLS-1$
>>>>       }
>>>>
>>>>       /**
>>>> @@ -112,4 +123,19 @@ public class TextAreaEditor extends Prop
>>>>       public boolean supportsCustomEditor() {
>>>>           return true;
>>>>       }
>>>> +
>>>> +    @Override
>>>> +    public void propertyChange(**PropertyChangeEvent evt) {
>>>> +        Object source = evt.getSource();
>>>> +        if (source instanceof ComboStringEditor && source != null)
{
>>>> +            ComboStringEditor cse = (ComboStringEditor) source;
>>>> +            String lang = cse.getAsText().toLowerCase();
>>>> +            if (languageProperties.**containsKey(lang)) {
>>>> + textUI.setSyntaxEditingStyle(**languageProperties.**
>>>> getProperty(lang));
>>>> +            } else {
>>>> + textUI.setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**NONE);
>>>> +            }
>>>> +
>>>> +        }
>>>> +    }
>>>>   }
>>>>
>>>> Modified: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java
>>>>
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/**
>>>> apache/jmeter/testbeans/gui/**WrapperEditor.java?rev=**
>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/WrapperEditor.java?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java
>>>> (original)
>>>> +++ jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java
>>>> Fri Jul  5 20:39:54 2013
>>>> @@ -445,4 +445,8 @@ class WrapperEditor extends PropertyEdit
>>>>               guiEditor.setAsText(**lastValidValue);
>>>>           }
>>>>       }
>>>> +
>>>> +    public void addChangeListener(**PropertyChangeListener listener) {
>>>> +        guiEditor.**addPropertyChangeListener(**listener);
>>>> +    }
>>>>   }
>>>> \ No newline at end of file
>>>>
>>>> Added: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> textarea.properties
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/**
>>>> apache/jmeter/testbeans/gui/**textarea.properties?rev=**
>>>> 1500124&view=auto<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/textarea.properties?rev=1500124&view=auto>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties
>>>> (added)
>>>> +++ jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties
>>>> Fri Jul  5 20:39:54 2013
>>>> @@ -0,0 +1,52 @@
>>>> +#
>>>> +# 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<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.
>>>> +#
>>>> +
>>>> +javascript = text/javascript
>>>> +js = text/javascript
>>>> +jacl = text/tcl
>>>> +netrexx = text/plain
>>>> +java = text/java
>>>> +javaclass = text/java
>>>> +bml = text/xml
>>>> +vbscript = text/vb
>>>> +jscript = text/javascript
>>>> +perlscript = text/perl
>>>> +perl = text/perl
>>>> +jpython = text/python
>>>> +jython = text/python
>>>> +lotusscript = text/vb
>>>> +xslt = text/mxml
>>>> +pnuts = text/java
>>>> +beanbasic = text/java
>>>> +beanshell = text/java
>>>> +bsh = text/unix
>>>> +ruby = text/ruby
>>>> +judoscript = text/plain
>>>> +groovy = text/groovy
>>>> +objectscript = text/javascript
>>>> +prolog = text/plain
>>>> +rexx = text/plain
>>>> +applescript = text/plain
>>>> +ecmascript = text/actionscript
>>>> +jexl = text/java
>>>> +jexl2 = text/java
>>>> +rhino = text/javascript
>>>> +edit = text/unix
>>>> +lua = text/lua
>>>> +php = text/php
>>>> +lisp = text/lisp
>>>> +sql = text/sql
>>>> \ No newline at end of file
>>>>
>>>> Propchange: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> textarea.properties
>>>> ------------------------------**------------------------------**------------------
>>>>
>>>>      svn:eol-style = native
>>>>
>>>> Propchange: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**
>>>> textarea.properties
>>>> ------------------------------**------------------------------**------------------
>>>>
>>>>      svn:mime-type = text/plain
>>>>
>>>> Modified: jmeter/trunk/src/protocol/**java/org/apache/jmeter/**
>>>> protocol/java/control/gui/**BeanShellSamplerGui.java
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/protocol/**
>>>> java/org/apache/jmeter/**protocol/java/control/gui/**
>>>> BeanShellSamplerGui.java?rev=**1500124&r1=1500123&r2=1500124&**
>>>> view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/java/org/apache/jmeter/protocol/java/control/gui/BeanShellSamplerGui.java?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/src/protocol/**java/org/apache/jmeter/**
>>>> protocol/java/control/gui/**BeanShellSamplerGui.java (original)
>>>> +++ jmeter/trunk/src/protocol/**java/org/apache/jmeter/**
>>>> protocol/java/control/gui/**BeanShellSamplerGui.java Fri Jul  5
>>>> 20:39:54 2013
>>>> @@ -24,7 +24,6 @@ import javax.swing.Box;
>>>>   import javax.swing.JCheckBox;
>>>>   import javax.swing.JLabel;
>>>>   import javax.swing.JPanel;
>>>> -import javax.swing.JScrollPane;
>>>>   import javax.swing.JTextArea;
>>>>   import javax.swing.JTextField;
>>>>
>>>> @@ -33,6 +32,9 @@ import org.apache.jmeter.samplers.**gui.Ab
>>>>   import org.apache.jmeter.testelement.**TestElement;
>>>>   import org.apache.jmeter.testelement.**property.BooleanProperty;
>>>>   import org.apache.jmeter.util.**JMeterUtils;
>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea;
>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants;
>>>> +import org.fife.ui.rtextarea.**RTextScrollPane;
>>>>
>>>>   public class BeanShellSamplerGui extends AbstractSamplerGui {
>>>>
>>>> @@ -44,7 +46,7 @@ public class BeanShellSamplerGui extends
>>>>
>>>>       private JTextField parameters;// parameters to pass to script
>>>> file (or script)
>>>>
>>>> -    private JTextArea scriptField;// script area
>>>> +    private RSyntaxTextArea scriptField;// script area
>>>>
>>>>       public BeanShellSamplerGui() {
>>>>           init();
>>>> @@ -153,8 +155,9 @@ public class BeanShellSamplerGui extends
>>>>       }
>>>>
>>>>       private JPanel createScriptPanel() {
>>>> -        scriptField = new JTextArea();
>>>> -        scriptField.setRows(4);
>>>> +        scriptField = new RSyntaxTextArea(20, 20);
>>>> + scriptField.**setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**
>>>> JAVA);
>>>> +        scriptField.**setCodeFoldingEnabled(true);
>>>>           scriptField.setLineWrap(true);
>>>>           scriptField.setWrapStyleWord(**true);
>>>>
>>>> @@ -163,7 +166,7 @@ public class BeanShellSamplerGui extends
>>>>
>>>>           JPanel panel = new JPanel(new BorderLayout());
>>>>           panel.add(label, BorderLayout.NORTH);
>>>> -        panel.add(new JScrollPane(scriptField), BorderLayout.CENTER);
>>>> +        panel.add(new RTextScrollPane(scriptField),
>>>> BorderLayout.CENTER);
>>>>
>>>>           JTextArea explain = new JTextArea(JMeterUtils.**
>>>> getResString("bsh_script_**variables")); //$NON-NLS-1$
>>>>           explain.setLineWrap(true);
>>>>
>>>> Modified: jmeter/trunk/xdocs/changes.xml
>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/xdocs/changes.**
>>>> xml?rev=1500124&r1=1500123&r2=**1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1500124&r1=1500123&r2=1500124&view=diff>
>>>> ==============================**==============================**==================
>>>>
>>>> --- jmeter/trunk/xdocs/changes.xml (original)
>>>> +++ jmeter/trunk/xdocs/changes.xml Fri Jul  5 20:39:54 2013
>>>> @@ -224,6 +224,7 @@ Transaction Controller now sets Response
>>>>   <li><bugzilla>54990</bugzilla> - Download large files
avoiding
>>>> outOfMemory</li>
>>>>   <li><bugzilla>55085</bugzilla> - UX Improvement : Ability
to create
>>>> New Test Plan from Templates</li>
>>>>   <li><bugzilla>55172</bugzilla> - Provide plugins a way
to add Top
>>>> Menu and menu items</li>
>>>> +<li><bugzilla>55202</**bugzilla> - Add syntax color for
scripts
>>>> elements (BeanShell, BSF, and JSR223) with RSyntaxTextArea</li>
>>>>   </ul>
>>>>
>>>>   <h2>Non-functional changes</h2>
>>>>
>>>>
>>>>
>>
>>
>

-- 
Cordialement.
Philippe Mouawad.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message