+ /**
+ * Tries to load the class with the given name and includes the look & feel
+ * in the UIManager, if it exists.
+ *
+ * @param name
+ * The name of the look & feel
+ * @param className
+ * The name of the look & feel’s main class
+ */
+ private void maybeAddLookAndFeel(String name, String className) {
+ try {
+ Class.forName(className);
+ LookAndFeelInfo[] installedLookAndFeelds = UIManager.getInstalledLookAndFeels();
+ LookAndFeelInfo[] newLookAndFeels = new LookAndFeelInfo[installedLookAndFeelds.length + 1];
+ System.arraycopy(installedLookAndFeelds, 0, newLookAndFeels, 0, installedLookAndFeelds.length);
+ newLookAndFeels[installedLookAndFeelds.length] = new UIManager.LookAndFeelInfo(name, className);
+ UIManager.setInstalledLookAndFeels(newLookAndFeels);
+ } catch (ClassNotFoundException e) {
+ /* okay, it doesn't exist, ignore. */
+ }
+ }
+