annotate agent/src/share/classes/com/sun/java/swing/ui/CommonToolBar.java @ 3237:399aa66d375e

Fixed a bug in which the valueEquals method was misused. The method does only check the equality of the node data and not full GVN equality by taking inputs and successors into account.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Wed, 27 Jul 2011 14:16:38 -0700
parents c18cbe5936b8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
258
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
1 /*
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 258
diff changeset
2 * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
258
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
4 *
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
5 * This code is free software; you can redistribute it and/or modify it
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
6 * under the terms of the GNU General Public License version 2 only, as
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
7 * published by the Free Software Foundation.
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
8 *
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
9 * This code is distributed in the hope that it will be useful, but WITHOUT
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
12 * version 2 for more details (a copy is included in the LICENSE file that
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
13 * accompanied this code).
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
14 *
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License version
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
16 * 2 along with this work; if not, write to the Free Software Foundation,
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
18 *
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 258
diff changeset
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 258
diff changeset
20 * or visit www.oracle.com if you need additional information or have any
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 258
diff changeset
21 * questions.
258
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
22 *
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
23 */
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
24
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
25
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
26 package com.sun.java.swing.ui;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
27
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
28 import com.sun.java.swing.action.ActionManager;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
29 import com.sun.java.swing.action.StateChangeAction;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
30 import java.awt.Dimension;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
31 import java.awt.Insets;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
32 import javax.swing.*;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
33
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
34 // Referenced classes of package com.sun.java.swing.ui:
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
35 // ToggleActionPropertyChangeListener, StatusBar, CommonUI
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
36
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
37 public abstract class CommonToolBar extends JToolBar
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
38 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
39
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
40 protected CommonToolBar(ActionManager manager)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
41 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
42 this(manager, StatusBar.getInstance());
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
43 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
44
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
45 protected CommonToolBar(ActionManager manager, StatusBar status)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
46 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
47 this.manager = manager;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
48 statusBar = status;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
49 buttonSize = new Dimension(CommonUI.buttconPrefSize);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
50 buttonInsets = new Insets(0, 0, 0, 0);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
51 addComponents();
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
52 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
53
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
54 protected abstract void addComponents();
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
55
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
56 protected void addButton(Action action)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
57 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
58 javax.swing.JButton button = add(action);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
59 configureButton(button, action);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
60 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
61
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
62 protected void addToggleButton(StateChangeAction a)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
63 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
64 addToggleButton(a, null);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
65 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
66
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
67 protected void addToggleButton(StateChangeAction a, ButtonGroup group)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
68 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
69 JToggleButton button = new JToggleButton(a);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
70 button.addItemListener(a);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
71 button.setSelected(a.isSelected());
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
72 if(group != null)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
73 group.add(button);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
74 add(button);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
75 configureToggleButton(button, a);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
76 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
77
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
78 protected void configureToggleButton(JToggleButton button, Action action)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
79 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
80 configureButton(button, action);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
81 action.addPropertyChangeListener(new ToggleActionPropertyChangeListener(button));
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
82 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
83
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
84 protected void configureButton(AbstractButton button, Action action)
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
85 {
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
86 button.setToolTipText((String)action.getValue("Name"));
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
87 button.setText("");
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
88 button.addMouseListener(statusBar);
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
89 }
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
90
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
91 protected ActionManager manager;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
92 private Dimension buttonSize;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
93 private Insets buttonInsets;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
94 private StatusBar statusBar;
54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar
swamyv
parents:
diff changeset
95 }