summaryrefslogtreecommitdiff
path: root/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java
diff options
context:
space:
mode:
authorTomas O'Connor <toconnor@openoffice.org>2002-11-12 13:31:11 +0000
committerTomas O'Connor <toconnor@openoffice.org>2002-11-12 13:31:11 +0000
commite75a5b278c89166503ec8a875655724adb2b05a3 (patch)
tree23f81328bc7edf89423d65e40351ffe64c35aecc /scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java
parentebb5dbaabbbf04d13e210271965b2ef50366cbc7 (diff)
Add Office Scripting in Java NetBeans module
Diffstat (limited to 'scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java')
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java99
1 files changed, 99 insertions, 0 deletions
diff --git a/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java b/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java
new file mode 100644
index 000000000000..e818c0176a8e
--- /dev/null
+++ b/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java
@@ -0,0 +1,99 @@
+
+package org.openoffice.netbeans.modules.office.filesystem;
+
+import java.awt.Image;
+import java.io.File;
+import java.beans.*;
+
+import org.openide.ErrorManager;
+import org.openide.filesystems.FileSystem;
+import org.openide.util.NbBundle;
+import org.openide.util.Utilities;
+
+/**
+ * Description of the OpenOffice Document filesystem.
+ *
+ * @author misha <misha@openoffice.org>
+ */
+public class OpenOfficeDocFileSystemBeanInfo
+ extends SimpleBeanInfo
+{
+ private static String ICONLOCATION =
+ "org/openoffice/netbeans/modules/office/resources";
+ private static String COLORICON16NAME =
+ ICONLOCATION + File.separator + "OpenOfficeDocFileSystemIcon.png";
+ private static String COLORICON32NAME =
+ ICONLOCATION + File.separator + "OpenOfficeDocFileSystemIcon32.png";
+
+ /**
+ * Retrives an additional bean information.
+ */
+ public BeanInfo[] getAdditionalBeanInfo()
+ {
+ try {
+ return new BeanInfo[] {
+ Introspector.getBeanInfo(FileSystem.class)
+ };
+ } catch (IntrospectionException ie) {
+ ErrorManager.getDefault().notify(ie);
+ return null;
+ }
+ }
+/*
+ // If you have a visual dialog to customize configuration of the
+ // filesystem:
+ public BeanDescriptor getBeanDescriptor()
+ {
+ return new BeanDescriptor(OpenOfficeDocFileSystem.class,
+ OpenOfficeDocFileSystemCustomizer.class);
+ }
+*/
+ /**
+ * Retrives bean property descriptors.
+ */
+ public PropertyDescriptor[] getPropertyDescriptors()
+ {
+ try {
+ // Included only to make it a writable property (it is read-only
+ // in FileSystem):
+ PropertyDescriptor readOnly = new PropertyDescriptor(
+ "readOnly", OpenOfficeDocFileSystem.class);
+ readOnly.setDisplayName(NbBundle.getMessage(
+ OpenOfficeDocFileSystemBeanInfo.class, "PROP_readOnly"));
+ readOnly.setShortDescription(NbBundle.getMessage(
+ OpenOfficeDocFileSystemBeanInfo.class, "HINT_readOnly"));
+
+ // This could be whatever properties you use to configure the
+ // filesystem:
+ PropertyDescriptor document = new PropertyDescriptor(
+ "Document", OpenOfficeDocFileSystem.class);
+ document.setDisplayName(NbBundle.getMessage(
+ OpenOfficeDocFileSystemBeanInfo.class, "PROP_document"));
+ document.setShortDescription(NbBundle.getMessage(
+ OpenOfficeDocFileSystemBeanInfo.class, "HINT_document"));
+ // Request to the property editor that it be permitted only to
+ // choose directories:
+ document.setValue("directories", Boolean.FALSE); // NOI18N
+ document.setValue("files", Boolean.TRUE); // NOI18N
+
+ return new PropertyDescriptor[] {readOnly, document};
+ } catch (IntrospectionException ie) {
+ ErrorManager.getDefault().notify(ie);
+ return null;
+ }
+ }
+
+ /**
+ * Retrives an icon by the icon type.
+ */
+ public Image getIcon(int type)
+ {
+ if((type == BeanInfo.ICON_COLOR_16x16) ||
+ (type == BeanInfo.ICON_MONO_16x16)) {
+ return Utilities.loadImage(COLORICON16NAME);
+ } else {
+ return Utilities.loadImage(COLORICON32NAME);
+ }
+ }
+
+}