KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > mail > gui > composer > html > action > AbstractComposerAction


1 package org.columba.mail.gui.composer.html.action;
2
3 import java.awt.event.ActionEvent JavaDoc;
4
5 import org.columba.api.gui.frame.IFrameMediator;
6 import org.columba.core.gui.action.AbstractSelectableAction;
7 import org.columba.mail.gui.composer.ComposerController;
8 import org.columba.mail.gui.composer.ComposerModelChangedEvent;
9 import org.columba.mail.gui.composer.IComposerModelChangedListener;
10 import org.columba.mail.gui.composer.html.HtmlEditorController2;
11 import org.frapuccino.htmleditor.api.IFormatChangedListener;
12 import org.frapuccino.htmleditor.event.FormatChangedEvent;
13
14 public abstract class AbstractComposerAction extends AbstractSelectableAction
15         implements IFormatChangedListener, IComposerModelChangedListener {
16
17     public AbstractComposerAction(IFrameMediator frameMediator, String JavaDoc name) {
18         super(frameMediator, name);
19
20         ComposerController ctrl = (ComposerController) getFrameMediator();
21
22         // register for text cursor/caret and formatting changes
23
// to select/deselect action
24
HtmlEditorController2 c = (HtmlEditorController2) ctrl
25                 .getHtmlEditorController();
26         c.addFormatChangedListener(this);
27
28         // register for model changes to enable/disable when
29
// user switches between html or text plain mode
30
ctrl.getModel().addModelChangedListener(this);
31
32     }
33
34     public void modelChanged(ComposerModelChangedEvent event) {
35     }
36
37     public void htmlModeChanged(ComposerModelChangedEvent event) {
38         setEnabled(event.isHtmlEnabled());
39     }
40
41     public abstract void formatChanged(FormatChangedEvent event);
42
43     public abstract void actionPerformed(ActionEvent JavaDoc e);
44 }
45
Popular Tags