KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > core > gui > tagging > AddTagAction


1 package org.columba.core.gui.tagging;
2
3 import java.awt.Color JavaDoc;
4 import java.awt.event.ActionEvent JavaDoc;
5
6 import javax.swing.JFrame JavaDoc;
7 import javax.swing.JOptionPane JavaDoc;
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 JavaDoc ADD_TAG = "Add Tag...";
19
20     public AddTagAction(IFrameMediator frameMediator) {
21         super(frameMediator, ADD_TAG);
22     }
23
24     public void actionPerformed(ActionEvent JavaDoc arg0) {
25         JFrame JavaDoc frame = getFrameMediator().getContainer().getFrame();
26         EditTagDialog dialog = new EditTagDialog(frame);
27
28         if (dialog.getSuccess()) {
29             String JavaDoc tagName = dialog.getName();
30             Color JavaDoc color = dialog.getColor();
31
32             if (tagName != null && tagName.length() > 0) {
33                 Color JavaDoc c = dialog.getColor();
34                 String JavaDoc 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