From 57c322a273bab951e79dbf2a779fb78a7827453e Mon Sep 17 00:00:00 2001 From: hns Date: Fri, 9 Feb 2001 18:51:07 +0000 Subject: [PATCH] not needed --- src/Acme/JPM/JPMTest.java | 312 -------------------------------------- 1 file changed, 312 deletions(-) delete mode 100644 src/Acme/JPM/JPMTest.java diff --git a/src/Acme/JPM/JPMTest.java b/src/Acme/JPM/JPMTest.java deleted file mode 100644 index 045b75df..00000000 --- a/src/Acme/JPM/JPMTest.java +++ /dev/null @@ -1,312 +0,0 @@ -// JPMTest - test program for the ACME Java pixmap utilities -// -// Copyright (C) 1996 by Jef Poskanzer . All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -// SUCH DAMAGE. -// -// Visit the ACME Labs Java page for up-to-date versions of this and other -// fine Java utilities: http://www.acme.com/java/ - -package Acme.JPM; - -import java.awt.*; -import java.io.*; -import Acme.JPM.Filters.*; -import Acme.JPM.Encoders.*; -import Acme.Widgets.*; - -/// Test program for the ACME Java pixmap utilities. -//

-// Fetch the software.
-// Fetch the entire Acme package. - -public class JPMTest extends Frame - { - - private static JPMTest jpmTest; - - public static void main( String[] args ) - { - if ( args.length != 1 ) - { - System.err.println( "usage: JPMTest [filename]" ); - System.exit( 1 ); - } - jpmTest = new JPMTest( args[0] ); - } - - - private ImageLabel origImageLabel, filt1ImageLabel, filt2ImageLabel; - private Image origImage, filt1Image, filt2Image; - private Choice filt1Choice, filt2Choice, outputChoice; - - /// Constructor. - public JPMTest( String fileName ) - { - - setTitle( "JPMTest" ); - - GridBagLayout gb = new GridBagLayout(); - setLayout( gb ); - GridBagConstraints gbc = new GridBagConstraints(); - gbc.gridwidth = GridBagConstraints.REMAINDER; - gbc.insets = new Insets( 5, 5, 5, 5 ); - - Panel panel = new Panel(); - GridBagLayout gb2 = new GridBagLayout(); - panel.setLayout( gb2 ); - GridBagConstraints gbc2 = new GridBagConstraints(); - gbc2.insets = new Insets( 5, 5, 5, 5 ); - - Label label = new Label( fileName ); - gbc2.gridwidth = 1; - gb2.setConstraints( label, gbc2 ); - panel.add( label ); - - filt1Choice = new Choice(); - addChoiceItems( filt1Choice ); - gbc2.gridwidth = 1; - gb2.setConstraints( filt1Choice, gbc2 ); - panel.add( filt1Choice ); - - filt2Choice = new Choice(); - addChoiceItems( filt2Choice ); - gbc2.gridwidth = GridBagConstraints.REMAINDER; - gb2.setConstraints( filt2Choice, gbc2 ); - panel.add( filt2Choice ); - - origImageLabel = new ImageLabel( Acme.GuiUtils.brokenIcon( this ) ); - gbc2.gridwidth = 1; - gb2.setConstraints( origImageLabel, gbc2 ); - panel.add( origImageLabel ); - - filt1ImageLabel = new ImageLabel( Acme.GuiUtils.brokenIcon( this ) ); - gbc2.gridwidth = 1; - gb2.setConstraints( filt1ImageLabel, gbc2 ); - panel.add( filt1ImageLabel ); - - filt2ImageLabel = new ImageLabel( Acme.GuiUtils.brokenIcon( this ) ); - gbc2.gridwidth = GridBagConstraints.REMAINDER; - gb2.setConstraints( filt2ImageLabel, gbc2 ); - panel.add( filt2ImageLabel ); - - gb.setConstraints( panel, gbc ); - add( panel ); - - panel = new Panel(); - gb2 = new GridBagLayout(); - panel.setLayout( gb2 ); - - outputChoice = new Choice(); - outputChoice.addItem( "GIF" ); - outputChoice.addItem( "PPM" ); - gbc2.gridwidth = 1; - gb2.setConstraints( outputChoice, gbc2 ); - panel.add( outputChoice ); - - Button button = new Button( "Write" ); - gbc2.gridwidth = 1; - gb2.setConstraints( button, gbc2 ); - panel.add( button ); - - button = new Button( "Quit" ); - gbc2.gridwidth = GridBagConstraints.REMAINDER; - gb2.setConstraints( button, gbc2 ); - panel.add( button ); - - gb.setConstraints( panel, gbc ); - add( panel ); - - pack(); - validate(); - show(); - - origImage = getToolkit().getImage( fileName ); - origImageLabel.setImage( origImage ); - filt1Choice.select( NONE ); - filt2Choice.select( NONE ); - filter1(); - filter2(); - } - - private void addChoiceItems( Choice choice ) - { - // These items must match the order of the enumeration. - choice.addItem( "NONE" ); - choice.addItem( "Shrink 2" ); - choice.addItem( "Enlarge 2" ); - choice.addItem( "ScaleCopy 0.51" ); - choice.addItem( "ScaleCopy 1.99" ); - choice.addItem( "Oil" ); - choice.addItem( "Smooth 2" ); - choice.addItem( "EdgeDetect" ); - choice.addItem( "Gamma 2" ); - choice.addItem( "Tile 400" ); - choice.addItem( "Flip -lr" ); - choice.addItem( "Flip -tb" ); - choice.addItem( "Flip -cw" ); - choice.addItem( "Invert" ); - choice.addItem( "Margin" ); - choice.addItem( "Shear 30" ); - choice.addItem( "Rotate 30" ); - } - - - /// Event handler. - public boolean handleEvent( Event evt ) - { - switch ( evt.id ) - { - case Event.ACTION_EVENT: - if ( evt.arg.equals( "Quit" ) ) - System.exit( 0 ); - else if ( evt.arg.equals( "Write" ) ) - write(); - else if ( evt.target == filt1Choice ) - { - filter1(); - filter2(); - } - else if ( evt.target == filt2Choice ) - filter2(); - break; - } - return super.handleEvent( evt ); - } - - - // This must match the order of the choice items. - private static final int GIF = 0; - private static final int PPM = 1; - - private void write() - { - try - { - ImageEncoder encoder = null; - switch ( outputChoice.getSelectedIndex() ) - { - case GIF: - encoder = new GifEncoder( filt2Image.getSource(), System.out ); - break; - case PPM: - encoder = new PpmEncoder( filt2Image.getSource(), System.out ); - break; - } - encoder.encode(); - } - catch ( IOException e ) - { - System.err.println( e.toString() ); - } - } - - // This must match the order of the choice items. - private static final int NONE = 0; - private static final int SHRINK2 = 1; - private static final int ENLARGE2 = 2; - private static final int SCALE051 = 3; - private static final int SCALE199 = 4; - private static final int OIL = 5; - private static final int SMOOTH2 = 6; - private static final int EDGEDETECT = 7; - private static final int GAMMA2 = 8; - private static final int TILE400 = 9; - private static final int FLIPLR = 10; - private static final int FLIPTB = 11; - private static final int FLIPCW = 12; - private static final int INVERT = 13; - private static final int MARGIN = 14; - private static final int SHEAR30 = 15; - private static final int ROTATE30 = 16; - - private void filter1() - { - filt1Image = filterImage( filt1Choice.getSelectedIndex(), origImage ); - filt1ImageLabel.setImage( filt1Image ); - } - - private void filter2() - { - filt2Image = filterImage( filt2Choice.getSelectedIndex(), filt1Image ); - filt2ImageLabel.setImage( filt2Image ); - } - - private Image filterImage( int which, Image image ) - { - switch ( which ) - { - case NONE: - return image; - case SHRINK2: - return JPMUtils.filterImage( - this, new Shrink( image.getSource(), 2 ) ); - case ENLARGE2: - return JPMUtils.filterImage( - this, new Enlarge( image.getSource(), 2 ) ); - case SCALE051: - return JPMUtils.filterImage( - this, new ScaleCopy( image.getSource(), 0.51 ) ); - case SCALE199: - return JPMUtils.filterImage( - this, new ScaleCopy( image.getSource(), 1.99 ) ); - case OIL: - return JPMUtils.filterImage( - this, new Oil( image.getSource() ) ); - case SMOOTH2: - return JPMUtils.filterImage( - this, new Smooth( image.getSource(), 2 ) ); - case EDGEDETECT: - return JPMUtils.filterImage( - this, new EdgeDetect( image.getSource() ) ); - case GAMMA2: - return JPMUtils.filterImage( - this, new Gamma( image.getSource(), 2.0 ) ); - case TILE400: - return JPMUtils.filterImage( - this, new Tile( image.getSource(), 400, 400 ) ); - case FLIPLR: - return JPMUtils.filterImage( - this, new Flip( image.getSource(), Flip.FLIP_LR ) ); - case FLIPTB: - return JPMUtils.filterImage( - this, new Flip( image.getSource(), Flip.FLIP_TB ) ); - case FLIPCW: - return JPMUtils.filterImage( - this, new Flip( image.getSource(), Flip.FLIP_CW ) ); - case INVERT: - return JPMUtils.filterImage( - this, new Invert( image.getSource() ) ); - case MARGIN: - return JPMUtils.filterImage( - this, new Margin( image.getSource(), Color.black, 10 ) ); - case SHEAR30: - return JPMUtils.filterImage( - this, new Shear( image.getSource(), 30.0 ) ); - case ROTATE30: - return JPMUtils.filterImage( - this, new Rotate( image.getSource(), 30.0 ) ); - } - return null; - } - - }