All events below overlay layer are now blocked.

This commit is contained in:
Doublestrike
2012-03-06 08:17:25 +00:00
parent 0c0aa2816d
commit b49c886ae4

View File

@@ -19,8 +19,12 @@ package forge.gui.toolbox;
import java.awt.Color; import java.awt.Color;
import java.awt.Graphics; import java.awt.Graphics;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.BorderFactory; import javax.swing.BorderFactory;
import javax.swing.JButton; import javax.swing.JButton;
@@ -44,6 +48,7 @@ public class FOverlay extends JPanel {
super(); super();
this.setOpaque(false); this.setOpaque(false);
this.setVisible(false); this.setVisible(false);
this.setFocusTraversalKeysEnabled(false);
this.btnClose = new JButton("X"); this.btnClose = new JButton("X");
this.btnClose.setForeground(Color.white); this.btnClose.setForeground(Color.white);
this.btnClose.setBorder(BorderFactory.createLineBorder(Color.white)); this.btnClose.setBorder(BorderFactory.createLineBorder(Color.white));
@@ -57,6 +62,17 @@ public class FOverlay extends JPanel {
FOverlay.this.hideOverlay(); FOverlay.this.hideOverlay();
} }
}); });
// Block all input events below the overlay
this.addMouseListener(new MouseAdapter() { });
this.addMouseMotionListener(new MouseMotionAdapter() { });
this.addKeyListener(new KeyAdapter() { });
this.addComponentListener(new ComponentAdapter() {
@Override
public void componentShown(final ComponentEvent evt) {
requestFocusInWindow();
}
});
} }
/** /**