/** * Based on the current look and feel (as returned by <code>UIManager.getLookAndFeel()</code>), * this method returns the name of the closest <code>LookAndFeelAddons</code> to use. * * @return the addon matching the currently installed look and feel */ public static String getBestMatchAddonClassName() { LookAndFeel laf = UIManager.getLookAndFeel(); String className = null; if (UIManager.getCrossPlatformLookAndFeelClassName().equals(laf.getClass().getName())) { className = getCrossPlatformAddonClassName(); } else if (UIManager.getSystemLookAndFeelClassName().equals(laf.getClass().getName())) { className = getSystemAddonClassName(); } else { ServiceLoader<LookAndFeelAddons> addonLoader = ServiceLoader.load(LookAndFeelAddons.class, getClassLoader()); for (LookAndFeelAddons addon : addonLoader) { if (addon.matches()) { className = addon.getClass().getName(); break; } } } if (className == null) { className = getSystemAddonClassName(); } return className; }
/** * Based on the current look and feel (as returned by <code>UIManager.getLookAndFeel()</code>), * this method returns the name of the closest <code>LookAndFeelAddons</code> to use. * * @return the addon matching the currently installed look and feel */ public static String getBestMatchAddonClassName() { LookAndFeel laf = UIManager.getLookAndFeel(); String className = null; if (UIManager.getCrossPlatformLookAndFeelClassName().equals(laf.getClass().getName())) { className = getCrossPlatformAddonClassName(); } else if (UIManager.getSystemLookAndFeelClassName().equals(laf.getClass().getName())) { className = getSystemAddonClassName(); } else { ServiceLoader<LookAndFeelAddons> addonLoader = ServiceLoader.load(LookAndFeelAddons.class, getClassLoader()); for (LookAndFeelAddons addon : addonLoader) { if (addon.matches()) { className = addon.getClass().getName(); break; } } } if (className == null) { className = getSystemAddonClassName(); } return className; }
/** * Based on the current look and feel (as returned by <code>UIManager.getLookAndFeel()</code>), * this method returns the name of the closest <code>LookAndFeelAddons</code> to use. * * @return the addon matching the currently installed look and feel */ public static String getBestMatchAddonClassName() { LookAndFeel laf = UIManager.getLookAndFeel(); String className = null; if (UIManager.getCrossPlatformLookAndFeelClassName().equals(laf.getClass().getName())) { className = getCrossPlatformAddonClassName(); } else if (UIManager.getSystemLookAndFeelClassName().equals(laf.getClass().getName())) { className = getSystemAddonClassName(); } else { ServiceLoader<LookAndFeelAddons> addonLoader = ServiceLoader.load(LookAndFeelAddons.class, getClassLoader()); for (LookAndFeelAddons addon : addonLoader) { if (addon.matches()) { className = addon.getClass().getName(); break; } } } if (className == null) { className = getSystemAddonClassName(); } return className; }
addon = MetalLookAndFeelAddons.class.getName(); } else if (UIManager.getSystemLookAndFeelClassName().equals(lnf)) { addon = getSystemAddonClassName(); } else if ("com.sun.java.swing.plaf.windows.WindowsLookAndFeel".equals(lnf) || "com.jgoodies.looks.windows.WindowsLookAndFeel".equals(lnf)) { addon = NimbusLookAndFeelAddons.class.getName(); } else { addon = getSystemAddonClassName();