/*************************************************
 * Author: 	Evelyn Lai-Tee Cheok
 *			Department of Electrical Engineering
 *			Center for Telecommunications Research
 *			Schapiro Research Building
 *			Columbia University
 *
 * Email: 	laitee@ctr.columbia.edu
 *
 **************************************************/
import java.lang.*;
import java.util.*;
import ObjType;
import SketchPanel;

public class ProcessCmd {
	SketchPanel parent;
	Vector clipboard = new Vector();

	public ProcessCmd(SketchPanel parent) {
		this.parent = parent;
	}

	public void procCommand(int cmdType) {
		switch ( cmdType ) {

			case ObjType.COPY:
				if (parent.sketch_area.selectedObj != null) 
					copy2clipboard(parent.sketch_area.selectedObj);
				break;

			case ObjType.PASTE:
				if ( clipboardNotEmpty() )
					paste();
				else
					System.out.println("NO OBJECT TO PASTE !!!");
				break;

			case ObjType.GIF:
				ImageFrame imgFrame = new ImageFrame(parent.sketch_area, "Load Images");
				imgFrame.show();
				break;
		}
	}

	public void copy2clipboard(DrawObject selectedObj) {
		System.out.println("#######In copy2clipboard");

		/* Allows only one object on the clipboard at any one time */
		if ( clipboard.size() > 0 ) {
			clipboard.removeAllElements();
		}

		clipboard.addElement(selectedObj);
	}

	public boolean clipboardNotEmpty() {
		if ( clipboard.isEmpty() )
			return false;
		else
			return true;
	}

	public void paste() {
		System.out.println("@@@@@@@@@ In paste of procCmd!!!");	

		DrawObject objToPaste = (DrawObject)clipboard.lastElement();
		clipboard.removeElementAt(clipboard.size() -1);
		parent.sketch_area.paste(objToPaste);
	}
}




