package org.signalml.app.view.tag; import java.awt.Component; import javax.swing.JColorChooser; import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JSlider; import javax.swing.colorchooser.AbstractColorChooserPanel; /** * A color chooser for selecting tag style color. * * @author Piotr Szachewicz */ public class TagColorChooser extends JColorChooser { public TagColorChooser() { super(); setPreviewPanel(new JPanel()); AbstractColorChooserPanel chooserPanel = getChooserPanels()[1]; removeSliderFromComponent(chooserPanel); setChooserPanels(new AbstractColorChooserPanel[] {chooserPanel} ); } /** * Since JDK 7, sliders were introduced to control the HSB/RGB/.. * values of the color. We do not want them because they are too * big. * @param component the component from which the sliders should * be removed. */ protected void removeSliderFromComponent(JComponent component) { for (Component c: component.getComponents()) { if (c instanceof JSlider) component.remove(c); else if (c instanceof JComponent) removeSliderFromComponent((JComponent) c); } } }