01: /*
02: * Copyright (C) 2005 - 2008 JasperSoft Corporation. All rights reserved.
03: * http://www.jaspersoft.com.
04: *
05: * Unless you have purchased a commercial license agreement from JasperSoft,
06: * the following license terms apply:
07: *
08: * This program is free software; you can redistribute it and/or modify
09: * it under the terms of the GNU General Public License version 2 as published by
10: * the Free Software Foundation.
11: *
12: * This program is distributed WITHOUT ANY WARRANTY; and without the
13: * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14: * See the GNU General Public License for more details.
15: *
16: * You should have received a copy of the GNU General Public License
17: * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
18: * or write to:
19: *
20: * Free Software Foundation, Inc.,
21: * 59 Temple Place - Suite 330,
22: * Boston, MA USA 02111-1307
23: *
24: *
25: *
26: *
27: * FormatCommandElementMaximizeH.java
28: *
29: * Created on 17 mei 2005, 21:00
30: *
31: */
32:
33: package it.businesslogic.ireport.gui.command;
34:
35: import it.businesslogic.ireport.OperationType;
36: import it.businesslogic.ireport.ReportElement;
37: import it.businesslogic.ireport.TransformationType;
38: import java.awt.Point;
39:
40: /**
41: *
42: */
43: public class FormatCommandElementMaximizeH extends FormatCommand {
44: // Preparation is called before the while loop
45: {
46: operationType = OperationType.ELEMENT_MAXIMIZE_H;
47: }
48:
49: void executeDeeper() {
50:
51: resetEnumeration();
52:
53: registerElements(); //register all elements once with no modification
54: // registerElements does not call modify().
55: // it simply register the elements to the undoOp stack.
56:
57: sleepUndo = true;
58:
59: getCommand(OperationType.ALIGN_TO_LEFT_MARGIN).execute();
60: int insideWidth = jrf.getReport().getWidth()
61: - jrf.getReport().getRightMargin()
62: - jrf.getReport().getLeftMargin();
63:
64: // this is the class processElements and here without the undo registration
65: resetEnumeration();
66: while (e.hasMoreElements()) {
67: re = (ReportElement) e.nextElement();
68:
69: if (re.getCell() != null) {
70: re.setWidth(re.getCell().getWidth());
71: //re.trasform(new Point(0,height-re.height), TransformationType.TRANSFORMATION_RESIZE_SE);
72: re.updateBounds();
73:
74: } else {
75: re.setWidth(insideWidth);
76: //re.trasform(new Point(insideWidth - re.getWidth(),0), TransformationType.TRANSFORMATION_RESIZE_SE);
77: re.updateBounds();
78: }
79: }
80:
81: updateElements();
82:
83: sleepUndo = false;
84: }
85:
86: }
|