KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > gjt > jclasslib > browser > detail > AnnotationDetailPane


1 /*
2     This library is free software; you can redistribute it and/or
3     modify it under the terms of the GNU General Public
4     License as published by the Free Software Foundation; either
5     version 2 of the license, or (at your option) any later version.
6 */

7 package org.gjt.jclasslib.browser.detail;
8
9 import org.gjt.jclasslib.browser.BrowserServices;
10 import org.gjt.jclasslib.browser.BrowserTreeNode;
11 import org.gjt.jclasslib.structures.elementvalues.AnnotationElementValue;
12 import org.gjt.jclasslib.structures.elementvalues.ElementValue;
13 import org.gjt.jclasslib.util.ExtendedJLabel;
14
15 import javax.swing.tree.TreePath JavaDoc;
16
17 /**
18  * Class for showing an annotation node.
19  *
20  * @author <a HREF="mailto:vitor.carreira@gmail.com">Vitor Carreira</a>
21  * @version $Revision: 1.1 $ $Date: 2004/12/28 13:04:31 $
22  */

23 public class AnnotationDetailPane extends FixedListDetailPane {
24
25     private ExtendedJLabel lblTag;
26     private ExtendedJLabel lblTagVerbose;
27
28     private ExtendedJLabel lblType;
29     private ExtendedJLabel lblTypeVerbose;
30
31     private ExtendedJLabel lblValuePairEntries;
32
33     public AnnotationDetailPane(BrowserServices services) {
34         super(services);
35     }
36
37     protected void setupLabels() {
38         addDetailPaneEntry(normalLabel("Tag:"),
39                 lblTag = highlightLabel(),
40                 lblTagVerbose = highlightLabel());
41
42         addDetailPaneEntry(normalLabel("Type:"),
43                 lblType = linkLabel(),
44                 lblTypeVerbose = highlightLabel());
45
46         addDetailPaneEntry(normalLabel("Number of entries:"),
47                 lblValuePairEntries = highlightLabel());
48     }
49
50     public void show(TreePath JavaDoc treePath) {
51         AnnotationElementValue annotation = (AnnotationElementValue)
52                 ((BrowserTreeNode)treePath.getLastPathComponent()).getElement();
53
54         lblTag.setText(String.valueOf((char)annotation.getTag()));
55         lblTagVerbose.setText("<" + ElementValue.getTagDescription(annotation.getTag()) + ">");
56
57         constantPoolHyperlink(lblType,
58                 lblTypeVerbose,
59                 annotation.getTypeIndex());
60
61         lblValuePairEntries.setText(String.valueOf(annotation.getElementValuePairEntries().length));
62
63         super.show(treePath);
64     }
65 }
66
Popular Tags