01: //The contents of this file are subject to the Mozilla Public License Version 1.1
02: //(the "License"); you may not use this file except in compliance with the
03: //License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
04: //
05: //Software distributed under the License is distributed on an "AS IS" basis,
06: //WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
07: //for the specific language governing rights and
08: //limitations under the License.
09: //
10: //The Original Code is "The Columba Project"
11: //
12: //The Initial Developers of the Original Code are Frederik Dietz and Timo Stich.
13: //Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
14: //
15: //All Rights Reserved.
16: package org.columba.core.gui.plugin;
17:
18: import javax.swing.JPanel;
19:
20: import org.columba.api.plugin.IExtensionInterface;
21:
22: /**
23: *
24: *
25: * <class>AbstractConfigPlugin</class> is the abstract class for the
26: * org.columba.core.config plugin extension point
27: *
28: * @author fdietz
29: *
30: */
31: public abstract class AbstractConfigPlugin implements
32: IExtensionInterface {
33: /**
34: * default constructor
35: */
36: public AbstractConfigPlugin() {
37: }
38:
39: /** ******************* abstract methods ******************************** */
40: /**
41: *
42: * This method is called when the dialog is viewed the first time.
43: * updateComponents(true) - initialse the gui elements with the
44: * configuration data
45: *
46: * Its also called when pressing the OK button updateComponents(false) -
47: * update the configuration data in using the gui elements data
48: *
49: *
50: *
51: * @param b
52: * if true, model -> view, otherwise view -> model
53: *
54: */
55: public abstract void updateComponents(boolean b);
56:
57: /**
58: *
59: * Create your configuration <class>JPanel</class> here
60: *
61: * This panel will be automatically plugged in the configuration dialog.
62: *
63: *
64: * @return <class>JPanel</class>
65: */
66: public abstract JPanel createPanel();
67:
68: /** ****************** internal stuff ********************************* */
69: }
|