/*DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *
 * Copyright 2006-2008. Tim Boudreau. All rights reserved.
 *
 * The contents of this file are subject to the terms of either the GNU
 * General Public License Version 2 only ("GPL") or the Common
 * Development and Distribution License("CDDL") (collectively, the
 * "License"). You may not use this file except in compliance with the
 * License. You can obtain a copy of the License at
 * http://www.netbeans.org/cddl-gplv2.html. See the License for the
 * specific language governing permissions and limitations under the
 * License.  When distributing the software, include this License Header
 * Notice in each file and include the License file at
 * nbbuild/licenses/CDDL-GPL-2-CP.  This particular file is designated
 * as subject to the "Classpath" exception as provided
 * in the GPL Version 2 section of the License file that
 * accompanied this code.
 */

package net.java.dev.colorchooser;

import java.beans.BeanDescriptor;
import java.beans.EventSetDescriptor;
import java.beans.IntrospectionException;
import java.beans.MethodDescriptor;
import java.beans.PropertyDescriptor;
import java.beans.SimpleBeanInfo;

public class ColorChooserBeanInfo extends SimpleBeanInfo {

	// Bean descriptor//GEN-FIRST:BeanDescriptor
	/* lazy BeanDescriptor */
	private static BeanDescriptor getBdescriptor() {
		final BeanDescriptor beanDescriptor = new BeanDescriptor(
				net.java.dev.colorchooser.ColorChooser.class, null); // NOI18N//GEN-HEADEREND:BeanDescriptor

		// Here you can add code for customizing the BeanDescriptor.

		return beanDescriptor;
	}// GEN-LAST:BeanDescriptor

	// Property identifiers//GEN-FIRST:Properties
	private static final int PROPERTY_color = 0;
	private static final int PROPERTY_continuousPalettePreferred = 1;
	private static final int PROPERTY_cursor = 2;
	private static final int PROPERTY_enabled = 3;
	private static final int PROPERTY_height = 4;
	private static final int PROPERTY_maximumSize = 5;
	private static final int PROPERTY_minimumSize = 6;
	private static final int PROPERTY_name = 7;
	private static final int PROPERTY_preferredSize = 8;
	private static final int PROPERTY_toolTipText = 9;
	private static final int PROPERTY_transientColor = 10;
	private static final int PROPERTY_visible = 11;
	private static final int PROPERTY_width = 12;
	private static final int PROPERTY_x = 13;
	private static final int PROPERTY_y = 14;

	// Property array
	/* lazy PropertyDescriptor */
	private static PropertyDescriptor[] getPdescriptor() {
		final PropertyDescriptor[] properties = new PropertyDescriptor[15];

		try {
			properties[PROPERTY_color] = new PropertyDescriptor("color",
					net.java.dev.colorchooser.ColorChooser.class, "getColor",
			"setColor"); // NOI18N
			properties[PROPERTY_color].setPreferred(true);
			properties[PROPERTY_continuousPalettePreferred] = new PropertyDescriptor(
					"continuousPalettePreferred",
					net.java.dev.colorchooser.ColorChooser.class,
					"isContinuousPalettePreferred",
			"setContinuousPalettePreferred"); // NOI18N
			properties[PROPERTY_continuousPalettePreferred].setPreferred(true);
			properties[PROPERTY_cursor] = new PropertyDescriptor("cursor",
					net.java.dev.colorchooser.ColorChooser.class, "getCursor",
			"setCursor"); // NOI18N
			properties[PROPERTY_enabled] = new PropertyDescriptor("enabled",
					net.java.dev.colorchooser.ColorChooser.class, "isEnabled",
			"setEnabled"); // NOI18N
			properties[PROPERTY_height] = new PropertyDescriptor("height",
					net.java.dev.colorchooser.ColorChooser.class, "getHeight",
					null); // NOI18N
			properties[PROPERTY_maximumSize] = new PropertyDescriptor(
					"maximumSize",
					net.java.dev.colorchooser.ColorChooser.class,
					"getMaximumSize", "setMaximumSize"); // NOI18N
			properties[PROPERTY_minimumSize] = new PropertyDescriptor(
					"minimumSize",
					net.java.dev.colorchooser.ColorChooser.class,
					"getMinimumSize", "setMinimumSize"); // NOI18N
			properties[PROPERTY_name] = new PropertyDescriptor("name",
					net.java.dev.colorchooser.ColorChooser.class, "getName",
			"setName"); // NOI18N
			properties[PROPERTY_preferredSize] = new PropertyDescriptor(
					"preferredSize",
					net.java.dev.colorchooser.ColorChooser.class,
					"getPreferredSize", "setPreferredSize"); // NOI18N
			properties[PROPERTY_toolTipText] = new PropertyDescriptor(
					"toolTipText",
					net.java.dev.colorchooser.ColorChooser.class,
					"getToolTipText", "setToolTipText"); // NOI18N
			properties[PROPERTY_transientColor] = new PropertyDescriptor(
					"transientColor",
					net.java.dev.colorchooser.ColorChooser.class,
					"getTransientColor", null); // NOI18N
			properties[PROPERTY_transientColor].setExpert(true);
			properties[PROPERTY_visible] = new PropertyDescriptor("visible",
					net.java.dev.colorchooser.ColorChooser.class, "isVisible",
			"setVisible"); // NOI18N
			properties[PROPERTY_width] = new PropertyDescriptor("width",
					net.java.dev.colorchooser.ColorChooser.class, "getWidth",
					null); // NOI18N
			properties[PROPERTY_x] = new PropertyDescriptor("x",
					net.java.dev.colorchooser.ColorChooser.class, "getX", null); // NOI18N
			properties[PROPERTY_y] = new PropertyDescriptor("y",
					net.java.dev.colorchooser.ColorChooser.class, "getY", null); // NOI18N
		} catch (final IntrospectionException e) {
			e.printStackTrace();
		}// GEN-HEADEREND:Properties

		// Here you can add code for customizing the properties array.

		return properties;
	}// GEN-LAST:Properties

