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;