home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Programming Languages Suite
/
ProgLangD.iso
/
VCAFE.3.0A
/
Main.bin
/
ImageButtonBeanInfo.java
< prev
next >
Wrap
Text File
|
1998-08-21
|
8KB
|
227 lines
package symantec.itools.awt;
import java.beans.*;
import symantec.itools.beans.*;
import java.util.ResourceBundle;
// 08/05/97 LAB Removed ScaleMode and CenterMode properties. Added ImageStyle property.
// Removed connections associated with ScaleMode and CenterMode. Added
// connections related to ImageStle.
// 09/07/97 LAB Fixed misspelling of descriptions. Removed background, foreground, and
// font properties (Addresses Mac Bug #7668).
// 08/19/98 LAB Moved to GroupAWTAdditions folder.
/**
* BeanInfo for ImageButton.
*
*/
public class ImageButtonBeanInfo extends SimpleBeanInfo {
/**
* Constructs a ImageButtonBeanInfo object.
*/
public ImageButtonBeanInfo() {
}
/**
* Gets a BeanInfo for the superclass of this bean.
* @return BeanInfo[] containing this bean's superclass BeanInfo
*/
public BeanInfo[] getAdditionalBeanInfo() {
try {
BeanInfo[] bi = new BeanInfo[1];
bi[0] = Introspector.getBeanInfo(beanClass.getSuperclass());
return bi;
}
catch (IntrospectionException e) { throw new Error(e.toString());}
}
/**
* Gets the SymantecBeanDescriptor for this bean.
* @return an object of type SymantecBeanDescriptor
* @see symantec.itools.beans.SymantecBeanDescriptor
*/
public BeanDescriptor getBeanDescriptor() {
ResourceBundle group = ResourceBundle.getBundle("symantec.itools.resources.GroupBundle");
String s=group.getString("GroupAWTAdditions");
SymantecBeanDescriptor bd = new SymantecBeanDescriptor(beanClass);
bd.setFolder(s);
bd.setWinHelp("0x123B0");
ResourceBundle conn = ResourceBundle.getBundle("symantec.itools.resources.ConnBundle");
bd.addConnectionDescriptor(new ConnectionDescriptor("output", "int", "",
"%name%.IMAGE_TILED",
conn.getString("IMAGE_TILED")));
bd.addConnectionDescriptor(new ConnectionDescriptor("output", "int", "",
"%name%.IMAGE_CENTERED",
conn.getString("IMAGE_TILED")));
bd.addConnectionDescriptor(new ConnectionDescriptor("output", "int", "",
"%name%.IMAGE_SCALED_TO_FIT",
conn.getString("IMAGE_SCALED_TO_FIT")));
bd.addConnectionDescriptor(new ConnectionDescriptor("output", "int", "",
"%name%.NORMAL",
conn.getString("NORMAL")));
bd.addAdditionalConnections(getAdditionalBeanInfo());
return (BeanDescriptor) bd;
}
/**
* Gets an image that may be used to visually represent this bean
* (in the toolbar, on a form, etc).
* @param iconKind the type of icon desired, one of: BeanInfo.ICON_MONO_16x16,
* BeanInfo.ICON_COLOR_16x16, BeanInfo.ICON_MONO_32x32, or BeanInfo.ICON_COLOR_32x32.
* @return an image for this bean, always color even if requested monochrome
* @see BeanInfo#ICON_MONO_16x16
* @see BeanInfo#ICON_COLOR_16x16
* @see BeanInfo#ICON_MONO_32x32
* @see BeanInfo#ICON_COLOR_32x32
*/
public java.awt.Image getIcon(int iconKind) {
if (iconKind == BeanInfo.ICON_MONO_16x16 ||
iconKind == BeanInfo.ICON_COLOR_16x16) {
java.awt.Image img = loadImage("ImageButtonC16.gif");
return img;
}
if (iconKind == BeanInfo.ICON_MONO_32x32 ||
iconKind == BeanInfo.ICON_COLOR_32x32) {
java.awt.Image img = loadImage("ImageButtonC32.gif");
return img;
}
return null;
}
/**
* Gets an array of descriptions of the methods used for "connections" by
* Visual CafΘ's Interaction Wizard.
* Included in each method description is a CONNECTIONS ConnectionDescriptor.
* @return method descriptions for this bean
* @see symantec.itools.beans.ConnectionDescriptor#CONNECTIONS
*/
public MethodDescriptor[] getMethodDescriptors() {
Class[] args;
ConnectionDescriptor connection;
java.util.Vector connections;
java.util.Vector md = new java.util.Vector();
ResourceBundle conn = ResourceBundle.getBundle("symantec.itools.resources.ConnBundle");
try{
args = null;
MethodDescriptor getImageURL = new MethodDescriptor(beanClass.getMethod("getImageURL", args));
connections = new java.util.Vector();
connection = new ConnectionDescriptor("output", "URL", "",
"%name%.getImageURL()",
conn.getString("getImageURL"));
connections.addElement(connection);
getImageURL.setValue(ConnectionDescriptor.CONNECTIONS, connections);
md.addElement(getImageURL);
} catch (Exception e) { throw new Error("getImageURL:: " + e.toString()); }
try{
args = new Class[1];
args[0] = java.net.URL.class ;
MethodDescriptor setImageURL = new MethodDescriptor(beanClass.getMethod("setImageURL", args));
connections = new java.util.Vector();
connection = new ConnectionDescriptor("input", "URL", "",
"%name%.setImageURL(%arg%);",
conn.getString("setImageURL"));
connections.addElement(connection);
connection = new ConnectionDescriptor("input", "RelativeURL", "",
"%name%.setImageURL(symantec.itools.net.RelativeURL.getURL(%arg%));",
conn.getString("setImageURLRel"));
connections.addElement(connection);
setImageURL.setValue(ConnectionDescriptor.CONNECTIONS, connections);
md.addElement(setImageURL);
} catch (Exception e) { throw new Error("setImageURL:: " + e.toString()); }
try{
args = new Class[1];
args[0] = java.lang.Integer.TYPE;
MethodDescriptor setImageStyle = new MethodDescriptor(beanClass.getMethod("setImageStyle", args));
connections = new java.util.Vector();
connection = new ConnectionDescriptor("input", "int", "",
"%name%.setImageStyle(%arg%);",
conn.getString("setImageStyle"));
connections.addElement(connection);
setImageStyle.setValue(ConnectionDescriptor.CONNECTIONS, connections);
md.addElement(setImageStyle);
} catch (Exception e) { throw new Error("setImageStyle:: " + e.toString()); }
try{
args = null;
MethodDescriptor getImageStyle = new MethodDescriptor(beanClass.getMethod("getImageStyle", args));
connections = new java.util.Vector();
connection = new ConnectionDescriptor("output", "int", "",
"%name%.getImageStyle()",
conn.getString("getImageStyle"));
connections.addElement(connection);
getImageStyle.setValue(ConnectionDescriptor.CONNECTIONS, connections);
md.addElement(getImageStyle);
} catch (Exception e) { throw new Error("getImageStyle:: " + e.toString()); }
MethodDescriptor[] rv = new MethodDescriptor[md.size()];
md.copyInto(rv);
return rv;
}
/**
* Returns descriptions of this bean's properties.
*/
public PropertyDescriptor[] getPropertyDescriptors() {
ResourceBundle prop = ResourceBundle.getBundle("symantec.itools.resources.PropBundle");
String s;
try{
PropertyDescriptor imageURL = new PropertyDescriptor("imageURL", beanClass);
imageURL.setBound(true);
imageURL.setConstrained(true);
imageURL.setDisplayName(prop.getString("imageURL"));
imageURL.setValue("URLFILTER", prop.getString("imageURLFILTER"));
PropertyDescriptor imageStyle = new PropertyDescriptor("imageStyle", beanClass);
imageStyle.setBound(true);
imageStyle.setConstrained(true);
imageStyle.setDisplayName(prop.getString("imageStyle"));
imageStyle.setValue("ENUMERATION", "IMAGE_TILED=0, IMAGE_CENTERED=1, IMAGE_SCALED_TO_FIT=2, IMAGE_NORMAL=3");
PropertyDescriptor background = new PropertyDescriptor("background", beanClass);
background.setHidden(true);
PropertyDescriptor foreground = new PropertyDescriptor("foreground", beanClass);
foreground.setHidden(true);
PropertyDescriptor font = new PropertyDescriptor("font", beanClass);
font.setHidden(true);
PropertyDescriptor[] rv = {
imageURL,
imageStyle,
background,
foreground,
font};
return rv;
} catch (IntrospectionException e) { throw new Error(e.toString()); }
}
private final static Class beanClass = ImageButton.class;
} // end of class ImageButtonBeanInfo