	// EventSet identifiers//GEN-FIRST:Events
	private static final int EVENT_actionListener = 0;
	private static final int EVENT_componentListener = 1;
	private static final int EVENT_focusListener = 2;
	private static final int EVENT_hierarchyBoundsListener = 3;
	private static final int EVENT_inputMethodListener = 4;
	private static final int EVENT_keyListener = 5;
	private static final int EVENT_mouseListener = 6;
	private static final int EVENT_mouseMotionListener = 7;
	private static final int EVENT_propertyChangeListener = 8;

	// EventSet array
	/* lazy EventSetDescriptor */
	private static EventSetDescriptor[] getEdescriptor() {
		final EventSetDescriptor[] eventSets = new EventSetDescriptor[9];

		try {
			eventSets[EVENT_actionListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"actionListener", java.awt.event.ActionListener.class,
					new String[] { "actionPerformed" }, "addActionListener",
			"removeActionListener"); // NOI18N
			eventSets[EVENT_actionListener].setPreferred(true);
			eventSets[EVENT_componentListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"componentListener",
					java.awt.event.ComponentListener.class, new String[] {
						"componentHidden", "componentMoved",
						"componentResized", "componentShown" },
						"addComponentListener", "removeComponentListener"); // NOI18N
			eventSets[EVENT_focusListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"focusListener", java.awt.event.FocusListener.class,
					new String[] { "focusGained", "focusLost" },
					"addFocusListener", "removeFocusListener"); // NOI18N
			eventSets[EVENT_hierarchyBoundsListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"hierarchyBoundsListener",
					java.awt.event.HierarchyBoundsListener.class, new String[] {
						"ancestorMoved", "ancestorResized" },
						"addHierarchyBoundsListener",
			"removeHierarchyBoundsListener"); // NOI18N
			eventSets[EVENT_inputMethodListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"inputMethodListener",
					java.awt.event.InputMethodListener.class, new String[] {
						"caretPositionChanged", "inputMethodTextChanged" },
						"addInputMethodListener", "removeInputMethodListener"); // NOI18N
			eventSets[EVENT_keyListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"keyListener", java.awt.event.KeyListener.class,
					new String[] { "keyPressed", "keyReleased", "keyTyped" },
					"addKeyListener", "removeKeyListener"); // NOI18N
			eventSets[EVENT_mouseListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"mouseListener", java.awt.event.MouseListener.class,
					new String[] { "mouseClicked", "mouseEntered",
						"mouseExited", "mousePressed", "mouseReleased" },
						"addMouseListener", "removeMouseListener"); // NOI18N
			eventSets[EVENT_mouseMotionListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"mouseMotionListener",
					java.awt.event.MouseMotionListener.class, new String[] {
						"mouseDragged", "mouseMoved" },
						"addMouseMotionListener", "removeMouseMotionListener"); // NOI18N
			eventSets[EVENT_propertyChangeListener] = new EventSetDescriptor(
					net.java.dev.colorchooser.ColorChooser.class,
					"propertyChangeListener",
					java.beans.PropertyChangeListener.class,
					new String[] { "propertyChange" },
					"addPropertyChangeListener", "removePropertyChangeListener"); // NOI18N
		} catch (final IntrospectionException e) {
			e.printStackTrace();
		}// GEN-HEADEREND:Events

		// Here you can add code for customizing the event sets array.

		return eventSets;
	}// GEN-LAST:Events

	// Method identifiers//GEN-FIRST:Methods

