import java.io.BufferedReader;
import java.io.FileReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

// alt-x mark-whole-buffer
// alt-x indent-region



public class Fixit {

    //private Button btn1, btn2;

    public static void main(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx1, idx2;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null) {
		idx1 = line.indexOf("Update3D calculate");
		if (idx1 < 0) {
		    writer.write(line+"\n");
		} else {
		    // read next line
		    line = reader.readLine();

		    idx2 = line.indexOf("calculate.start");
		    if (idx2 < 0) {
			writer.write(line+"\n");
		    } else {
			writer.write(line.substring(0,idx2)+
				     "update3D();\n");
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }

    /*
    public static void main5(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx1, idx2;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null) {
		idx1 = line.indexOf("outputpanel");
		if (idx1 < 0) {
		    writer.write(line+"\n");
		} else {
		    idx2 = line.indexOf("repaint()");
		    if (idx2 < 0) {
			writer.write(line+"\n");
		    } else {
			if (line.indexOf("tcanvas") >= 0) {
			    writer.write(line+"\n");
			    // DONT change these two panels:
			} else if (line.indexOf("outputpanel.") >= 0) {
			    writer.write(line+"\n");
			} else if (line.indexOf("outputpanel12.") >= 0) {
			    writer.write(line+"\n");
			} else {
			    writer.write(line.substring(0,idx2)+
					 "repaint_data();\n");
			}
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }

    
    public static void main4(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx1, idx2;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx1 = line.indexOf("setPanelVisible");
		if (idx1 < 0) {
		    writer.write(line+"\n");
		} else {
		    idx2 = line.indexOf(",true");
		    if (idx2 < 0) {
			writer.write(line+"\n");
		    } else {
			writer.write(line.substring(0,idx2)+");\n");
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }

    
    
    // Comment out all lines with 'setPanelVisible(<comp>,false)'
    public static void main3(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf("setPanelVisible");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else if (line.indexOf("false") < 0) {
		    writer.write(line+"\n");
		} else {
		    words = line.split("\t");
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
		    }
		    writer.write("   //"+subline+"\n");
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */

    
    /*
        public static void main2(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf(".setBounds");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else {
		    words = line.split("\t");
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
		    }
		    writer.write("   //"+subline+"\n");
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */
    
    /*
        public static void main1(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedAntenna.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();
	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf(".setVisible");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else {
		    subline = line.substring(0,idx);
		    words = subline.split("\t");			
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
		    }

		    if (subline.startsWith("//")) {
			writer.write(line+"\n");
		    } else {
			if (line.indexOf("(true") > 0) {
			    writer.write("   setPanelVisible("+subline+
					 ",true);\n");
			} else {
			    writer.write("   setPanelVisible("+subline+
					 ",false);\n");
			}
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */

    // ------------------------------------------------------------------

    

    /*
    // Change 'setPanelVisible(<comp>,true)' to
    //   'setPanelVisible(<comp>)'
    public static void main5(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx1, idx2;
	try {
	    reader = new BufferedReader(new FileReader("DetailedTwoAntennas.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx1 = line.indexOf("setPanelVisible");
		if (idx1 < 0) {
		    writer.write(line+"\n");
		} else {
		    idx2 = line.indexOf(",true");
		    if (idx2 < 0) {
			writer.write(line+"\n");
		    } else {
			writer.write(line.substring(0,idx2)+");\n");
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */
    
    /*
    // Comment out all lines with 'setPanelVisible(<comp>,false)'
    public static void main4(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedTwoAntennas.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf("setPanelVisible");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else if (line.indexOf("false") < 0) {
		    writer.write(line+"\n");
		} else {
		    words = line.split("\t");
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
		    }
		    writer.write("   //"+subline+"\n");
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */

    /*
        public static void main3(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedTwoAntennas.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();

	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf(".setBounds");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else {
		    words = line.split("\t");
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
		    }
		    writer.write("   //"+subline+"\n");
		}
		
		// read next line
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */

    /*
    public static void main2(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedTwoAntennas.java"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    line = reader.readLine();
	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		idx = line.indexOf("setPanelVisible");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else {
		    subline = line.substring(idx+16);
		    words = subline.split(",");
		    String var = words[0].trim();
		    String param = words[1].trim();
		    writer.write("   "+var+".setVisible("+param+"\n");
		}
		
		// read next line
		line = reader.readLine();
	    }

	    while (line != null) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */

    /*
    public static void main1(String[] args){
	BufferedReader reader;
	BufferedWriter writer;
	String line, subline;
	int idx;
	String[] words;
	try {
	    reader = new BufferedReader(new FileReader("DetailedTwoAntennas.java"));
	    //reader = new BufferedReader(new FileReader("myfile.txt"));
	    writer = new BufferedWriter(new FileWriter("NEWFILE.java"));
	    //writer = new BufferedWriter(new FileWriter("newfile.java"));
	    line = reader.readLine();
	    while (line != null && line.indexOf("paint(Graph") < 0) {
		writer.write(line+"\n");
		line = reader.readLine();
	    }
	    while (line != null) {
		//System.out.println(line);

		idx = line.indexOf(".setVisible");
		if (idx < 0) {
		    writer.write(line+"\n");
		} else {
		    subline = line.substring(0,idx);
		    //System.out.printf("subline WAS %s%n",subline);
		    words = subline.split("\t");			
		    subline="";
		    for (int i=0; i < words.length; i++) {
			subline += words[i].trim();
			//System.out.printf("%s ",words[i]);
		    }

		    if (subline.startsWith("//")) {
			writer.write(line+"\n");
		    } else {
			//System.out.printf("NOW subline is %s%n",subline);
			
			//words = subline. split(" ");
			//System.out.println(words[0]);
			if (line.indexOf("(true") > 0) {
			    writer.write("   setPanelVisible("+subline+
					 ",true);\n");
			} else {
			    writer.write("   setPanelVisible("+subline+
					 ",false);\n");
			}
		    }
		}
		
		// read next line
		line = reader.readLine();
	    }
	    reader.close();
	    writer.close();
	} catch (IOException e) {
	    e.printStackTrace();
	}
    }
    */
}


/*
  public void whenWriteStringUsingBufferedWritter_thenCorrect() 
  throws IOException {
  String str = "Hello";
  BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
  writer.write(str);
    
  writer.close();
  }
*/
