1 package org.wcb.common.component; 2 3 import javax.swing.*; 4 import java.awt.print.Printable; 5 import java.awt.print.PageFormat; 6 import java.awt.print.PrinterException; 7 import java.awt.*; 8 9 /*** 10 * Copyright (C) 1999 Walter Bogaardt 11 * 12 * This library is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU Lesser General Public 14 * License as published by the Free Software Foundation; either 15 * version 2 of the License, or (at your option) any later version. 16 * 17 * This library is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 20 * Lesser General Public License for more details. 21 * 22 * You should have received a copy of the GNU Lesser General Public 23 * License along with this library; if not, write to the Free Software 24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 25 * 26 * Project: Alice X10 Home Automation<BR> 27 * Filename: $Id: PrintPreviewPanel.java,v 1.2 2004/07/22 03:06:50 wbogaardt Exp $<BR> 28 * Abstract: Used to display Print preview information before allowing list to print 29 * 30 * $Log: PrintPreviewPanel.java,v $ 31 * Revision 1.2 2004/07/22 03:06:50 wbogaardt 32 * removed deprecated method calls. 33 * 34 * Revision 1.1 2004/02/20 23:57:30 wbogaardt 35 * added print preview panel 36 * 37 */ 38 public class PrintPreviewPanel extends JPanel implements Printable{ 39 40 private JTextArea area = new JTextArea(10,40); 41 42 public PrintPreviewPanel(){ 43 area.setLineWrap(true); 44 area.setWrapStyleWord(true); 45 add(area); 46 } 47 48 public void setTextArea(String text){ 49 area.setText(text); 50 } 51 52 public int print(Graphics g, PageFormat pf, int pi) throws PrinterException { 53 if (pi >= 1) 54 { 55 return Printable.NO_SUCH_PAGE; 56 } 57 Graphics2D g2 = (Graphics2D) g; 58 g2.translate(pf.getImageableX(), pf.getImageableY()); 59 area.paint(g2); 60 return Printable.PAGE_EXISTS; 61 } 62 }