	// Method array
	/* lazy MethodDescriptor */
	private static MethodDescriptor[] getMdescriptor() {
		final MethodDescriptor[] methods = new MethodDescriptor[0];// GEN-HEADEREND:Methods

		// Here you can add code for customizing the methods array.

		return methods;
	}// GEN-LAST:Methods

	private static java.awt.Image iconColor16 = null;// GEN-BEGIN:IconsDef
	private static java.awt.Image iconColor32 = null;
	private static java.awt.Image iconMono16 = null;
	private static java.awt.Image iconMono32 = null;// GEN-END:IconsDef
	private static String iconNameC16 = "/carmetal.org/netbeans/swing/colorchooser/chooserIcon.gif";// GEN-BEGIN:Icons
	private static String iconNameC32 = "/carmetal.org/netbeans/swing/colorchooser/chooserIcon32.gif";
	private static String iconNameM16 = null;
	private static String iconNameM32 = null;// GEN-END:Icons

	private static final int defaultPropertyIndex = -1;// GEN-BEGIN:Idx
	private static final int defaultEventIndex = -1;// GEN-END:Idx

	// GEN-FIRST:Superclass

	// Here you can add code for customizing the Superclass BeanInfo.

	// GEN-LAST:Superclass

	/**
	 * Gets the bean's BeanDescriptors.
	 * 
	 * @return BeanDescriptor describing the editable properties of this bean.
	 *         May return null if the information should be obtained by
	 *         automatic analysis.
	 */
	@Override
	public BeanDescriptor getBeanDescriptor() {
		return getBdescriptor();
	}

	/**
	 * Gets the bean's PropertyDescriptors.
	 * 
	 * @return An array of PropertyDescriptors describing the editable
	 *         properties supported by this bean. May return null if the
	 *         information should be obtained by automatic analysis.
	 *         

* If a property is indexed, then its entry in the result array will * belong to the IndexedPropertyDescriptor subclass of * PropertyDescriptor. A client of getPropertyDescriptors can use * "instanceof" to check if a given PropertyDescriptor is an * IndexedPropertyDescriptor. */ @Override public PropertyDescriptor[] getPropertyDescriptors() { return getPdescriptor(); } /** * Gets the bean's EventSetDescriptors. * * @return An array of EventSetDescriptors describing the kinds of events * fired by this bean. May return null if the information should be * obtained by automatic analysis. */ @Override public EventSetDescriptor[] getEventSetDescriptors() { return getEdescriptor(); } /** * Gets the bean's MethodDescriptors. * * @return An array of MethodDescriptors describing the methods implemented * by this bean. May return null if the information should be * obtained by automatic analysis. */ @Override public MethodDescriptor[] getMethodDescriptors() { return getMdescriptor(); } /** * A bean may have a "default" property that is the property that will * mostly commonly be initially chosen for update by human's who are * customizing the bean. * * @return Index of default property in the PropertyDescriptor array * returned by getPropertyDescriptors. *

* Returns -1 if there is no default property. */ @Override public int getDefaultPropertyIndex() { return defaultPropertyIndex; } /** * A bean may have a "default" event that is the event that will mostly * commonly be used by human's when using the bean. * * @return Index of default event in the EventSetDescriptor array returned * by getEventSetDescriptors. *

* Returns -1 if there is no default event. */ @Override public int getDefaultEventIndex() { return defaultEventIndex; } /** * This method returns an image object that can be used to represent the * bean in toolboxes, toolbars, etc. Icon images will typically be GIFs, but * may in future include other formats. *

* Beans aren't required to provide icons and may return null from this * method. *

* There are four possible flavors of icons (16x16 color, 32x32 color, 16x16 * mono, 32x32 mono). If a bean choses to only support a single icon we * recommend supporting 16x16 color. *

* We recommend that icons have a "transparent" background so they can be * rendered onto an existing background. * * @param iconKind * The kind of icon requested. This should be one of the constant * values ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, or * ICON_MONO_32x32. * @return An image object representing the requested icon. May return null * if no suitable icon is available. */ @Override public java.awt.Image getIcon(final int iconKind) { switch (iconKind) { case ICON_COLOR_16x16: if (iconNameC16 == null) return null; else { if (iconColor16 == null) iconColor16 = loadImage(iconNameC16); return iconColor16; } case ICON_COLOR_32x32: if (iconNameC32 == null) return null; else { if (iconColor32 == null) iconColor32 = loadImage(iconNameC32); return iconColor32; } case ICON_MONO_16x16: if (iconNameM16 == null) return null; else { if (iconMono16 == null) iconMono16 = loadImage(iconNameM16); return iconMono16; } case ICON_MONO_32x32: if (iconNameM32 == null) return null; else { if (iconMono32 == null) iconMono32 = loadImage(iconNameM32); return iconMono32; } default: return null; } } }

Ads help maintain this website.