@Override
	protected boolean canDeleteChild(int index, Construct child, boolean isUser) { 
		if(mState == null || mState.mPlaceholders == null) {
			return super.canDeleteChild(index, child, isUser);
		}

		Placeholder descriptor = getPlaceholderForConstruct(child);		
		if(descriptor == null || descriptor.isPermanent()) { 
			Application.showErrorMessage("Cannot delete this construct");
			return false;
		}

		if(isUser == true && child.getClass().equals(PlaceholderConstruct.class)) { 
			Application.showErrorMessage("Cannot delete this construct");
			return false;
		}

		return true;
	}