KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > schema > ui > nodes > schema > EnumerationNode


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.modules.xml.schema.ui.nodes.schema;
21
22 import org.openide.nodes.Children;
23 import org.openide.nodes.Node.Property;
24 import org.openide.nodes.Sheet;
25 import org.openide.util.NbBundle;
26
27 import org.netbeans.modules.xml.schema.model.Enumeration;
28 import org.netbeans.modules.xml.schema.model.SchemaComponentReference;
29 import org.netbeans.modules.xml.schema.ui.nodes.SchemaComponentNode;
30 import org.netbeans.modules.xml.schema.ui.nodes.SchemaModelFlushWrapper;
31 import org.netbeans.modules.xml.schema.ui.nodes.SchemaUIContext;
32 import org.netbeans.modules.xml.schema.ui.nodes.schema.properties.BaseSchemaProperty;
33
34 /**
35  *
36  * @author Todd Fast, todd.fast@sun.com
37  * @author Ajit Bhate
38  */

39 public class EnumerationNode extends SchemaComponentNode<Enumeration>
40 {
41     /**
42      *
43      *
44      */

45     public EnumerationNode(SchemaUIContext context,
46             SchemaComponentReference<Enumeration> reference,
47             Children children) {
48         super(context,reference,children);
49     setIconBaseWithExtension(
50             "org/netbeans/modules/xml/schema/ui/nodes/resources/enumeration.png");
51     }
52     
53     
54     /**
55      *
56      *
57      */

58     protected void updateDisplayName() {
59         setDisplayName("\""+getReference().get().getValue()+"\"");
60     }
61     
62     
63     /**
64      *
65      *
66      */

67     @Override JavaDoc
68     public String JavaDoc getTypeDisplayName() {
69         return NbBundle.getMessage(EnumerationNode.class,
70                 "LBL_EnumerationNode_TypeDisplayName"); // NOI18N
71
}
72     
73     @Override JavaDoc
74     protected Sheet createSheet() {
75         Sheet sheet = super.createSheet();
76         Sheet.Set props = sheet.get(Sheet.PROPERTIES);
77         if (props == null) {
78             props = Sheet.createPropertiesSet();
79             sheet.put(props);
80         }
81         try {
82             // Fixed property
83
Property fixedProp = new BaseSchemaProperty(
84                     getReference().get(), // schema component
85
String JavaDoc.class, // value type
86
Enumeration.VALUE_PROPERTY, // property name
87
NbBundle.getMessage(EnumerationNode.class,"PROP_Facet_Value_DisplayName"), // display name
88
NbBundle.getMessage(EnumerationNode.class,"PROP_Enumeration_Value_ShortDescription"), // descr
89
null
90                     );
91             props.put(new SchemaModelFlushWrapper(getReference().get(), fixedProp));
92         } catch (NoSuchMethodException JavaDoc nsme) {
93             assert false : "properties should be defined";
94         }
95         
96         return sheet;
97     }
98 }
99
Popular Tags