1 package org.columba.chat.ui.action; 19 20 import java.awt.event.ActionEvent ; 21 22 import javax.swing.JOptionPane ; 23 24 import org.columba.api.gui.frame.IFrameMediator; 25 import org.columba.chat.command.ChatCommandReference; 26 import org.columba.chat.command.RemoveContactCommand; 27 import org.columba.chat.model.api.IBuddyStatus; 28 import org.columba.chat.ui.frame.api.IChatFrameMediator; 29 import org.columba.core.command.CommandProcessor; 30 import org.columba.core.gui.action.AbstractColumbaAction; 31 import org.columba.core.gui.frame.FrameManager; 32 33 37 public class RemoveContactAction extends AbstractConnectionAwareAction { 38 39 43 public RemoveContactAction(IFrameMediator mediator) { 44 super(mediator, "Remove Contact"); 45 46 putValue(AbstractColumbaAction.TOOLBAR_NAME, "Remove Contact"); 47 48 } 49 50 53 public void actionPerformed(ActionEvent arg0) { 54 String jabberId = ""; 55 56 IBuddyStatus buddy = (IBuddyStatus) ((IChatFrameMediator) frameMediator) 58 .getRoasterTree().getSelected(); 59 60 if (buddy != null) { 61 jabberId = buddy.getJabberId(); 63 } else { 64 jabberId = JOptionPane.showInputDialog(FrameManager.getInstance() 66 .getActiveFrame(), "Enter jabber ID"); 67 } 68 69 int option = JOptionPane.showConfirmDialog(FrameManager.getInstance() 70 .getActiveFrame(), 71 "Do you really want to remove " + jabberId 72 + " from your roster?", "Remove Contact", 73 JOptionPane.YES_NO_OPTION); 74 75 if (option == JOptionPane.YES_OPTION) { 76 77 CommandProcessor.getInstance().addOp( 78 new RemoveContactCommand( 79 (IChatFrameMediator) getFrameMediator(), 80 new ChatCommandReference(jabberId))); 81 } 82 83 } 84 } | Popular Tags |