01: /*
02: * Project: AMODA - Abstract Modeled Application
03: * Class: de.gulden.framework.amoda.environment.gui.behaviour.CommandPrintView
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 CommandPrintView.
26: *
27: * @author Jens Gulden
28: * @version snapshot-beautyj-1.1
29: */
30: public class CommandPrintView extends GenericCommand {
31:
32: // ------------------------------------------------------------------------
33: // --- method ---
34: // ------------------------------------------------------------------------
35:
36: public void perform() {
37: de.gulden.framework.amoda.model.document.DocumentView view = getApplication()
38: .getWorkspace().getActiveView();
39: if (view != null) {
40: javax.swing.JComponent editorComponent = ((de.gulden.framework.amoda.environment.gui.GUIWorkspace) getApplication()
41: .getWorkspace()).getGUIEditor(view);
42: java.awt.Component component = view
43: .getGUIPrintView(editorComponent);
44: javax.swing.JFrame frame = ((de.gulden.framework.amoda.environment.gui.GUIApplicationEnvironment) getApplication()
45: .getEnvironment()).getFrame();
46: java.awt.PrintJob pj = frame.getToolkit().getPrintJob(
47: frame, view.getDocument().getTitle(),
48: new java.util.Properties());
49: if (pj != null) {
50: java.awt.Graphics g = pj.getGraphics();
51: component.print(g);
52: g.dispose();
53: pj.end();
54: }
55: } else {
56: getApplication().message("Please select a view to print.");
57: }
58: }
59:
60: } // end CommandPrintView
|