You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2017/11/19 10:46:53 UTC

svn commit: r1815724 - in /jmeter/trunk: bin/jmeter.properties src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java

Author: pmouawad
Date: Sun Nov 19 10:46:52 2017
New Revision: 1815724

URL: http://svn.apache.org/viewvc?rev=1815724&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Install LAF correctly 
Change Preference name so that previous chosen preferences does not hide this new feature
Remove overriden settings in JMeter
Bugzilla Id: 61697

Modified:
    jmeter/trunk/bin/jmeter.properties
    jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java

Modified: jmeter/trunk/bin/jmeter.properties
URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/jmeter.properties?rev=1815724&r1=1815723&r2=1815724&view=diff
==============================================================================
--- jmeter/trunk/bin/jmeter.properties (original)
+++ jmeter/trunk/bin/jmeter.properties Sun Nov 19 10:46:52 2017
@@ -113,8 +113,8 @@
 # Sample OS family LAF:
 #jmeter.laf.windows=com.sun.java.swing.plaf.windows.WindowsLookAndFeel
 
-# Mac apparently looks better with the System LAF
-jmeter.laf.mac=System
+# Custom settings for Mac using System LAF if you don't want to use Darcula
+#jmeter.laf.mac=System
 
 # Failing that, the JMeter default laf can be defined:
 #jmeter.laf=System

Modified: jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java?rev=1815724&r1=1815723&r2=1815724&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java Sun Nov 19 10:46:52 2017
@@ -49,9 +49,11 @@ public class LookAndFeelCommand extends
     // Note: Windows user preferences are stored relative to: HKEY_CURRENT_USER\Software\JavaSoft\Prefs
 
     /** Prefix for the user preference key */
-    private static final String USER_PREFS_KEY = "laf"; //$NON-NLS-1$
+    private static final String USER_PREFS_KEY = "laf.class"; //$NON-NLS-1$
 
     static {
+        log.info("Installing Darcula LAF");
+        UIManager.installLookAndFeel(new UIManager.LookAndFeelInfo(JMeterMenuBar.DARCULA_LAF, JMeterMenuBar.DARCULA_LAF_CLASS));
         UIManager.LookAndFeelInfo[] allLAFs = JMeterMenuBar.getAllLAFs();
         commands = Arrays.stream(allLAFs)
                 .map(lf -> ActionNames.LAF_PREFIX + lf.getClassName())
@@ -114,6 +116,7 @@ public class LookAndFeelCommand extends
     }
 
     public LookAndFeelCommand() {
+        // NOOP
     }
 
     @Override

Modified: jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java?rev=1815724&r1=1815723&r2=1815724&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java Sun Nov 19 10:46:52 2017
@@ -732,9 +732,8 @@ public class JMeterMenuBar extends JMenu
     public static LookAndFeelInfo[] getAllLAFs() {
         UIManager.LookAndFeelInfo[] lafs = UIManager.getInstalledLookAndFeels();
         int i = lafs.length;
-        UIManager.LookAndFeelInfo[] lafsAll = new UIManager.LookAndFeelInfo[i+3];
+        UIManager.LookAndFeelInfo[] lafsAll = new UIManager.LookAndFeelInfo[i+2];
         System.arraycopy(lafs, 0, lafsAll, 0, i);
-        lafsAll[i++]=new UIManager.LookAndFeelInfo(DARCULA_LAF, DARCULA_LAF_CLASS);
         lafsAll[i++]=new UIManager.LookAndFeelInfo(CROSS_PLATFORM_LAF,UIManager.getCrossPlatformLookAndFeelClassName());
         lafsAll[i]=new UIManager.LookAndFeelInfo(SYSTEM_LAF,UIManager.getSystemLookAndFeelClassName());
         return lafsAll;