|
@@ -68,6 +68,8 @@ public class NodeLabel extends JLabel implements SelectionListener,
|
68
|
68
|
private Color activeForeground;
|
69
|
69
|
/** notification set? */
|
70
|
70
|
private boolean notification;
|
|
71
|
+ /** Selected. */
|
|
72
|
+ private boolean selected;
|
71
|
73
|
|
72
|
74
|
/**
|
73
|
75
|
* Instantiates a new node label.
|
|
@@ -81,6 +83,7 @@ public class NodeLabel extends JLabel implements SelectionListener,
|
81
|
83
|
this.manager = manager;
|
82
|
84
|
this.window = window;
|
83
|
85
|
config = IdentityManager.getGlobalConfig();
|
|
86
|
+ selected = false;
|
84
|
87
|
|
85
|
88
|
setColours();
|
86
|
89
|
|
|
@@ -128,11 +131,14 @@ public class NodeLabel extends JLabel implements SelectionListener,
|
128
|
131
|
}
|
129
|
132
|
setBackground(activeBackground);
|
130
|
133
|
setForeground(activeForeground);
|
|
134
|
+ selected = true;
|
131
|
135
|
} else if (!notification) {
|
132
|
136
|
setFont(getFont().deriveFont(Font.PLAIN));
|
133
|
137
|
setBackground(manager.getTree().getBackground());
|
134
|
138
|
setForeground(manager.getTree().getForeground());
|
|
139
|
+ selected = false;
|
135
|
140
|
}
|
|
141
|
+ manager.getTree().repaint();
|
136
|
142
|
}
|
137
|
143
|
|
138
|
144
|
/** {@inheritDoc} */
|
|
@@ -149,7 +155,9 @@ public class NodeLabel extends JLabel implements SelectionListener,
|
149
|
155
|
@Override
|
150
|
156
|
public void notificationCleared(final Window window) {
|
151
|
157
|
if (equals(window)) {
|
152
|
|
- setForeground(manager.getTree().getForeground());
|
|
158
|
+ if (!selected) {
|
|
159
|
+ setForeground(manager.getTree().getForeground());
|
|
160
|
+ }
|
153
|
161
|
notification = false;
|
154
|
162
|
manager.getTree().repaint();
|
155
|
163
|
}
|
|
@@ -184,12 +192,14 @@ public class NodeLabel extends JLabel implements SelectionListener,
|
184
|
192
|
* @param rollover rollover state
|
185
|
193
|
*/
|
186
|
194
|
public void setRollover(final boolean rollover) {
|
187
|
|
- if (rollover) {
|
188
|
|
- setBackground(rolloverColour);
|
189
|
|
- } else {
|
190
|
|
- setBackground(manager.getTree().getBackground());
|
|
195
|
+ if (!selected) {
|
|
196
|
+ if (rollover) {
|
|
197
|
+ setBackground(rolloverColour);
|
|
198
|
+ } else {
|
|
199
|
+ setBackground(manager.getTree().getBackground());
|
|
200
|
+ }
|
|
201
|
+ manager.getTree().repaint();
|
191
|
202
|
}
|
192
|
|
- manager.getTree().repaint();
|
193
|
203
|
}
|
194
|
204
|
|
195
|
205
|
/** {@inheritDoc} */
|