1 package org.columba.core.gui.globalactions; 17 18 import java.awt.KeyboardFocusManager ; 19 import java.awt.Toolkit ; 20 import java.awt.event.ActionEvent ; 21 import java.awt.event.KeyEvent ; 22 import java.beans.PropertyChangeEvent ; 23 import java.beans.PropertyChangeListener ; 24 25 import javax.swing.JComponent ; 26 import javax.swing.KeyStroke ; 27 28 import org.columba.api.gui.frame.IFrameMediator; 29 import org.columba.core.gui.action.AbstractColumbaAction; 30 import org.columba.core.resourceloader.GlobalResourceLoader; 31 32 public class SelectAllAction extends AbstractColumbaAction implements 33 PropertyChangeListener { 34 35 private JComponent focusOwner = null; 36 37 public SelectAllAction(IFrameMediator controller) { 38 super(controller, GlobalResourceLoader.getString(null, null, 39 "menu_edit_selectall")); 40 41 putValue(SHORT_DESCRIPTION, GlobalResourceLoader.getString(null, null, 43 "menu_edit_selectall_tooltip")); 44 45 putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_A, 47 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask())); 48 49 setEnabled(true); 50 51 KeyboardFocusManager manager = KeyboardFocusManager 52 .getCurrentKeyboardFocusManager(); 53 54 manager.addPropertyChangeListener("permanentFocusOwner", this); 55 56 } 57 58 public void propertyChange(PropertyChangeEvent e) { 59 Object o = e.getNewValue(); 60 if (o instanceof JComponent ) 61 focusOwner = (JComponent ) o; 62 else 63 focusOwner = null; 64 65 } 66 67 70 public void actionPerformed(ActionEvent evt) { 71 if (focusOwner == null) 72 return; 73 } 74 } 75 | Popular Tags |