Bug 157174 [Viewers] Refactor new Viewer API
We are yet not completely happy with the API and refactor it.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/DecoratingLabelProvider.java
* 
	 * @see org.eclipse.jface.viewers.IViewerLabelProvider#updateLabel(org.eclipse.jface.viewers.ViewerLabel,
	 *      java.lang.Object)
	 */
	public void updateLabel(ViewerLabel settings, Object element) {
		ILabelDecorator currentDecorator = getLabelDecorator();
		String oldText = settings.getText();
		boolean decorationReady = true;
		if (currentDecorator instanceof IDelayedLabelDecorator) {
			IDelayedLabelDecorator delayedDecorator = (IDelayedLabelDecorator) currentDecorator;
			if (!delayedDecorator.prepareDecoration(element, oldText)) {
				
				
				decorationReady = false;
			}
		}
		
		if (decorationReady || oldText == null
				|| settings.getText().length() == 0) {
			settings.setText(getText(element));
		}
		Image oldImage = settings.getImage();
		if (decorationReady || oldImage == null) {
			settings.setImage(getImage(element));
		}
		if (decorationReady) {
			updateForDecorationReady(settings, element);
		}
	}
	/**