FileDocCategorySizeDatePackage
AbstractColorChooserPanel.javaAPI DocJava SE 5 API6887Fri Aug 26 14:58:00 BST 2005javax.swing.colorchooser

AbstractColorChooserPanel

public abstract class AbstractColorChooserPanel extends JPanel
This is the abstract superclass for color choosers. If you want to add a new color chooser panel into a JColorChooser, subclass this class.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the java.beans package. Please see {@link java.beans.XMLEncoder}.

version
1.20 12/19/03
author
Tom Santos
author
Steve Wilson

Fields Summary
private JColorChooser
chooser
private ChangeListener
colorListener
private boolean
dirty
Constructors Summary
Methods Summary
protected abstract voidbuildChooser()
Builds a new chooser panel.

protected java.awt.ColorgetColorFromModel()
Returns the color that is currently selected.

return
the Color that is selected

        return getColorSelectionModel().getSelectedColor();
    
public javax.swing.colorchooser.ColorSelectionModelgetColorSelectionModel()
Returns the model that the chooser panel is editing.

return
the ColorSelectionModel model this panel is editing

        return chooser.getSelectionModel();
    
public abstract java.lang.StringgetDisplayName()
Returns a string containing the display name of the panel.

return
the name of the display panel

public intgetDisplayedMnemonicIndex()
Provides a hint to the look and feel as to the index of the character in getDisplayName that should be visually identified as the mnemonic. The look and feel should only use this if getMnemonic returns a value > 0.

The return value here is a hint, it is ultimately up to the look and feel to honor the return value in some meaningful way. For example, a look and feel may wish to render each AbstractColorChooserPanel in a JTabbedPane, and further use this return value to underline a character in the getDisplayName.

This implementation returns -1, indicating the AbstractColorChooserPanel does not support a mnemonic, subclasses wishing a mnemonic will need to override this.

return
Character index to render mnemonic for; -1 to provide no visual identifier for this panel.
see
#getMnemonic
since
1.4

        return -1;
    
static intgetInt(java.lang.Object key, int defaultValue)
Returns an integer from the defaults table. If key does not map to a valid Integer, default is returned.

param
key an Object specifying the int
param
defaultValue Returned value if key is not available, or is not an Integer
return
the int

        Object value = UIManager.get(key);

        if (value instanceof Integer) {
            return ((Integer)value).intValue();
        }
        if (value instanceof String) {
            try {
                return Integer.parseInt((String)value);
            } catch (NumberFormatException nfe) {}
        }
        return defaultValue;
    
public abstract javax.swing.IcongetLargeDisplayIcon()
Returns the large display icon for the panel.

return
the large display icon

public intgetMnemonic()
Provides a hint to the look and feel as to the KeyEvent.VK constant that can be used as a mnemonic to access the panel. A return value <= 0 indicates there is no mnemonic.

The return value here is a hint, it is ultimately up to the look and feel to honor the return value in some meaningful way.

This implementation returns 0, indicating the AbstractColorChooserPanel does not support a mnemonic, subclasses wishing a mnemonic will need to override this.

return
KeyEvent.VK constant identifying the mnemonic; <= 0 for no mnemonic
see
#getDisplayedMnemonicIndex
since
1.4



                                          
       

              
       

                          
       

                                                                                                                  
       
        return 0;
    
public abstract javax.swing.IcongetSmallDisplayIcon()
Returns the small display icon for the panel.

return
the small display icon

public voidinstallChooserPanel(javax.swing.JColorChooser enclosingChooser)
Invoked when the panel is added to the chooser. If you override this, be sure to call super.

param
enclosingChooser the panel to be added
exception
RuntimeException if the chooser panel has already been installed

        if (chooser != null) {
	    throw new RuntimeException ("This chooser panel is already installed");
        }
        chooser = enclosingChooser;
	buildChooser();
	updateChooser();
	colorListener = new ModelListener();
	getColorSelectionModel().addChangeListener(colorListener);
    
public voidpaint(java.awt.Graphics g)
Draws the panel.

param
g the Graphics object

	if (dirty) {
	    updateChooser();
	    dirty = false;
	}
        super.paint(g);
    
public voiduninstallChooserPanel(javax.swing.JColorChooser enclosingChooser)
Invoked when the panel is removed from the chooser. If override this, be sure to call super.

        getColorSelectionModel().removeChangeListener(colorListener);
        chooser = null;
    
public abstract voidupdateChooser()
Invoked automatically when the model's state changes. It is also called by installChooserPanel to allow you to set up the initial state of your chooser. Override this method to update your ChooserPanel.