1 package org.columba.core.gui.tagging; 2 3 import java.awt.Color ; 4 import java.awt.event.ActionEvent ; 5 6 import javax.swing.JFrame ; 7 import javax.swing.JOptionPane ; 8 9 import org.columba.api.exception.StoreException; 10 import org.columba.api.gui.frame.IFrameMediator; 11 import org.columba.core.gui.action.AbstractColumbaAction; 12 import org.columba.core.logging.Logging; 13 import org.columba.core.resourceloader.GlobalResourceLoader; 14 import org.columba.core.tagging.TagManager; 15 import org.columba.core.tagging.api.ITag; 16 17 public class EditTagAction extends AbstractColumbaAction { 18 19 final static String EDIT_TAG = "Edit Tag..."; 20 21 private TagList list; 22 23 public EditTagAction(IFrameMediator frameMediator, TagList list) { 24 super(frameMediator, EDIT_TAG); 25 this.list = list; 26 } 27 28 public void actionPerformed(ActionEvent arg0) { 29 30 JFrame frame = getFrameMediator().getContainer().getFrame(); 31 32 ITag tag = list.getSelectedTag(); 33 34 EditTagDialog editTagDialog = new EditTagDialog(frame, tag.getName(), 35 tag.getColor(), tag.getDescription()); 36 if (editTagDialog.getSuccess()) { 37 38 String name = editTagDialog.getName(); 39 Color color = editTagDialog.getColor(); 40 String descr = editTagDialog.getDescription(); 41 42 if (name != null && name.length() > 0) 43 tag.setName(name); 44 if (color != null) 45 tag.setColor(color); 46 if ( descr != null) 47 tag.setDescription(descr); 48 49 try { 50 TagManager.getInstance().replaceTag(tag); 51 } catch (StoreException e) { 52 if (Logging.DEBUG) 53 e.printStackTrace(); 54 JOptionPane.showMessageDialog(frame, GlobalResourceLoader.getString( 55 "org.columba.core.i18n.dialog", "tagging", "EditTagAction.error_edit")); 56 } 57 58 } 59 } 60 61 } 62 | Popular Tags |