I've been playing around with it and ended up deciding to create a new workspace, this reduced the errors to just three:
Referenced identifier 'org.eclipse.wst.common.snippets.internal.ui.SnippetsView' in attribute 'id' cannot be found plugin.xml /org.eclipse.wst.xml.ui line 1610 Plug-in Problem
Referenced identifier 'org.eclipse.wst.dtd.ui.internal.wizard.NewDTDWizard' in attribute 'id' cannot be found plugin.xml /org.eclipse.wst.xml.ui line 1619 Plug-in Problem
Referenced identifier 'org.eclipse.wst.xsd.ui.internal.wizards.NewXSDWizard' in attribute 'id' cannot be found plugin.xml /org.eclipse.wst.xml.ui line 1618 Plug-in Problem
And 4413 warnings about dead code and discouraged access from what I can see given the filter.
So I must have corrupted the target platform settings in that workspace or something.
Anyway, I've made progress using Eugene's suggestion... I've now got a third tab called 'Preview' showing a simple hello world SWT label. This is the code for the editor:
public class WTKXEditor extends XMLMultiPageEditorPart {
private StructuredTextEditor fTextEditor;
private PivotPreviewControl fPreview;
@Override
protected void createPages() {
super.createPages();
setupPreviewPage();
}
private void setupPreviewPage() {
// create the page
fPreview = new PivotPreviewControl(getContainer(), getDocument());
// add the page
setPageText(addPage(fPreview), "Preview");
}
@Override
public void dispose() {
fPreview.dispose();
super.dispose();
}
private IDocument getDocument() {
IDocument document = null;
if (fTextEditor != null) {
document = fTextEditor.getDocumentProvider().getDocument(
fTextEditor.getEditorInput());
}
return document;
}
@Override
public int addPage(IEditorPart editor, IEditorInput input)
throws PartInitException {
if (editor instanceof StructuredTextEditor) {
fTextEditor = (StructuredTextEditor) editor;
}
return super.addPage(editor, input);
}
}
Feeling productive now, so thanks for your help, though any further comments always welcome. :)
Cheers,
Chris