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.tagging.TagManager; 14 import org.columba.core.tagging.api.ITag; 15 16 public class AddTagAction extends AbstractColumbaAction { 17 18 final static String ADD_TAG = "Add Tag..."; 19 20 public AddTagAction(IFrameMediator frameMediator) { 21 super(frameMediator, ADD_TAG); 22 } 23 24 public void actionPerformed(ActionEvent arg0) { 25 JFrame frame = getFrameMediator().getContainer().getFrame(); 26 EditTagDialog dialog = new EditTagDialog(frame); 27 28 if (dialog.getSuccess()) { 29 String tagName = dialog.getName(); 30 Color color = dialog.getColor(); 31 32 if (tagName != null && tagName.length() > 0) { 33 Color c = dialog.getColor(); 34 String descr = dialog.getDescription(); 35 try { 36 ITag tag = TagManager.getInstance().addTag(tagName); 37 if ( color != null) tag.setColor(color); 38 if ( descr != null ) tag.setDescription(descr); 39 40 if (tag == null) 41 JOptionPane.showMessageDialog(frame, "Error adding Tag"); 42 43 } catch (StoreException e) { 44 if (Logging.DEBUG) 45 e.printStackTrace(); 46 JOptionPane.showMessageDialog(frame, "Error adding Tag"); 47 } 48 } 49 50 } 51 52 } 53 54 } 55 | Popular Tags |