typeDestBox.setEnabled(false);
	private void updateComponents(boolean loadDest, boolean loadEntry, 			boolean loadDestType)	{		muteEvents = true;		int x = Integer.parseInt(areaXField.getText()),			y = Integer.parseInt(areaYField.getText()),			num = Integer.parseInt(entryNumField.getText());		if (num >= EbMap.getDoorsNum(x,y))		{			//disable everything if trying to show an invalid entry			numField.setEnabled(false);			numField.setText("");			ropeCheck.setEnabled(false);			ropeCheck.setSelected(false);			dirClimbBox.setEnabled(false);			dirClimbBox.setSelectedIndex(0);			disableDestGUI();		}		else		{			EbMap.DoorLocation doorLocation = EbMap.getDoorLocation(x,y,num);			// update entry stuff?			if (loadEntry)			{				typeBox.setEnabled(true);				typeBox.setSelectedIndex(doorLocation.getType());				int doorDestType = EbMap.getDoorDestType(doorLocation.getType());				if (doorDestType == -1)				{					ropeCheck.setEnabled(true);					ropeCheck.setSelected(doorLocation.isMiscRope());					dirClimbBox.setEnabled(false);					dirClimbBox.setSelectedIndex(0);					numField.setEnabled(false);					numField.setText(Integer.toString(0));				}				else if (doorDestType == -2)				{					ropeCheck.setEnabled(false);					ropeCheck.setSelected(false);					dirClimbBox.setEnabled(true);					int test = doorLocation.getMiscDirection();					dirClimbBox.setSelectedIndex(doorLocation.getMiscDirection());					numField.setEnabled(false);					numField.setText(Integer.toString(0));				}				else if (doorDestType >= 0)				{					ropeCheck.setEnabled(false);					ropeCheck.setSelected(false);					dirClimbBox.setEnabled(false);					dirClimbBox.setSelectedIndex(0);					numField.setEnabled(true);					numField.setText(Integer.toString(doorLocation.getDestIndex()));				}			}						//update destination's type?			if (loadDestType					&& (EbMap.getDoorDestType(typeBox.getSelectedIndex()) >= 0))			{				EbMap.Destination dest = 					EbMap.getDestination(Integer.parseInt(numField.getText()));				typeDestBox.setEnabled(true);				typeDestBox.setSelectedIndex(dest.getType());			}						//update destination properties?			if (EbMap.getDoorDestType(typeBox.getSelectedIndex()) < 0)				disableDestGUI();			else			{				EbMap.Destination dest = 					EbMap.getDestination(Integer.parseInt(numField.getText()));				if (typeDestBox.getSelectedIndex() == 0)				{					ptrField.setEditable(true);					xField.setEditable(true);					yField.setEditable(true);					dirBox.setEnabled(true);					flagField.setEditable(true);					reverseCheck.setEnabled(true);					styleBox.setEnabled(true);										if (loadDest)					{						ptrField.setText(Integer.toHexString(dest.getPointer()));		        		xField.setText(Integer.toString(dest.getX()));		        		yField.setText(Integer.toString(dest.getY()));		        		dirBox.setSelectedIndex(dest.getDirection());		        		flagField.setText(Integer.toHexString(dest.getFlag()));		        		reverseCheck.setSelected(dest.isFlagReversed());		        		styleBox.setSelectedIndex(dest.getStyle());					}				}				else if (typeDestBox.getSelectedIndex() == 1)				{					xField.setText(null);					xField.setEditable(false);					yField.setText(null);					yField.setEditable(false);					dirBox.setSelectedIndex(0);					dirBox.setEnabled(false);					styleBox.setSelectedIndex(0);					styleBox.setEnabled(false);					ptrField.setEditable(true);					setXYButton.setEnabled(false);					flagField.setEditable(true);					reverseCheck.setEnabled(true);					destPreview.clearMapArray();										if (loadDest)					{						ptrField.setText(Integer.toHexString(dest.getPointer()));						flagField.setText(Integer.toHexString(dest.getFlag()));		    			reverseCheck.setSelected(dest.isFlagReversed());					}				}				else				{					typeBox.setEnabled(false);					typeBox.setSelectedIndex(0);					xField.setText(null);					yField.setText(null);					dirBox.setSelectedIndex(0);					flagField.setText(null);					reverseCheck.setSelected(false);					styleBox.setSelectedIndex(0);					typeDestBox.setEnabled(false);					ptrField.setEditable(true);					setXYButton.setEnabled(false);					xField.setEditable(false);					yField.setEditable(false);					dirBox.setEnabled(false);					flagField.setEditable(false);					reverseCheck.setEnabled(false);					styleBox.setEnabled(false);					destPreview.clearMapArray();										if (loadDest)						ptrField.setText(Integer.toHexString(dest.getPointer()));				}			}		}		destPreview.remoteRepaint();		muteEvents = false;	}