public void actionPerformed(ActionEvent e) {
						try {
							room.getObjects().remove(obj);
							
							List<RoomJob> list = null;
							
							if (obj != null) {
								list = obj.getJobs();
							}

							obj = null;
							
							if (obj == null) {
								Logger.log("Creating new object of type " + cbType.getSelectedItem().toString() + "...");
								RoomObject object = RoomObjects.newInstance(cbType.getSelectedItem().toString(), txtLabel.getText().trim(), cbHci.getSelectedIndex(), (Integer) spNode.getValue(), cbIcon.getSelectedItem().toString(), cbColor.getSelectedItem().toString(), Integer.parseInt(txtManualOn.getText()), Integer.parseInt(txtManualOff.getText()));
								room.getObjects().add(object);
								if (list != null) {
									object.setJobs(list);
								}
								FrameMain.instance.reloadTree();
							} else {
								obj.setLabel(txtLabel.getText().trim());
								obj.setStringIcon(cbIcon.getSelectedItem().toString());
								obj.setIcon(IconUtils.getIcon("icon_" + cbIcon.getSelectedItem().toString()));
								obj.setColor(cbColor.getColor());
								obj.setHcinode((Integer) spNode.getValue());
								obj.setHci(cbHci.getSelectedIndex());
								obj.setManualOff(Integer.parseInt(txtManualOff.getText().trim()));
								obj.setManualOn(Integer.parseInt(txtManualOn.getText().trim()));

								FrameMain.instance.reloadTree();
							}
														
							dispose();
							setVisible(false);
						} catch (Exception e1) {
							e1.printStackTrace();
						}
					}