01: /*
02: * OptionPane.java - Option pane interface
03: * Copyright (C) 1999 Slava Pestov
04: *
05: * This program is free software; you can redistribute it and/or
06: * modify it under the terms of the GNU General Public License
07: * as published by the Free Software Foundation; either version 2
08: * of the License, or any later version.
09: *
10: * This program is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13: * GNU General Public License for more details.
14: *
15: * You should have received a copy of the GNU General Public License
16: * along with this program; if not, write to the Free Software
17: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18: */
19:
20: package org.gjt.sp.jedit;
21:
22: import java.awt.Component;
23:
24: /**
25: * The interface all option panes must implement.<p>
26: *
27: * See {@link EditPlugin} for information on how jEdit obtains and constructs
28: * option pane instances.<p>
29: *
30: * Note that in most cases it is much easier to extend
31: * {@link AbstractOptionPane} instead.
32: *
33: * @author Slava Pestov
34: * @version $Id: OptionPane.java 4669 2003-05-01 02:21:27Z spestov $
35: */
36: public interface OptionPane {
37: /**
38: * Returns the internal name of this option pane. The option pane's label
39: * is set to the value of the property named
40: * <code>options.<i>name</i>.label</code>.
41: * @see jEdit#getProperty(String)
42: */
43: String getName();
44:
45: /**
46: * Returns the component that should be displayed for this option pane.
47: */
48: Component getComponent();
49:
50: /**
51: * This method is called every time the option pane is displayed.
52: */
53: void init();
54:
55: /**
56: * Called when the options dialog's "ok" button is clicked.
57: * This should save any properties being edited in this option
58: * pane.
59: */
60: void save();
61: }
|