1 package edu.psu.geovista.app.spreadsheet;
2
3 import edu.psu.geovista.app.spreadsheet.tools.ToolManager;
4 import edu.psu.geovista.app.spreadsheet.util.Debug;
5 import edu.psu.geovista.ui.event.DataSetEvent;
6 import edu.psu.geovista.ui.event.SelectionEvent;
7
8 import java.beans.SimpleBeanInfo;
9 import java.beans.BeanDescriptor;
10 import java.beans.BeanInfo;
11 import java.beans.MethodDescriptor;
12 import java.awt.*;
13 import java.net.URL;
14 import java.lang.reflect.Method;
15 import java.util.Vector;
16 import javax.swing.*;
17
18 /*
19 * Description:
20 * Date: Apr 16, 2003
21 * Time: 10:29:53 AM
22 * @author Jin Chen
23 */
24
25 public class SpreadSheetBeanBeanInfo extends SimpleBeanInfo{
26 private final static Class beanClass=SpreadSheetBean.class;
27 public BeanDescriptor getBeanDescriptor() {
28 return new BeanDescriptor(beanClass);
29 }
30
31 public MethodDescriptor[] getMethodDescriptors() {
32 Method setData1,setData2,setData3,
33 setSelectedIndex,dataSetChanged,selectionChanged;
34
35
36 try {
37 Class[] args={Object[].class};
38 setData1=SpreadSheetBean.class.getMethod("setData",args);
39
40 Class[] args2={Object[][].class, Object[].class};
41 setData2=SpreadSheetBean.class.getMethod("setData",args2);
42 Class[] args3={Vector.class, Vector.class};
43 setData3=SpreadSheetBean.class.getMethod("setData",args3);
44
45 Class[] args4={int[].class };
46 setSelectedIndex=SpreadSheetBean.class.getMethod("setSelectedIndex",args4);
47
48 Class[] args5={DataSetEvent.class };
49 dataSetChanged=SpreadSheetBean.class.getMethod("dataSetChanged",args5);
50
51 Class[] args6={SelectionEvent.class };
52 selectionChanged=SpreadSheetBean.class.getMethod("selectionChanged",args6);
53
54 MethodDescriptor[] result={
55 new MethodDescriptor(setData1),
56 new MethodDescriptor(setData2),
57 new MethodDescriptor(setData3),
58 new MethodDescriptor(setSelectedIndex),
59 new MethodDescriptor(dataSetChanged),
60 new MethodDescriptor(selectionChanged)
61 };
62 return result;
63 } catch (NoSuchMethodException e) {
64 e.printStackTrace() ;
65 return null;
66
67 } catch (SecurityException e) {
68 e.printStackTrace() ;
69 }
70 return null;
71
72
73 }
74
75 public Image getIcon(int iconKind){
76 if (iconKind == BeanInfo.ICON_MONO_16x16 ||
77 iconKind == BeanInfo.ICON_COLOR_16x16 )
78 {
79
80 java.awt.Image img = getImage(ToolManager.IMAGES+"spreadsheet16.gif"); //root is the folder contain this class
81 return img;
82 }
83 if (iconKind == BeanInfo.ICON_MONO_32x32 ||
84 iconKind == BeanInfo.ICON_COLOR_32x32 )
85 {
86 //if(Debug.isDebug()) {
87 String im = ToolManager.IMAGES + "spreadsheet32.gif";
88 Debug.println(im);
89 //}
90 java.awt.Image img = getImage(ToolManager.IMAGES +"spreadsheet32.gif");
91 return img;
92 }
93 return null;
94
95 } //getIcon
96 // loading images
97 public static Image getImage(String fullName) {
98 //String fullName=IMAGES+name;
99 ClassLoader cl=ToolManager.class.getClassLoader() ;
100 URL url=cl.getResource(fullName);
101 if (url == null) {
102 System.out.println("image "+fullName+" not found");
103 return null;
104 }
105 return new ImageIcon(url).getImage() ;
106 }
107
108 }
This page was automatically generated by Maven