1 package org.columba.mail.gui.table.action; 17 18 import java.awt.Toolkit ; 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.api.selection.ISelectionListener; 26 import org.columba.api.selection.SelectionChangedEvent; 27 import org.columba.core.command.CommandProcessor; 28 import org.columba.core.gui.action.AbstractColumbaAction; 29 import org.columba.mail.command.IMailFolderCommandReference; 30 import org.columba.mail.gui.composer.command.RedirectCommand; 31 import org.columba.mail.gui.frame.MailFrameMediator; 32 import org.columba.mail.gui.table.selection.TableSelectionChangedEvent; 33 import org.columba.mail.util.MailResourceLoader; 34 35 36 43 public class RedirectAction extends AbstractColumbaAction 44 implements ISelectionListener { 45 public RedirectAction(IFrameMediator frameMediator) { 46 47 super(frameMediator, 49 MailResourceLoader.getString("menu", "mainframe", 50 "menu_message_redirect")); 51 52 putValue(SHORT_DESCRIPTION, 54 MailResourceLoader.getString("menu", "mainframe", 55 "menu_message_redirect_tooltip").replaceAll("&", "")); 56 57 putValue(TOOLBAR_NAME, 59 MailResourceLoader.getString("menu", "mainframe", 60 "menu_message_redirect_toolbar")); 61 62 67 68 putValue(ACCELERATOR_KEY, 70 KeyStroke.getKeyStroke(KeyEvent.VK_E, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask())); 71 72 setEnabled(false); 73 ((MailFrameMediator) frameMediator).registerTableSelectionListener(this); 74 } 75 76 79 public void actionPerformed(ActionEvent evt) { 80 IMailFolderCommandReference r = ((MailFrameMediator) getFrameMediator()).getTableSelection(); 81 CommandProcessor.getInstance().addOp(new RedirectCommand(r)); 82 } 83 84 87 public void selectionChanged(SelectionChangedEvent e) { 88 TableSelectionChangedEvent tableEvent = (TableSelectionChangedEvent) e; 89 setEnabled(tableEvent.getUids().length != 0); 90 } 91 } 92 | Popular Tags |