1 package org.columba.mail.gui.tree.action; 17 18 import java.awt.event.ActionEvent ; 19 import java.awt.event.KeyEvent ; 20 21 import javax.swing.KeyStroke ; 22 23 import org.columba.api.gui.frame.IFrameMediator; 24 import org.columba.mail.command.MailFolderCommandReference; 25 import org.columba.mail.folder.IMailFolder; 26 import org.columba.mail.gui.frame.MailFrameMediator; 27 import org.columba.mail.gui.frame.TreeViewOwner; 28 import org.columba.mail.gui.tree.FolderTreeModel; 29 import org.columba.mail.util.MailResourceLoader; 30 31 38 public class MoveUpAction extends AbstractMoveFolderAction { 39 40 44 public MoveUpAction(IFrameMediator frameMediator) { 45 super(frameMediator, MailResourceLoader.getString("menu", "mainframe", 46 "menu_folder_moveup")); 47 setEnabled(false); 48 49 putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_UP, 51 ActionEvent.ALT_MASK)); 52 } 53 54 57 public void actionPerformed(ActionEvent arg0) { 58 MailFolderCommandReference r = (MailFolderCommandReference) ((MailFrameMediator) frameMediator) 59 .getTreeSelection(); 60 61 IMailFolder folder = (IMailFolder) r.getSourceFolder(); 62 63 int newIndex = folder.getParent().getIndex(folder); 64 newIndex = newIndex - 1; 65 ((IMailFolder) folder.getParent()).insert(folder, newIndex); 66 67 FolderTreeModel.getInstance().nodeStructureChanged(folder.getParent()); 68 69 ((TreeViewOwner) frameMediator).getTreeController().setSelected(folder); 71 } 72 73 74 protected boolean isActionEnabledByIndex(int folderIndex) { 75 return (folderIndex > 0); 76 } 77 } 78 | Popular Tags |