Bug 254673 [JFace] Window javadoc hints at overriding createShell() when this is not possible
This is the javadoc of Window's createShell() method: /** * Creates and returns this window's shell. * <p> * The default implementation of this framework method creates * a new shell and configures it using <code/>configureShell</code>. Rather * than override this method, subclasses should instead override * <code/>configureShell</code>. * </p> * * @return the shell */ The statement "Rather than override this method, subclasses should instead override configureShell." somewhat sounds like a warning that the user should do one instead of the other...but you could still go the other way if you so desire. However, overriding createShell() is not actually even possible because it is spec'ed as being final.
bundles/org.eclipse.jface/src/org/eclipse/jface/window/Window.java
* Sets the default image. This is the image that will be used for windows
	 * that have no shell image at the time they are opened. There is no default
	 * image unless one is installed via this method.
	 * 
	 * @param image
	 *            the default image, or <code>null</code> if none
	 */
	public static void setDefaultImage(Image image) {
		defaultImages = image == null ? null : new Image[] { image };
	}
	/**
	 * Sets the array of default images to use for newly opened windows. It is
	 * expected that the array will contain the same icon rendered at different
	 * resolutions.
	 * 
	 * @see org.eclipse.swt.widgets.Decorations#setImages(org.eclipse.swt.graphics.Image[])
	 * 
	 * @param images
	 *            the array of images to be used when this window is opened
	 * @since 3.0
	 */
	public static void setDefaultImages(Image[] images) {
		Image[] newArray = new Image[images.length];
		System.arraycopy(images, 0, newArray, 0, newArray.length);
		defaultImages = newArray;
	}
	
	/**
     * Changes the parent shell. This is only safe to use when the shell is not
     * yet realized (i.e., created). Once the shell is created, it must be