public static void initComponent(Object prop) {
		JComponent component = (JComponent)prop;
		Border savedBorder=(Border)component.getClientProperty(CLIENT_PROPS.BORDER);
		if(savedBorder==null){
		    component.putClientProperty(CLIENT_PROPS.BORDER,
		    		component.getBorder()==null?BorderFactory.createEmptyBorder():component.getBorder());
		}else{
		    component.setBorder(savedBorder);
		}

		Boolean isEnabled=(Boolean)component.getClientProperty(CLIENT_PROPS.ENABLED);
		if(isEnabled==null) {
			component.putClientProperty(CLIENT_PROPS.ENABLED, component.isEnabled());
		}

		component.setEnabled(false);

		component.setCursor(WAIT_CURSOR);

		String tooltip=(String)component.getClientProperty(CLIENT_PROPS.TOOLTIP);
		if(tooltip==null){
			component.putClientProperty(CLIENT_PROPS.TOOLTIP, component.getToolTipText()==null ? "" : component.getToolTipText());
		}else{
			component.setToolTipText(tooltip);
		}
	}