View Javadoc

1   // Copyright 2004, FreeHEP.
2   package hep.wired.util;
3   
4   import java.awt.*;
5   import java.awt.event.*;
6   import javax.swing.*;
7   
8   import org.freehep.swing.layout.TableLayout;
9   
10  /***
11   *
12   * @author Mark Donszelmann
13   * @version $Id: TitledPanel.java 417 2004-08-23 19:57:35Z duns $
14   */
15  public class TitledPanel extends JPanel {
16  
17      private JLabel title;
18  
19      public TitledPanel(String text, Component main) {
20          this(text, main, new Component[0]);
21      }
22      
23      public TitledPanel(String text, Component main, Component extra) {
24          this(text, main, new Component[] {extra});
25      }
26      
27      public TitledPanel(String text, Component main, Component[] extra) {    
28          super();
29          title = new JLabel(text);
30          
31          setLayout(new TableLayout());
32          add("0 0 [3 6 3 3] w", title);
33          for (int i=0; i<extra.length; i++) {
34              add((i+1)+" 0 [3 3 3 3]", extra[i]);
35          }
36          if (main != null) {
37              add("0 1 * * [3 3 3 3] wh", main);
38          }   
39      }
40      
41      public void setTitle(String text) {
42          title.setText(text);
43          revalidate();
44          repaint();
45      }
46  }