/** * Will create an image picker if the component is not read-only. * {@inheritDoc} */ @Override protected RImageComponent createRImageComponent(IPropertyViewDescriptor viewDescriptor) { final IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor) viewDescriptor.getModelDescriptor(); if (viewDescriptor.isReadOnly() || !(propertyDescriptor instanceof IBinaryPropertyDescriptor)) { return super.createRImageComponent(viewDescriptor); } else { if (viewDescriptor instanceof IImageViewDescriptor && ((IImageViewDescriptor) viewDescriptor).isDrawable()) { return new RImageCanvas(getGuidGenerator().generateGUID()); } return new RImagePicker(getGuidGenerator().generateGUID()); } }