package com.google.android.imageps;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import android.content.Context;
import android.content.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
public class ImagePSView extends View{
Bitmap mBitmap;
Canvas mCanvas;
private final Rect mRect = new Rect();
private final Paint mPaint;
private boolean mCurDown;
private int mCurX;
private int mCurY;
private float mCurPressure;
private float mCurSize;
private int mCurWidth;
private static final int maxEditHeight = 459;
private static final int maxEditWidth = 320;
private static Bitmap BitmapA;
private static FileOutputStream fOut;
private static BitmapDrawable bmD;
private static int Rcolor = 0;
private static int Gcolor = 0;
private static int Bcolor = 0;
int maxScrollX = 0;
int maxScrollY = 0;
int remainX = 0;
int remainY = 0;
boolean isScrollBy = false;
private static int leftBound = 0;
private static int topBound = 0;
private static int picHeight = 0;
private static int picWidth = 0;
public ImagePSView(Context c, Bundle extras) {
super(c);
mPaint = new Paint();
mPaint.setAntiAlias(true);
mPaint.setARGB(255, 255, 255, 255);
String path = extras.getString("filepath");
BitmapA = BitmapFactory.decode(path);
bmD = new BitmapDrawable(BitmapA);
loadPic(bmD);
}
public void loadPic(Drawable Pic) {
picHeight = Pic.getIntrinsicHeight();
picWidth = Pic.getIntrinsicWidth();
leftBound = 0;
topBound = 0;
isScrollBy = false;
int editWidth = picWidth;
int editHeight = picHeight;
isScrollBy = true;
Bitmap bitmap = Bitmap.createBitmap(320, 459, true);
Canvas canvas = new Canvas(bitmap);
Pic.setBounds(0, 0, 320, 459);
Pic.draw(canvas);
mBitmap = bitmap;
mCanvas = canvas;
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
/* int curW = mBitmap != null ? mBitmap.width() : 0;
int curH = mBitmap != null ? mBitmap.height() : 0;
if (curW >= w && curH >= h) {
return;
}
if (curW < w) curW = w;
if (curH < h) curH = h;
Bitmap newBitmap = Bitmap.createBitmap(this.getWidth(), this.getHeight(), false);
Canvas newCanvas = new Canvas();
newCanvas.setDevice(newBitmap);
if (mBitmap != null) {
newCanvas.drawBitmap(mBitmap, 0, 0, null);
}
mBitmap = newBitmap;
mCanvas = newCanvas;*/
}
@Override
protected void onDraw(Canvas canvas) {
if (mBitmap != null) {
canvas.drawBitmap(mBitmap, 0, 0, null);
//canvas.drawBitmap(BitmapA, 0, 0, null);
}
}
}