Package de.sciss.gui

Source Code of de.sciss.gui.LooseFocusAction

package de.sciss.gui;

import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;

import javax.swing.AbstractAction;
import javax.swing.JComponent;
import javax.swing.JRootPane;
import javax.swing.KeyStroke;
import javax.swing.SwingUtilities;

/**
*   @version  0.1, 03-Oct-07
@author    Hanns Holger Rutz
*/
public class LooseFocusAction
extends AbstractAction
{
  private final JComponent c;
 
  public LooseFocusAction( JComponent c )
  {
    super();
    this.c  = c;
    c.getInputMap().put( KeyStroke.getKeyStroke( KeyEvent.VK_ESCAPE, 0 ), "lost" );
    c.getActionMap().put( "lost", this );
  }

  public void actionPerformed( ActionEvent e )
  {
    final JRootPane rp = SwingUtilities.getRootPane( c );
    if( rp != null ) rp.requestFocus();
  }
}
TOP

Related Classes of de.sciss.gui.LooseFocusAction

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.