Package org.jdesktop.beans
Class BeanInfoSupport
java.lang.Object
java.beans.SimpleBeanInfo
org.jdesktop.beans.BeanInfoSupport
- All Implemented Interfaces:
BeanInfo
- Direct Known Subclasses:
AbstractAreaPainterBeanInfo
,AbstractLayoutPainterBeanInfo
,AbstractPainterBeanInfo
,AbstractPathEffectBeanInfo
,AlphaPainterBeanInfo
,BusyPainterBeanInfo
,CheckerboardPainterBeanInfo
,CompoundPainterBeanInfo
,DropShadowBorderBeanInfo
,GlossPainterBeanInfo
,HorizontalLayoutBeanInfo
,IconBorderBeanInfo
,ImagePainterBeanInfo
,JXBusyLabelBeanInfo
,JXButtonBeanInfo
,JXCollapsiblePaneBeanInfo
,JXDatePickerBeanInfo
,JXDialogBeanInfo
,JXEditorPaneBeanInfo
,JXErrorPaneBeanInfo
,JXFindBarBeanInfo
,JXFindPanelBeanInfo
,JXFrameBeanInfo
,JXGraphBeanInfo
,JXHeaderBeanInfo
,JXHyperlinkBeanInfo
,JXImageViewBeanInfo
,JXLabelBeanInfo
,JXListBeanInfo
,JXMonthViewBeanInfo
,JXMultiSplitPaneBeanInfo
,JXPanelBeanInfo
,JXPromptBeanInfo
,JXRadioGroupBeanInfo
,JXSearchPanelBeanInfo
,JXTableBeanInfo
,JXTaskPaneBeanInfo
,JXTaskPaneContainerBeanInfo
,JXTitledPanelBeanInfo
,JXTitledSeparatorBeanInfo
,JXTreeBeanInfo
,JXTreeTableBeanInfo
,MattePainterBeanInfo
,PinstripePainterBeanInfo
,RectanglePainterBeanInfo
,ShapePainterBeanInfo
,TextPainterBeanInfo
,VerticalLayoutBeanInfo
Useful baseclass for BeanInfos. With this class, normal introspection occurs
and then you are given the opportunity to reconfigure portions of the
bean info in the
initialize
method.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Class
<?> The class of the bean that this BeanInfoSupport is forprivate BeanDescriptor
private int
private int
private Map
<String, EventSetDescriptor> private Image
The 16x16 color iconprivate Image
The 32x32 color iconprivate Image
The 16x16 monochrome iconprivate Image
The 32x32 monochrome iconprivate String
A reference to the icon.private String
A reference to the icon.private String
A reference to the icon.private String
A reference to the icon.Indicates whether I am introspecting state for the give class.private static Logger
private Map
<String, MethodDescriptor> private Map
<String, PropertyDescriptor> Fields inherited from interface java.beans.BeanInfo
ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, ICON_MONO_32x32
-
Constructor Summary
ConstructorsConstructorDescriptionBeanInfoSupport
(Class<?> beanClass) Creates a new instance of BeanInfoSupport. -
Method Summary
Modifier and TypeMethodDescriptionGets the bean'sBeanDescriptor
s.protected Class
<?> Override this method if you want to return a custom customizer class for the beanint
A bean may have a "default" event that is the event that will mostly commonly be used by human's when using the bean.int
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.Gets the bean'sEventSetDescriptor
s.getIcon
(int iconKind) This method returns an image object that can be used to represent the bean in toolboxes, toolbars, etc.private Image
Gets the bean'sMethodDescriptor
s.Gets the bean'sPropertyDescriptor
s.protected abstract void
Called by the constructor during the proper time so that subclasses can override the settings/values for the various beaninfo properties.private boolean
private Image
loadStandardImage
(BeanInfo info, int size) attempts to load a png icon from the resource directory beneath beaninfo, named like: JXTaskPaneContainer16.png JXTaskPaneContainer16-mono.png JXTaskPaneContainer32.png JXTaskPaneContainer32-mono.png if any of the icons is missing, an attempt is made to get an icon via introspection.protected void
protected void
setCategory
(String categoryName, String... propertyNames) protected void
setColorIconName
(String name) Specify the name/url/path to the 32x32 color iconprotected void
setConstrained
(boolean constrained, String... propertyNames) protected void
setDisplayName
(String displayName, String propertyName) Changes the display name of the given named property.protected void
setEnumerationValues
(EnumerationValue[] values, String... propertyNames) protected void
protected void
Sets the given named properties to be "hidden".protected void
setMonoIconName
(String name) Specify the name/url/path to the 32x32 monochrome iconprotected void
setPreferred
(boolean preferred, String... propertyNames) protected void
setPropertyEditor
(Class<?> editorClass, String... propertyNames) protected void
setSmallColorIconName
(String name) Specify the name/url/path to the small 16x16 color iconprotected void
setSmallMonoIconName
(String name) Specify the name/url/path to the small 16x16 monochrome iconprotected void
setTransient
(boolean trans, String... propertyNames) Sets the given named properties to be "transient".Methods inherited from class java.beans.SimpleBeanInfo
getAdditionalBeanInfo
-
Field Details
-
LOG
-
introspectingState
Indicates whether I am introspecting state for the give class. This helps prevent infinite loops -
beanClass
The class of the bean that this BeanInfoSupport is for -
defaultPropertyIndex
private int defaultPropertyIndex- See Also:
-
defaultEventIndex
private int defaultEventIndex- See Also:
-
iconColor16
The 16x16 color icon -
iconColor32
The 32x32 color icon -
iconMono16
The 16x16 monochrome icon -
iconMono32
The 32x32 monochrome icon -
iconNameC16
A reference to the icon. This String must be of a form that ImageIO can use to locate and load the icon image -
iconNameC32
A reference to the icon. This String must be of a form that ImageIO can use to locate and load the icon image -
iconNameM16
A reference to the icon. This String must be of a form that ImageIO can use to locate and load the icon image -
iconNameM32
A reference to the icon. This String must be of a form that ImageIO can use to locate and load the icon image -
beanDescriptor
-
properties
-
events
-
methods
-
-
Constructor Details
-
BeanInfoSupport
Creates a new instance of BeanInfoSupport.- Parameters:
beanClass
- class of the bean.
-
-
Method Details
-
isIntrospecting
private boolean isIntrospecting() -
loadStandardImage
attempts to load a png icon from the resource directory beneath beaninfo, named like: JXTaskPaneContainer16.png JXTaskPaneContainer16-mono.png JXTaskPaneContainer32.png JXTaskPaneContainer32-mono.png if any of the icons is missing, an attempt is made to get an icon via introspection. If that fails, the icon will be set to placeholder16.png or one of the derivatives -
loadImage
- Overrides:
loadImage
in classSimpleBeanInfo
-
initialize
protected abstract void initialize()Called by the constructor during the proper time so that subclasses can override the settings/values for the various beaninfo properties. For example, you could call setDisplayName("Foo Name", "foo") to change the foo properties display name -
getCustomizerClass
Override this method if you want to return a custom customizer class for the bean- Returns:
null
.
-
setSmallColorIconName
Specify the name/url/path to the small 16x16 color icon- Parameters:
name
- name of the icon.
-
setColorIconName
Specify the name/url/path to the 32x32 color icon- Parameters:
name
- name of the icon.
-
setSmallMonoIconName
Specify the name/url/path to the small 16x16 monochrome icon- Parameters:
name
- name of the icon.
-
setMonoIconName
Specify the name/url/path to the 32x32 monochrome icon- Parameters:
name
- name of the icon.
-
setDisplayName
Changes the display name of the given named property. Property names are always listed last to allow for varargs- Parameters:
displayName
- display name of the property.propertyName
- name of the property.
-
setTransient
Sets the given named properties to be "transient".- Parameters:
trans
- determines whether the properties should be encoded.propertyNames
- name of properties.- See Also:
-
setHidden
Sets the given named properties to be "hidden".- Parameters:
hidden
- determines whether the properties should be marked as hidden or not.propertyNames
- name of properties.- See Also:
-
setExpert
-
setPreferred
-
setBound
-
setConstrained
-
setCategory
-
setPropertyEditor
-
setEnumerationValues
-
getBeanDescriptor
Gets the bean'sBeanDescriptor
s.- Specified by:
getBeanDescriptor
in interfaceBeanInfo
- Overrides:
getBeanDescriptor
in classSimpleBeanInfo
- Returns:
- BeanDescriptor describing the editable properties of this bean. May return null if the information should be obtained by automatic analysis.
-
getPropertyDescriptors
Gets the bean'sPropertyDescriptor
s.- Specified by:
getPropertyDescriptors
in interfaceBeanInfo
- Overrides:
getPropertyDescriptors
in classSimpleBeanInfo
- Returns:
- 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.
-
getEventSetDescriptors
Gets the bean'sEventSetDescriptor
s.- Specified by:
getEventSetDescriptors
in interfaceBeanInfo
- Overrides:
getEventSetDescriptors
in classSimpleBeanInfo
- Returns:
- 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.
-
getMethodDescriptors
Gets the bean'sMethodDescriptor
s.- Specified by:
getMethodDescriptors
in interfaceBeanInfo
- Overrides:
getMethodDescriptors
in classSimpleBeanInfo
- Returns:
- An array of MethodDescriptors describing the methods implemented by this bean. May return null if the information should be obtained by automatic analysis.
-
getDefaultPropertyIndex
public int getDefaultPropertyIndex()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.- Specified by:
getDefaultPropertyIndex
in interfaceBeanInfo
- Overrides:
getDefaultPropertyIndex
in classSimpleBeanInfo
- Returns:
- Index of default property in the PropertyDescriptor array
returned by getPropertyDescriptors.
Returns -1 if there is no default property.
-
getDefaultEventIndex
public int getDefaultEventIndex()A bean may have a "default" event that is the event that will mostly commonly be used by human's when using the bean.- Specified by:
getDefaultEventIndex
in interfaceBeanInfo
- Overrides:
getDefaultEventIndex
in classSimpleBeanInfo
- Returns:
- Index of default event in the EventSetDescriptor array
returned by getEventSetDescriptors.
Returns -1 if there is no default event.
-
getIcon
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.
- Specified by:
getIcon
in interfaceBeanInfo
- Overrides:
getIcon
in classSimpleBeanInfo
- Parameters:
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.- Returns:
- An image object representing the requested icon. May return null if no suitable icon is available.
-
getImage
-