Enhancement : Diagram connection establishment should be customizable

StandardConnectionService should not be in an internal package. It
should live next to ConnectionService. The diagram.internal package
should not be exported.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Diagram connection establishment should be customizable

Move connection template classes into internal packages.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Diagram connection establishment should be customizable

Move DiagramConnectionPart class into the same package where
ConnectionService class resides.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Diagram connection establishment should be customizable

Specify "custom" connection service for sql schema editor sample to
avoid instantiating both the standard connection service and the
customized connection service.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Node factory definition should be able to use a model path

When specifying a master-details node factory, the developer should be
able to use a model path that traverses through implied element
properties, parent navigations and/or root navigations before
terminating on an element or a list property.

This is similar to what is already possible in other constructs, such as
the property editor.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422726
Enhancement : Ease of navigation in the sdef editor

Navigating through a large definition in the sdef editor is more 
difficult than necessary due to two main reasons:

1. Part types cannot be recognized at a glance. This is addressed with
   a custom image to each part type.

2. Intermediate nodes (such as "Sections" and "Child Nodes" under a
   master-details node definition) add noise to the outline and cause
   the depth of the hierarchy to increase very rapidly. This is
   addressed by removing many of the intermediate nodes.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=421881
Fix : Menu items under the add action in the outline are not sorted

In the master-details editor page outline, the child node add action
handlers are not sorted. The can be particularly troublesome when
multiple node factories are involved.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422892
Fix : ClassCastException when the delete key is used in the outline

An exception is thrown when the delete key is used to delete nodes in
the master-details editor page.

java.lang.ClassCastException: org.eclipse.sapphire.ui.forms.swt.MasterDetailsEditorPage$1 cannot be cast to org.eclipse.sapphire.ui.forms.swt.FormComponentPresentation
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation.handleKeyEvent(SapphireKeyboardActionPresentation.java:184)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation.handleKeyEvent(SapphireKeyboardActionPresentation.java:110)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation.access$0(SapphireKeyboardActionPresentation.java:106)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation$2.handleEvent(SapphireKeyboardActionPresentation.java:81)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
	at org.eclipse.swt.widgets.Widget.wmKeyDown(Widget.java:1827)
	at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Control.java:4975)
	at org.eclipse.swt.widgets.Tree.WM_KEYDOWN(Tree.java:6137)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4643)
	at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:6005)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4977)
	at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
	at org.eclipse.sapphire.ui.forms.swt.Popup.open(Popup.java:250)
	at org.eclipse.sapphire.ui.forms.swt.internal.SapphireToolTip.toolTipShow(SapphireToolTip.java:406)
	at org.eclipse.sapphire.ui.forms.swt.internal.SapphireToolTip.toolTipOpen(SapphireToolTip.java:509)
	at org.eclipse.sapphire.ui.forms.swt.internal.SapphireToolTip.toolTipCreate(SapphireToolTip.java:371)
	at org.eclipse.sapphire.ui.forms.swt.internal.SapphireToolTip.access$2(SapphireToolTip.java:347)
	at org.eclipse.sapphire.ui.forms.swt.internal.SapphireToolTip$ToolTipOwnerControlListener.handleEvent(SapphireToolTip.java:645)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422616
Fix : Incomplete transition from prefer hints to styles

The prefer.combo hint has been previously replaced with a style, but 
the transition was incomplete. Adding to the confusion, the related 
prefer.combo.buttons and prefer.vertical.combo.buttons hints were left
unchanged. 

This change completes the previous work of converting prefer hints to
styles.

Hint: prefer.combo
Style: Sapphire.PropertyEditor.PopUpListField

Hint: prefer.radio.buttons
Style: Sapphire.PropertyEditor.RadioButtonGroup

Hint: prefer.vertical.radio.buttons
Style: Sapphire.PropertyEditor.RadioButtonGroup.Vertical

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422612
Fix : Form does not refresh validation when child visibility changes

When a form component changes its visibility, the form validation is not
refreshed, which causes parts up the hierarchy to report stale
validation.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422605
Fix : Detail section remains visible when list property editor is not

The detail section part is missing logic to link its visibility to the
visibility of the linked list property editor.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422374
Fix : IllegalArgumentException caused by OutlineNodeMoveActionHandler

