import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.lang.*;
import java.io.*;


public class SchemaWriter 
{
	private FileWriter writer;
	private StimEdit stimObject;
	private File file;
	
	
	public SchemaWriter()
	{}
	/**
	 * Method SchemaWriter
	 *
	 *
	 */
	public SchemaWriter(CSE f, StimEdit stim) 
	{
		try
		{
			file = new File(f.getSave());
			writer = new FileWriter(file);
			stimObject = stim;
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	
	public SchemaWriter(File f, StimEdit stim) 
	{
		try
		{
			file = f;
			writer = new FileWriter(file);
			stimObject = stim;
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	
	public void write()
	{
		
		try
		{
			writer.write("<?xml version='1.0' encoding='utf-8'?>\n");
			writer.write("<stim name=\"" + file.getName() + "\">\n");
			writer.write("<display  type=\"text\">\n");
			writer.write(stimObject.getStim() + "\n");
			writer.write("</display>\n");
			writer.write("<poleset num=\"3\" type=\"text\">\n");
			writer.write("<pole id=\"" + stimObject.getPoleID(1) + "\" value=\".5\">\n");
			writer.write("<que>" + stimObject.getPoleCue(1) + "</que>\n");
			writer.write("<descrip>\n");
			writer.write(stimObject.getPole(1) + "\n");
			writer.write("</descrip>\n");
			writer.write("</pole>\n");
			writer.write("<pole id=\"" + stimObject.getPoleID(2) + "\" value=\"0\">\n");
			writer.write("<que>" + stimObject.getPoleCue(2) + "</que>\n");
			writer.write("<descrip>\n");
			writer.write(stimObject.getPole(2) + "\n");
			writer.write("</descrip>\n");
			writer.write("</pole>\n");
			writer.write("<pole id=\"" + stimObject.getPoleID(3) + "\" value=\".5\">\n");
			writer.write("<que>" + stimObject.getPoleCue(3) + "</que>\n");
			writer.write("<descrip>\n");
			writer.write(stimObject.getPole(3) + "\n");
			writer.write("</descrip>\n");
			writer.write("</pole>\n");
			writer.write("</poleset>\n");
			writer.write("</stim>\n");
			writer.flush();
			writer.close();
			
			
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		
	
	}
		
	public boolean open()
	{
		try
		{
			if(!file.createNewFile())
			{
				return false;
			}
			else
			{
				return true;
			}
		}
		catch(Exception e)
		{
			e.printStackTrace();
			return false;
		}	
	
	}		
	
	
		
}
