KickJava   Java API By Example, From Geeks To Geeks.

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


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.netbeans.modules.xml.schema.model.GlobalAttribute;
23 import org.netbeans.modules.xml.schema.model.GlobalSimpleType;
24 import org.netbeans.modules.xml.schema.model.SchemaComponentReference;
25 import org.netbeans.modules.xml.schema.ui.nodes.*;
26 import org.netbeans.modules.xml.schema.ui.nodes.schema.properties.DefaultProperty;
27 import org.netbeans.modules.xml.schema.ui.nodes.schema.properties.FixedProperty;
28 import org.openide.nodes.Children;
29 import org.openide.nodes.Node;
30 import org.openide.nodes.Sheet;
31 import org.openide.util.NbBundle;
32 /**
33  *
34  * @author Todd Fast, todd.fast@sun.com
35  */

36 public class GlobalAttributeNode extends SchemaComponentNode<GlobalAttribute>
37 {
38    /**
39      *
40      *
41      */

42     public GlobalAttributeNode(SchemaUIContext context,
43         SchemaComponentReference<GlobalAttribute> reference,
44         Children children)
45     {
46         super(context,reference,children);
47
48         setIconBaseWithExtension(
49             "org/netbeans/modules/xml/schema/ui/nodes/resources/attribute.png");
50     }
51
52
53     @Override JavaDoc
54     protected GlobalSimpleType getSuperDefinition()
55     {
56         GlobalAttribute sc = getReference().get();
57         GlobalSimpleType gt = null;
58         if(sc.getType()!=null)
59             gt = sc.getType().get();
60         return gt;
61     }
62     
63     /**
64      *
65      *
66      */

67     @Override JavaDoc
68     public String JavaDoc getTypeDisplayName()
69     {
70         return NbBundle.getMessage(GlobalAttributeNode.class,
71             "LBL_GlobalAttributeNode_TypeDisplayName"); // NOI18N
72
}
73
74     @Override JavaDoc
75     protected Sheet createSheet() {
76         Sheet sheet = super.createSheet();
77         Sheet.Set set = sheet.get(Sheet.PROPERTIES);
78         try {
79             // form and type should have a custom editor
80

81             // fixed property
82
Node.Property fixedProp = new FixedProperty(
83                     getReference().get(), // schema component
84
NbBundle.getMessage(GlobalAttributeNode.class,"PROP_Fixed_DisplayName"), // display name
85
NbBundle.getMessage(GlobalAttributeNode.class,"PROP_Fixed_ShortDescription") // descr
86
);
87             set.put(new SchemaModelFlushWrapper(getReference().get(),fixedProp));
88             
89             // default property
90
Node.Property defaultProp = new DefaultProperty(
91                     getReference().get(), // schema component
92
NbBundle.getMessage(GlobalAttributeNode.class,"PROP_Default_DisplayName"), // display name
93
NbBundle.getMessage(GlobalAttributeNode.class,"PROP_Default_ShortDescription") // descr
94
);
95             set.put(new SchemaModelFlushWrapper(getReference().get(),defaultProp));
96             
97         } catch (NoSuchMethodException JavaDoc nsme) {
98             assert false : "properties should be defined";
99         }
100         
101         return sheet;
102     }
103 }
104
Popular Tags