1 17 package org.columba.core.gui.globalactions; 18 19 import java.awt.event.ActionEvent ; 20 import java.awt.event.KeyEvent ; 21 22 import javax.swing.KeyStroke ; 23 24 import org.columba.api.gui.frame.IFrameMediator; 25 import org.columba.core.command.TaskManager; 26 import org.columba.core.command.TaskManagerEvent; 27 import org.columba.core.command.TaskManagerListener; 28 import org.columba.core.gui.action.AbstractColumbaAction; 29 import org.columba.core.resourceloader.GlobalResourceLoader; 30 import org.columba.core.resourceloader.IconKeys; 31 import org.columba.core.resourceloader.ImageLoader; 32 33 public class CancelAction extends AbstractColumbaAction implements 34 TaskManagerListener { 35 36 public CancelAction(IFrameMediator controller) { 37 super(controller, GlobalResourceLoader.getString(null, null, 38 "menu_file_cancel")); 39 40 putValue(SMALL_ICON, ImageLoader.getSmallIcon(IconKeys.CANCEL)); 42 43 putValue(LARGE_ICON, ImageLoader.getIcon(IconKeys.CANCEL)); 45 46 putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_CANCEL, 0)); 47 48 51 setEnabled(TaskManager.getInstance().count() > 0); 52 TaskManager.getInstance().addTaskManagerListener(this); 53 } 54 55 60 public void actionPerformed(ActionEvent evt) { 61 getFrameMediator().fireTaskStatusChanged(); 62 } 63 64 public void workerAdded(TaskManagerEvent e) { 65 javax.swing.SwingUtilities.invokeLater(new Runnable () { 66 public void run() { 67 setEnabled(TaskManager.getInstance().count() > 0); 68 } 69 }); 70 71 } 72 73 public void workerRemoved(TaskManagerEvent e) { 74 setEnabled(TaskManager.getInstance().count() > 0); 75 } 76 } 77 | Popular Tags |