Bug 293357 [context] Switch annotation processing to JSR 330
examples/org.eclipse.e4.demo.e4photo/src/org/eclipse/e4/demo/e4photo/Preview.java
e.printStackTrace();
				}
				return null;
			}
		};
		this.parentSize = new WritableValue(bgRealm);
		this.scaledImageData = new ComputedValue(bgRealm) {
			protected Object calculate() {
				ImageData rawData = (ImageData) rawImageData.getValue();
				Point maxSize = (Point) parentSize.getValue();
				if (rawData == null || maxSize == null) {
					return null;
				}
				Point targetSize = getBestSize(rawData.width, rawData.height,
						maxSize.x, maxSize.y);
				return rawData.scaledTo(targetSize.x, targetSize.y);
			}
		};
		scaledImageData.addChangeListener(new IChangeListener() {
			public void handleChange(ChangeEvent event) {
				final ImageData imageData = (ImageData) scaledImageData
						.getValue();
				parent.getDisplay().asyncExec(new Runnable() {
					public void run() {
						if (imageData == null)
							return;
						if (currentImage != null) {
							currentImage.dispose();
							currentImage = null;