home *** CD-ROM | disk | FTP | other *** search
- package com.sun.java.swing.plaf.basic;
-
- import com.sun.java.swing.ColorChooserPanel;
- import com.sun.java.swing.JComponent;
- import com.sun.java.swing.JLabel;
- import com.sun.java.swing.JPanel;
- import com.sun.java.swing.JSlider;
- import com.sun.java.swing.event.ChangeEvent;
- import com.sun.java.swing.event.ChangeListener;
- import java.awt.BorderLayout;
- import java.awt.Color;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.io.Serializable;
- import java.util.EventObject;
-
- public class BasicRGBChooserPanel extends ColorChooserPanel implements ChangeListener, Serializable {
- protected Color color;
- protected JSlider redSlider;
- protected JSlider greenSlider;
- protected JSlider blueSlider;
- protected JPanel resultColor;
- String redString;
- String greenString;
- String blueString;
-
- public BasicRGBChooserPanel() {
- this.color = Color.red;
- this.redString = "Red";
- this.greenString = "Green";
- this.blueString = "Blue";
- }
-
- public BasicRGBChooserPanel(Color var1) {
- this.color = Color.red;
- this.redString = "Red";
- this.greenString = "Green";
- this.blueString = "Blue";
- this.color = var1;
- }
-
- public void setColor(Color var1) {
- this.redSlider.setValue(var1.getRed());
- this.greenSlider.setValue(var1.getGreen());
- this.blueSlider.setValue(var1.getBlue());
- }
-
- public Color getColor() {
- return this.color;
- }
-
- public void installChooserPanel() {
- ((Container)this).setLayout(new BorderLayout());
- this.resultColor = new 1();
- JPanel var1 = new JPanel();
- ((Container)var1).add(this.resultColor);
- this.resultColor.setBackground(this.color);
- ((Container)this).add(this.resultColor, "Center");
- JPanel var2 = new JPanel();
- ((Container)var2).setLayout(new ColumnLayout());
- ((Container)this).add(var2, "West");
- this.redSlider = new JSlider(0, 0, 255, this.color.getRed());
- this.redSlider.setMajorTickSpacing(85);
- this.redSlider.setMinorTickSpacing(17);
- this.redSlider.setPaintTicks(true);
- this.redSlider.setPaintLabels(true);
- JPanel var3 = new JPanel();
- JLabel var4 = new JLabel("Red");
- ((Container)var3).add(var4);
- ((Container)var3).add(this.redSlider);
- ((Container)var2).add(var3);
- this.greenSlider = new JSlider(0, 0, 255, this.color.getRed());
- this.greenSlider.setMajorTickSpacing(85);
- this.greenSlider.setMinorTickSpacing(17);
- this.greenSlider.setPaintTicks(true);
- this.greenSlider.setPaintLabels(true);
- JPanel var5 = new JPanel();
- JLabel var6 = new JLabel("Green");
- ((Container)var5).add(var6);
- ((Container)var5).add(this.greenSlider);
- ((Container)var2).add(var5);
- this.blueSlider = new JSlider(0, 0, 255, this.color.getRed());
- this.blueSlider.setMajorTickSpacing(85);
- this.blueSlider.setMinorTickSpacing(17);
- this.blueSlider.setPaintTicks(true);
- this.blueSlider.setPaintLabels(true);
- JPanel var7 = new JPanel();
- JLabel var8 = new JLabel("Blue");
- ((Container)var7).add(var8);
- ((Container)var7).add(this.blueSlider);
- ((Container)var2).add(var7);
- int var9 = Math.max(((JComponent)var4).getPreferredSize().width, ((JComponent)var6).getPreferredSize().width);
- var9 = Math.max(var9, ((JComponent)var8).getPreferredSize().width);
- ((JComponent)var4).setPreferredSize(new Dimension(var9, ((JComponent)var4).getPreferredSize().height));
- ((JComponent)var6).setPreferredSize(new Dimension(var9, ((JComponent)var6).getPreferredSize().height));
- ((JComponent)var8).setPreferredSize(new Dimension(var9, ((JComponent)var8).getPreferredSize().height));
- ((JComponent)this).setPreferredSize(new Dimension(((JComponent)var2).getPreferredSize().width + this.resultColor.getPreferredSize().width, ((JComponent)var2).getPreferredSize().height + this.resultColor.getPreferredSize().height));
- this.redSlider.addChangeListener(this);
- this.greenSlider.addChangeListener(this);
- this.blueSlider.addChangeListener(this);
- }
-
- public void uninstallChooserPanel() {
- this.color = null;
- this.redSlider = null;
- this.greenSlider = null;
- this.blueSlider = null;
- }
-
- public void stateChanged(ChangeEvent var1) {
- if (((EventObject)var1).getSource() instanceof JSlider) {
- JSlider var2 = (JSlider)((EventObject)var1).getSource();
- Color var3 = this.color;
- if (var2 == this.redSlider) {
- this.color = new Color(this.redSlider.getValue(), this.color.getGreen(), this.color.getBlue());
- } else if (var2 == this.greenSlider) {
- this.color = new Color(this.color.getRed(), this.greenSlider.getValue(), this.color.getBlue());
- } else if (var2 == this.blueSlider) {
- this.color = new Color(this.color.getRed(), this.color.getGreen(), this.blueSlider.getValue());
- }
-
- this.resultColor.setBackground(this.color);
- this.resultColor.repaint();
- ((ColorChooserPanel)this).fireColorPropertyChange(var3, this.color);
- }
-
- }
- }
-