01: /*
02: * Project: AMODA - Abstract Modeled Application
03: * Class: de.gulden.framework.amoda.environment.gui.behaviour.CommandCloseAllWindows
04: * Version: snapshot-beautyj-1.1
05: *
06: * Date: 2004-09-29
07: *
08: * This is a snapshot version of the AMODA 0.2 development branch,
09: * it is not released as a seperate version.
10: * For AMODA, see http://amoda.berlios.de/.
11: *
12: * This is licensed under the GNU Lesser General Public License (LGPL)
13: * and comes with NO WARRANTY.
14: *
15: * Author: Jens Gulden
16: * Email: amoda@jensgulden.de
17: */
18:
19: package de.gulden.framework.amoda.environment.gui.behaviour;
20:
21: import de.gulden.framework.amoda.generic.behaviour.GenericCommand;
22: import java.util.*;
23:
24: /**
25: * Class CommandCloseAllWindows.
26: *
27: * @author Jens Gulden
28: * @version snapshot-beautyj-1.1
29: */
30: public class CommandCloseAllWindows extends GenericCommand {
31:
32: // ------------------------------------------------------------------------
33: // --- method ---
34: // ------------------------------------------------------------------------
35:
36: public void perform() {
37: if (getApplication().confirm("Really close all windows?")) {
38: javax.swing.JDesktopPane desktop = ((de.gulden.framework.amoda.environment.gui.component.GUIFrame) ((de.gulden.framework.amoda.environment.gui.GUIApplicationEnvironment) getApplication()
39: .getEnvironment()).getFrame()).getDesktopPane();
40: javax.swing.JInternalFrame[] frames = desktop
41: .getAllFrames();
42: for (int i = 0; i < frames.length; i++) {
43: try {
44: frames[i].setClosed(true);
45: } catch (java.beans.PropertyVetoException pve) {
46: //nop, might have been caused by user-cancel
47: }
48: }
49: }
50: }
51:
52: } // end CommandCloseAllWindows
|