Bug 333489 PartSashContainers prevent re-rendering a previously-opened window
BuildId: e4 4.1M4 Attempting to re-open a window with a PartSashContainer fails as the contents of the PartSashContainers are not re-created. The direct problem is that the PartSashContainer elements don't have their widget fields nulled out on close. Thus the widgets are not re-rendered during the IPresentationEngine/PartRenderingEngine.createGui(). The widget field actually contains a Rectangle instance. The field isn't nulled out as SashRenderer inherits bindWidget from SWTPartRenderer, which only installs the unbindWidget-on-dispose (and thus null the widget field) when the widget actually is a control.
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/SashRenderer.java
}
		};
		eventBroker.subscribe(UIEvents.buildTopic(UIEvents.UIElement.TOPIC,
				UIEvents.UIElement.CONTAINERDATA), sashWeightHandler);
	}
	/**
	 * @param pscModel
	 */
	protected void forceLayout(MElementContainer<MUIElement> pscModel) {
		
		while (!(pscModel.getWidget() instanceof Control))
			pscModel = pscModel.getParent();
		Control ctrl = (Control) pscModel.getWidget();
		if (ctrl instanceof Shell)
			((Shell) ctrl).layout(null, SWT.ALL | SWT.CHANGED | SWT.DEFER);
		else
			ctrl.getParent().layout(null, SWT.ALL | SWT.CHANGED | SWT.DEFER);
	}
	@PreDestroy
	void preDestroy() {
		eventBroker.unsubscribe(sashOrientationHandler);
		eventBroker.unsubscribe(sashWeightHandler);
	}
	public Object createWidget(MUIElement element, Object parent) {
		if (element.getParent() != null) {
			Rectangle newRect = new Rectangle(0, 0, 0, 0);
			return newRect;
		}