KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > rero > gui > toolkit > MinimalTabUI


1 package rero.gui.toolkit;
2
3 import javax.swing.*;
4 import javax.swing.event.*;
5
6 import javax.swing.plaf.*;
7 import javax.swing.plaf.basic.*;
8
9 import javax.swing.border.*;
10 import java.awt.*;
11
12 import rero.config.*;
13
14 import rero.gui.*;
15
16 public class MinimalTabUI extends TabbedPaneUI implements ChangeListener
17 {
18     public MinimalTabUI()
19     {
20        // don't do anything :)
21
}
22
23     private static class MinimalLayout extends CardLayout
24     {
25        public void addLayoutComponent(Component c, Object JavaDoc constraints)
26        {
27           super.addLayoutComponent(c.hashCode() + "", c);
28        }
29
30        public void addLayoutComponent(String JavaDoc cons, Component c)
31        {
32           super.addLayoutComponent(c.hashCode() + "", c);
33        }
34     }
35
36     public Dimension getMinimumSize() { return null; }
37     public Dimension getMaximumSize() { return null; }
38     public Dimension getPreferredSize() { return null; }
39
40 // public boolean contains(JComponent c, int x, int y) { return true; }
41

42     public Rectangle getTabBounds(JTabbedPane pane, int index)
43     {
44        return new Rectangle(0, 0, 0, 0);
45     }
46
47     public int getTabRunCount(JTabbedPane pane)
48     {
49        return 0;
50     }
51
52     public int tabForCoordinate(JTabbedPane pane, int x, int y)
53     {
54        return 0;
55     }
56
57     public void installUI(JComponent c)
58     {
59        JTabbedPane temp = (JTabbedPane)c;
60        c.setLayout(new MinimalLayout());
61
62        int size = ClientState.getClientState().getInteger("notabs.border", ClientDefaults.notabs_border);
63
64        c.setBorder(BorderFactory.createEmptyBorder(size, size, size, size));
65        temp.addChangeListener(this);
66     }
67
68     public void stateChanged(ChangeEvent ev)
69     {
70        JTabbedPane temp = (JTabbedPane)ev.getSource();
71  
72        if (temp.getSelectedComponent() != null)
73        {
74           ((CardLayout)temp.getLayout()).show(temp, temp.getSelectedComponent().hashCode() + "");
75        }
76        temp.revalidate();
77        temp.repaint();
78     }
79 }
80
81
82
Popular Tags