package com.quiltplayer.view.swing.theme; import java.awt.Color; import java.awt.Insets; import java.util.ArrayList; import java.util.List; import javax.swing.BorderFactory; import javax.swing.ToolTipManager; import javax.swing.UIManager; import javax.swing.border.Border; import javax.swing.border.CompoundBorder; import javax.swing.border.EmptyBorder; import javax.swing.border.LineBorder; import com.quiltplayer.view.swing.ColorConstantsDark; import com.quiltplayer.view.swing.FontFactory; /** * * My metal theme settings. * * @author Vlado Palczynski * */ public class QUiProperties { public static void setProperties() { System.setProperty("swing.aatext", "true"); UIManager.put("swing.boldMetal", Boolean.FALSE); UIManager.put("Panel.background", ColorConstantsDark.BACKGROUND); UIManager.put("Panel.foreground", new Color(220, 220, 220)); UIManager.put("List.background", new Color(30, 30, 30)); UIManager.put("List.foreground", new Color(220, 220, 220)); setupButton(); setupComboBox(); setupSlider(); UIManager.put("CheckBox.opaque", false); UIManager.put("FileChooser.listViewBackground", Color.BLACK); UIManager.put("FileChooser.foreground", Color.GREEN); UIManager.put("FileChooser.listFont", FontFactory.getFont(14f)); UIManager.put("Label.font", FontFactory.getFont(14f)); UIManager.put("Label.foreground", new Color(135, 135, 135)); UIManager.put("DesktopIcon.background", Color.pink); // setupTextField(); UIManager.put("TextArea.background", new Color(15, 15, 15)); UIManager.put("TextArea.foreground", new Color(220, 220, 220)); UIManager.put("TextArea.font", FontFactory.getFont(13f)); setupToolTip(); } private static void setupSlider() { UIManager.put("Slider.background", ColorConstantsDark.BACKGROUND); UIManager.put("Slider.altTrackColor", Color.WHITE); UIManager.put("Slider.paintThumbArrowShape", Boolean.TRUE.toString()); } private static void setupToolTip() { ToolTipManager.sharedInstance().setInitialDelay(250); UIManager.put("ToolTip.font", FontFactory.getFont(13f)); UIManager.put("ToolTip.background", ColorConstantsDark.BACKGROUND); UIManager.put("ToolTip.foreground", new Color(220, 220, 200)); UIManager.put("ToolTip.border", BorderFactory.createEmptyBorder()); } private static void setupComboBox() { // UIManager.put("ComboBox.selectionBackground", Color.yellow); UIManager.put("ComboBox.selectionForeground", Color.BLACK); UIManager.put("ComboBox.buttonHighlight", Color.PINK); UIManager.put("ComboBox.buttonBackground", Color.PINK); UIManager.put("ComboBox.buttonShadow", Color.PINK); UIManager.put("ComboBox.foreground", new Color(220, 220, 220)); UIManager.put("ComboBox.background", new Color(30, 30, 30)); UIManager.put("ComboBox.control", new Color(30, 30, 30)); UIManager.put("ComboBox.controlForeground", new Color(30, 30, 30)); UIManager.put("ComboBox.font", FontFactory.getFont(14f)); UIManager.put("ComboBox.showPopupOnNavigation", Boolean.FALSE); } // private static void setupTextField() { // UIManager.put("TextField.background", Color.WHITE); // UIManager.put("PasswordField.background", BACKGROUND); // // UIManager.put("TextField.foreground", Configuration.getInstance().getColorConstants() // .getArtistViewTextColor()); // UIManager.put("PasswordField.foreground", Configuration.getInstance().getColorConstants() // .getArtistViewTextColor()); // // UIManager.put("TextField.inactiveForeground", new Color(70, 70, 70)); // UIManager.put("PasswordField.inactiveForeground", new Color(70, 70, 70)); // // UIManager.put("TextField.font", FontFactory.getFont(14f)); // UIManager.put("PasswordField.font", FontFactory.getFont(14f)); // // UIManager.put("TextField.caretForeground", new Color(160, 160, 160)); // UIManager.put("PasswordField.caretForeground", new Color(160, 160, 160)); // // Border bdButton = new QBorder(true); // Insets insets = new Insets(7, 3, 7, 0); // Border bdMargin = new EmptyBorder(insets.top + 1, insets.left + 1, insets.bottom + 1, // insets.right + 1); // // UIManager.put("TextField.border", new CompoundBorder(bdButton, bdMargin)); // UIManager.put("PasswordField.border", new CompoundBorder(bdButton, bdMargin)); // } private static void setupButton() { UIManager.put("Button.font", FontFactory.getFont(14f)); UIManager.put("Button.foreground", new Color(200, 200, 200)); Border bdButton = new LineBorder(new Color(70, 70, 70), 1); Insets insets = new Insets(2, 10, 2, 10); Border bdMargin = new EmptyBorder(insets.top + 1, insets.left + 1, insets.bottom + 1, insets.right + 1); UIManager.put("Button.border", new CompoundBorder(bdButton, bdMargin)); java.util.List<Object> gradients = new ArrayList<Object>(); gradients.add(0.5f); gradients.add(1.0f); gradients.add(new Color(50, 50, 50)); gradients.add(new Color(25, 25, 25)); gradients.add(new Color(15, 15, 15)); UIManager.put("Button.background", new Color(30, 30, 30)); UIManager.put("Button.gradient", gradients); UIManager.put("Button.focus", new Color(40, 40, 40)); UIManager.put("Button.defaultButtonFollowsFocus", Boolean.TRUE); /* Disable roll over */ UIManager.put("Button.rollover", Boolean.FALSE); /* Pressed */ UIManager.put("Button.select", new Color(20, 20, 20)); UIManager.put("Button.disabledForeground", Color.green); UIManager.put("Button.disabledBackground", Color.green); UIManager.put("Button.disabledText", new Color(100, 100, 100)); } }