KickJava   Java API By Example, From Geeks To Geeks.

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


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.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 JavaDoc 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 JavaDoc arg0) {
29
30         JFrame JavaDoc 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 JavaDoc name = editTagDialog.getName();
39             Color JavaDoc color = editTagDialog.getColor();
40             String JavaDoc 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