java.lang.IllegalArgumentException
	at org.eclipse.sapphire.ElementImpl.property(ElementImpl.java:337)
	at org.eclipse.sapphire.ElementImpl.property(ElementImpl.java:404)
	at org.eclipse.sapphire.ui.forms.internal.OutlineNodeMoveActionHandler.init(OutlineNodeMoveActionHandler.java:68)
	at org.eclipse.sapphire.ui.SapphireActionGroup.createActionHandlers(SapphireActionGroup.java:237)
	at org.eclipse.sapphire.ui.SapphireActionGroup.<init>(SapphireActionGroup.java:63)
	at org.eclipse.sapphire.ui.SapphirePart.getActions(SapphirePart.java:713)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation.handleKeyEvent(SapphireKeyboardActionPresentation.java:126)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation.access$0(SapphireKeyboardActionPresentation.java:106)
	at org.eclipse.sapphire.ui.forms.swt.SapphireKeyboardActionPresentation$2.handleEvent(SapphireKeyboardActionPresentation.java:81)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
	at org.eclipse.swt.widgets.Widget.wmKeyDown(Widget.java:1827)
	at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Control.java:4975)
	at org.eclipse.swt.widgets.Tree.WM_KEYDOWN(Tree.java:6137)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4643)
	at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:6005)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
	at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1450)

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422995
Releng : Readme file
Fix : Able to finish wizard or dialog with validation errors

When the user presses on the finish button in a wizard or on the ok
button in a dialog, all delayed tasks are completed before going any
further, but there is no logic to check if the pending delayed tasks
have introduced validation errors. This makes it possible to execute
finish logic when validation errors are present, if the user is quick
enough.

Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422437
Releng : Must use EGit 2.3.1 for Indigo
Enhancement : Diagram connection establishment should be customizable

Clean up connection event handling.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Diagram connection establishment should be customizable

Fix the node id -> node part lookup logic regression where new
connections between newly created nodes without valid instance ids were
not displayed. 

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419509
Enhancement : Self connections are not rendered correctly

Render self connections using oval shaped loops.

Bugzilla : https://bugs.eclipse.org/bugs/show_bug.cgi?id=419511
Fix : FindBugs issues
Fix : Cannot use the Enabled function on an element property

An exception is thrown when the Enabled function is used on an element
property or an implied element property.

org.eclipse.sapphire.modeling.el.FunctionException: Function Enabled( oracle.eclipse.tools.weblogic.descriptors.jdbc.IJdbcOracleParameters$Impl ) is undefined.
	at org.eclipse.sapphire.modeling.el.FunctionResult.value(FunctionResult.java:231)
	at org.eclipse.sapphire.ui.SapphirePart.visible(SapphirePart.java:515)
	at org.eclipse.sapphire.ui.forms.MasterDetailsContentNodePart.computeValidation(MasterDetailsContentNodePart.java:696)
	at org.eclipse.sapphire.ui.SapphirePart.refreshValidation(SapphirePart.java:453)
	at org.eclipse.sapphire.ui.forms.MasterDetailsContentNodePart.refreshNodes(MasterDetailsContentNodePart.java:662)
	at org.eclipse.sapphire.ui.forms.MasterDetailsContentNodePart.init(MasterDetailsContentNodePart.java:286)
	at org.eclipse.sapphire.ui.SapphirePart.initialize(SapphirePart.java:206)
	at org.eclipse.sapphire.ui.forms.MasterDetailsContentOutline.getRoot(MasterDetailsContentOutline.java:58)
	at org.eclipse.sapphire.ui.forms.MasterDetailsEditorPagePart.init(MasterDetailsEditorPagePart.java:57)
	at org.eclipse.sapphire.ui.SapphirePart.initialize(SapphirePart.java:206)
	at org.eclipse.sapphire.ui.SapphirePart.create(SapphirePart.java:1094)
	at org.eclipse.sapphire.ui.forms.swt.SapphireEditorFormPage.<init>(SapphireEditorFormPage.java:68)
	at org.eclipse.sapphire.ui.forms.swt.MasterDetailsEditorPage.<init>(MasterDetailsEditorPage.java:218)
	at org.eclipse.sapphire.ui.forms.swt.MasterDetailsEditorPage.<init>(MasterDetailsEditorPage.java:210)
	at org.eclipse.sapphire.ui.swt.xml.editor.SapphireEditorForXml.createFormPages(SapphireEditorForXml.java:133)
	at org.eclipse.sapphire.ui.SapphireEditor.addPages(SapphireEditor.java:489)
	at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:138)
	at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:358)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:142)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:96)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:323)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:877)
	at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:857)
	at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:119)
	at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:333)
	at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:254)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:102)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:71)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53)
	at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:129)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:949)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:633)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.showTab(StackRenderer.java:1096)
	at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer.postProcess(LazyStackRenderer.java:97)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:649)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$6.run(PartRenderingEngine.java:526)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:511)
	at org.eclipse.e4.ui.workbench.renderers.swt.ElementReferenceRenderer.createWidget(ElementReferenceRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:949)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:633)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveRenderer.processContents(PerspectiveRenderer.java:59)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveStackRenderer.showTab(PerspectiveStackRenderer.java:103)
	at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer.postProcess(LazyStackRenderer.java:97)
	at org.eclipse.e4.ui.workbench.renderers.swt.PerspectiveStackRenderer.postProcess(PerspectiveStackRenderer.java:77)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:649)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.processContents(SWTPartRenderer.java:61)
	at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.processContents(WBWRenderer.java:676)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1042)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

Tests: EnabledFunctionTests
Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=423457