1 package org.columba.mail.gui.composer.action; 18 19 import java.awt.event.ActionEvent ; 20 import java.awt.event.ItemEvent ; 21 import java.awt.event.ItemListener ; 22 import java.util.logging.Logger ; 23 24 import org.columba.core.gui.action.AbstractSelectableAction; 25 import org.columba.core.resourceloader.ImageLoader; 26 import org.columba.mail.config.AccountItem; 27 import org.columba.mail.config.SecurityItem; 28 import org.columba.mail.gui.composer.AccountView; 29 import org.columba.mail.gui.composer.ComposerController; 30 import org.columba.mail.util.MailResourceLoader; 31 32 38 public class SignMessageAction extends AbstractSelectableAction implements 39 ItemListener { 40 41 42 private static final Logger LOG = Logger 43 .getLogger("org.columba.mail.gui.composer.action"); 45 private ComposerController composerController; 46 47 public SignMessageAction(ComposerController composerController) { 48 super(composerController, MailResourceLoader.getString("menu", 49 "composer", "menu_message_sign")); 50 this.composerController = composerController; 51 52 putValue(SHORT_DESCRIPTION, MailResourceLoader.getString("menu", 54 "composer", "menu_message_sign").replaceAll("&", "")); 55 56 59 composerController.getAccountController().getView().addItemListener( 60 this); 61 62 SecurityItem item = this.composerController.getModel().getAccountItem() 63 .getPGPItem(); 64 setState(item.getBooleanWithDefault("always_sign", false)); 65 LOG.info("always_sign=" + item.get("always_sign")); 67 composerController.getModel().setSignMessage(getState()); 68 69 } 71 72 77 public void actionPerformed(ActionEvent evt) { 78 LOG.info("start signing..."); 79 80 composerController.getModel().setSignMessage(getState()); 83 } 84 85 public void itemStateChanged(ItemEvent e) { 86 if (e.getStateChange() == ItemEvent.SELECTED) { 87 AccountItem item = (AccountItem) ((AccountView)e.getSource()).getSelectedItem(); 88 SecurityItem pgp = item.getPGPItem(); 89 setState(pgp.getBooleanWithDefault("always_sign", false)); 90 } 91 } 92 93 } 94 | Popular Tags |