com.ibm.as400.access.PrinterFileBeanInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400 Show documentation
Show all versions of jt400 Show documentation
The Open Source version of the IBM Toolbox for Java
The newest version!
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: PrinterFileBeanInfo.java
//
// The source code contained herein is licensed under the IBM Public License
// Version 1.0, which has been approved by the Open Source Initiative.
// Copyright (C) 1997-2000 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.access;
import java.beans.SimpleBeanInfo;
import java.beans.PropertyDescriptor;
import java.beans.EventSetDescriptor;
import java.beans.BeanDescriptor;
import java.beans.IntrospectionException;
import java.beans.BeanInfo;
import java.awt.Image;
/**
BeanInfo for PrinterFile class.
**/
public class PrinterFileBeanInfo extends PrintObjectBeanInfo
{
private static final String copyright = "Copyright (C) 1997-2000 International Business Machines Corporation and others.";
// Additional properties defined for PrinterFile
private static PropertyDescriptor[] prtFProperties_;
// Class this bean info represents.
private final static Class beanClass = PrinterFile.class;
// Handles loading the appropriate resource bundle
private static ResourceBundleLoader rbl_;
static
{
try
{
// "attributes" is not a property, hide it from introspection.
PropertyDescriptor attributes =
new PropertyDescriptor( "attributes", beanClass, null, "setAttributes" );
attributes.setHidden(true);
// "name" is not a property, hide it from introspection.
PropertyDescriptor name =
new PropertyDescriptor( "name", beanClass, "getName", null );
name.setHidden(true);
PropertyDescriptor path =
new PropertyDescriptor("path", beanClass);
path.setBound(true);
path.setConstrained(true);
path.setDisplayName(rbl_.getText("PROP_NAME_PATH"));
path.setShortDescription(rbl_.getText("PROP_DESC_PATH"));
PropertyDescriptor properties[] = {attributes, name, path};
prtFProperties_ = properties;
}
catch (IntrospectionException e)
{
throw new Error(e.toString());
}
}
/**
Returns the bean descriptor.
@return The bean descriptor.
**/
public BeanDescriptor getBeanDescriptor()
{
return new BeanDescriptor(beanClass);
}
// PrinterFile does not define any additional events so we
// let the PrintObject provide:
// public int getDefaultEventIndex()
// public EventSetDescriptor[] getEventSetDescriptors()
// We want "system" as the default property. PrintObject
// sets this so we don't have to override:
// public int getDefaultPropertyIndex()
/**
Returns the descriptors for all properties.
@return The descriptors for all properties.
**/
public PropertyDescriptor[] getPropertyDescriptors()
{
// Per the JavaBean spec, properties are discrete, named attributes
// of a Java Bean that can affect its appearance or its behavior.
PropertyDescriptor[] printObjectProperties;
PropertyDescriptor[] combinedProperties;
int combinedSize;
// Get the properties defined in PrintObjectBeanInfo
printObjectProperties = super.getPropertyDescriptors();
combinedSize = printObjectProperties.length + prtFProperties_.length;
combinedProperties = new PropertyDescriptor[combinedSize];
// copy PrintObject properties
System.arraycopy( printObjectProperties, // source
0, // --offset
combinedProperties, // destination
0, // --offset
printObjectProperties.length ); // length
// copy PrinterFile properties
System.arraycopy( prtFProperties_, // source
0, // --offset
combinedProperties, // destination
printObjectProperties.length, // --offset
prtFProperties_.length ); // length
return combinedProperties;
}
/**
* Returns an Image for this bean's icon.
* @param icon The desired icon size and color.
* @return The Image for the icon.
**/
public Image getIcon(int icon)
{
Image image = null;
switch(icon)
{
case BeanInfo.ICON_MONO_16x16:
case BeanInfo.ICON_COLOR_16x16:
image = loadImage("PrinterFile16.gif");
break;
case BeanInfo.ICON_MONO_32x32:
case BeanInfo.ICON_COLOR_32x32:
image = loadImage("PrinterFile32.gif");
break;
}
return image;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy