]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/data/Photo.java
Moved source into separate src directory due to popular request
[GpsPrune.git] / tim / prune / data / Photo.java
diff --git a/tim/prune/data/Photo.java b/tim/prune/data/Photo.java
deleted file mode 100644 (file)
index 0c5d9e5..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-package tim.prune.data;
-
-import java.awt.Dimension;
-import java.io.File;
-
-import javax.swing.ImageIcon;
-
-/**
- * Class to represent a photo and link to DataPoint
- */
-public class Photo extends MediaObject
-{
-       /** Size of original image */
-       private Dimension _size = null;
-       /** rotation flag (clockwise from 0 to 3) */
-       private int _rotation = 0;
-       // TODO: Need to store caption for image?
-       /** Bearing, if any */
-       private double _bearing = -1.0;
-       /** thumbnail for image (from exif) */
-       private byte[] _exifThumbnail = null;
-
-       /**
-        * Constructor
-        * @param inFile File object for photo
-        */
-       public Photo(File inFile)
-       {
-               super(inFile, null);
-       }
-
-       /**
-        * Constructor using data, eg from zip file or URL
-        * @param inData data as byte array
-        * @param inName name of file from which it came
-        * @param inUrl url from which it came (or null)
-        */
-       public Photo(byte[] inData, String inName, String inUrl)
-       {
-               super(inData, inName, inUrl);
-       }
-
-       /**
-        * Calculate the size of the image (slow)
-        */
-       private void calculateSize()
-       {
-               ImageIcon icon = null;
-               if (_file != null)
-                       icon = new ImageIcon(_file.getAbsolutePath());
-               else
-                       icon = new ImageIcon(_data);
-               int width = icon.getIconWidth();
-               int height = icon.getIconHeight();
-               if (width > 0 && height > 0)
-               {
-                       _size = new Dimension(width, height);
-               }
-       }
-
-       /**
-        * @return size of image as Dimension object
-        */
-       public Dimension getSize()
-       {
-               if (_size == null) {
-                       calculateSize();
-               }
-               return _size;
-       }
-
-       /**
-        * @return width of the image, if known
-        */
-       public int getWidth()
-       {
-               if (getSize() == null) {return -1;}
-               return _size.width;
-       }
-
-       /**
-        * @return height of the image, if known
-        */
-       public int getHeight()
-       {
-               if (getSize() == null) {return -1;}
-               return _size.height;
-       }
-
-       /**
-        * @return byte array of thumbnail data
-        */
-       public byte[] getExifThumbnail()
-       {
-               return _exifThumbnail;
-       }
-
-       /**
-        * @param inBytes byte array from exif
-        */
-       public void setExifThumbnail(byte[] inBytes)
-       {
-               _exifThumbnail = inBytes;
-       }
-
-       /**
-        * Delete the cached data when the Photo is no longer needed
-        */
-       public void resetCachedData()
-       {
-               _size = null;
-               // remove thumbnail too
-       }
-
-       /**
-        * @param inRotation initial rotation value (from exif)
-        */
-       public void setRotation(int inRotation)
-       {
-               if (inRotation >= 0 && inRotation <= 3) {
-                       _rotation = inRotation;
-               }
-       }
-
-       /**
-        * Rotate the image by 90 degrees
-        * @param inRight true to rotate right, false for left
-        */
-       public void rotate(boolean inRight)
-       {
-               int dir = inRight?1:3;
-               _rotation = (_rotation + dir) % 4;
-       }
-
-       /**
-        * @return rotation status
-        */
-       public int getRotationDegrees()
-       {
-               return _rotation * 90;
-       }
-
-       /**
-        * @return a new image icon for the whole image
-        */
-       public ImageIcon createImageIcon()
-       {
-               if (_file != null) {
-                       return new ImageIcon(_file.getAbsolutePath());
-               }
-               if (_data != null) {
-                       return new ImageIcon(_data);
-               }
-               return null;
-       }
-
-       /**
-        * @param inValue bearing in degrees, 0 to 360
-        */
-       public void setBearing(double inValue) {
-               _bearing = inValue;
-       }
-
-       /** @return bearing in degrees */
-       public double getBearing() {
-               return _bearing;
-       }
-}