public EnvironmentPropertiesTable(Simulation s) {
		super();

		sim = s;

		model = new PropertyTableModel();

		model.addTableModelListener(new TableModelListener() {
			public void tableChanged(TableModelEvent tme) {
				if (tme.getType() == TableModelEvent.UPDATE) {
					// Automatically apply user-entered values upon table value change.
					for (int row = 0; row < model.getRowCount(); row++)
						sim.getPeerEnvironment().set((String)model.getValueAt(row, 0), (String)model.getValueAt(row, 1));
					sim.refresh();
				}
			}
		});

		setModel(model);
	}