public void mousePressed(MouseEvent e) 
		{
			Point click = e.getPoint();
			int xIndex = click.x/TILE;
			int yIndex = click.y/TILE;
			
			Tile clicked = campus.getTile(xIndex+screenX, yIndex+screenY);
			System.out.println("Clicked: " + xIndex + "," + yIndex + ", Tile: " + clicked);
			
			if (e.getButton() == MouseEvent.BUTTON3)
			{
			    Tile choice = (Tile)JOptionPane.showInputDialog(null, "Please choose a tile:", "Tile Swap",  
			    		JOptionPane.QUESTION_MESSAGE, null, new Tile[] { 
				    			// corners
				    			new Tile(Tile.Type.CORNER, Tile.Direction.UP), new Tile(Tile.Type.CORNER, Tile.Direction.RIGHT), 
				    			new Tile(Tile.Type.CORNER, Tile.Direction.DOWN), new Tile(Tile.Type.CORNER, Tile.Direction.LEFT), 
				    			// forks
				    			new Tile(Tile.Type.FORK, Tile.Direction.UP),  new Tile(Tile.Type.FORK, Tile.Direction.RIGHT),
				    			new Tile(Tile.Type.FORK, Tile.Direction.DOWN), new Tile(Tile.Type.FORK, Tile.Direction.LEFT),
				    			// straights
				    			new Tile(Tile.Type.ROAD), new Tile(Tile.Type.ROAD, Tile.Direction.LEFT), 
				    			// nature
				    			new Tile(Tile.Type.TREE), new Tile(Tile.Type.TREE, Tile.Direction.DOWN), 
				    			new Tile(Tile.Type.FLOWER, Tile.Direction.DOWN), new Tile(Tile.Type.GRASS, Tile.Direction.DOWN), 
				    			new Tile(Tile.Type.LAND, Tile.Direction.DOWN),
				    			// buildings 
				    			new Tile(Tile.Type.DOOR), new Tile(Tile.Type.ROOF), new Tile(Tile.Type.WALL), 
				    			new Tile(Tile.Type.WINDOW, Tile.Direction.LEFT), new Tile(Tile.Type.WINDOW, Tile.Direction.RIGHT),
				    			new Tile(Tile.Type.WINDOW), new Tile(Tile.Type.LAND, Tile.Direction.UP) }
			    		, null);
			    
			    // choice is the tile chosen from list
			    if (choice != null)
			    {	campus.changeTile(choice, new Point(xIndex+screenX,yIndex+screenY));
			    	if (choice.getType() == Tile.Type.LAND)
			    		campus.addLand(new Point(xIndex+screenX, yIndex+screenY));
			    	tiles[xIndex][yIndex] = tileFactory.get(choice);
			    	//renderScreen();
			    }
			    System.out.println("New choice: " + choice);		
			    
			    if (xIndex+yIndex+screenX+screenY == 0)	// right clicked on upper left most tile
			    {
			    	int result = JOptionPane.showConfirmDialog(null, "Export code to text?", "Export", JOptionPane.OK_CANCEL_OPTION);
			    	if (result == JOptionPane.OK_OPTION)
			    	{
			    		// Export code to campus.txt
			    		try 
			    		{	BufferedWriter writer = new BufferedWriter(new FileWriter(new File("campus.txt")));
			    			String[] words = campus.getConstructor().split("\n");
			    			for (String line : words) 
			    			{
			    				writer.write(line);
			    				writer.newLine();
			    			}
			    			writer.close();
			    		} catch (Exception ex) {}
			    	}
			    }
			}	
		}