public static void saveBubbleDiagram(File file)
	{
		try {
			PrintWriter writer = new PrintWriter(file);
			
			writer.println("Bubbles:");
			for(Bubble bubble : Main.flowChart.getBubbles())
			{
				Point loc = bubble.getLocation();
				writer.println("bubble:"+bubble.getId()+":"+loc.x+":"+loc.y+":"+bubble.getRadius()+":"+bubble.getText());
			}
			
			for(Bubble bubble : Main.flowChart.getBubbles())
			{
				for(Arrow arrow : bubble.getArrows())
				{
					//Both start and end hold the arrow, so only add an arrow if it is start
					//to prevent duplicate arrows.
					if(arrow.getStart() == bubble)
						writer.println("arrow:"+arrow.getStart().getId()+":"+arrow.getEnd().getId());
				}
			}
			
			writer.println("end");
			writer.close();
			
		} catch (IOException e) {
			e.printStackTrace();
		}
	}