1 /*
2 * EL4J, the Extension Library for the J2EE, adds incremental enhancements to
3 * the spring framework, http://el4j.sf.net
4 * Copyright (C) 2008 by ELCA Informatique SA, Av. de la Harpe 22-24,
5 * 1000 Lausanne, Switzerland, http://www.elca.ch
6 *
7 * EL4J is published under the GNU Lesser General Public License (LGPL)
8 * Version 2.1. See http://www.gnu.org/licenses/
9 *
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 Lesser General Public License for more details.
14 *
15 * For alternative licensing, please contact info@elca.ch
16 */
17 package ch.elca.el4j.services.gui.swing.frames;
18
19 import javax.swing.JComponent;
20
21 /**
22 * This interface represents a generic frame that contains a component.
23 *
24 * @svnLink $Revision: 3873 $;$Date: 2009-08-04 13:59:45 +0200 (Di, 04. Aug 2009) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/modules/swing/src/main/java/ch/elca/el4j/services/gui/swing/frames/ApplicationFrame.java $
25 *
26 * @author Stefan Wismer (SWI)
27 */
28 public interface ApplicationFrame {
29 /**
30 * @param component the content of this frame
31 */
32 public void setContent(JComponent component);
33
34 /**
35 * @return the content of this frame
36 */
37 public JComponent getContent();
38
39 /**
40 * @return the actual frame
41 */
42 public Object getFrame();
43
44 /**
45 * @param frame the actual frame
46 */
47 public void setFrame(Object frame);
48
49 /**
50 * @param name the name of the frame. This must be unique.
51 */
52 public void setName(String name);
53
54 /**
55 * @param title the title of the frame
56 */
57 public void setTitle(String title);
58
59 /**
60 * @param minimizable is frame minimizable
61 */
62 public void setMinimizable(boolean minimizable);
63
64 /**
65 * @param maximizable is frame maximizable
66 */
67 public void setMaximizable(boolean maximizable);
68
69 /**
70 * @param closable is frame closable
71 */
72 public void setClosable(boolean closable);
73
74 /**
75 * @param minimized <code>true</code> if frame should get minimized
76 */
77 public void setMinimized(boolean minimized);
78
79 /**
80 * @param maximized <code>true</code> if frame should get maximized
81 */
82 public void setMaximized(boolean maximized);
83
84 /**
85 * Show this frame (if supported).
86 */
87 public void show();
88
89 /**
90 * @param selected is frame selected?
91 */
92 public void setSelected(boolean selected);
93
94 /**
95 * Close this frame.
96 */
97 public void close();
98 }