Bug 282875 [UI] Allow parts of models to be rendered
We need to change the rendering protocol to allow a 'createGui' to specify the container it should be created under (in SWT-land this would be a Composite). This is necessary to facilitate unit tests and to allow the ad-hoc rendering of chunks of a model within an arbitrary container (i.e. a Dialog or Wizard). In order to do this we'll have to make an API change to the PartFactory's 'createWidget' so that it will get the parent container as a parameter. In order to 'upgrade' an existing PartFactory you would simply replace the code you're currently using to find the correct container with the new parameter's value.
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/workbench/ui/renderers/swt/WBPartFactory.java
}
	public Object createWidget(MPart<?> part) {
		final Widget newWidget;
		if (part instanceof MWindow<?>) {
			IEclipseContext parentContext = getContextForParent(part);
			Shell wbwShell = new Shell(Display.getCurrent(), SWT.SHELL_TRIM);
			wbwShell.setLayout(new FillLayout());
			newWidget = wbwShell;
			bindWidget(part, newWidget);
			
			IEclipseContext localContext = part.getContext();
			localContext
					.set(IContextConstants.DEBUG_STRING, "MWorkbenchWindow"); 
			parentContext.set(IServiceConstants.ACTIVE_CHILD, localContext);
			
			localContext.set(Shell.class.getName(), wbwShell);
			localContext.set(Workbench.LOCAL_ACTIVE_SHELL, wbwShell);
			if (part instanceof MWorkbenchWindow) {
				
				
				
			} else {
				wbwShell.setLayout(new FillLayout());
			}
			if (((MWindow<?>) part).getName() != null)
				wbwShell.setText(((MWindow<?>) part).getName());
			String uri = ((MWindow<?>) part).getIconURI();
			if (uri != null) {
				try {
					Image image = ImageDescriptor.createFromURL(new URL(uri))