Java源码示例:org.eclipse.xtext.ui.editor.embedded.EmbeddedEditor
示例1
protected SourceViewer createViewer(final Composite parent) {
final Builder editorBuilder = configuration.getEmbeddedEditorFactory().newEditor(resourceProvider);
editorBuilder.processIssuesBy((issues, monitor) -> {
IStatus result = Status.OK_STATUS;
final StringBuilder messages = new StringBuilder();
for (final Issue issue : issues) {
if (issue.getSeverity() == Severity.ERROR) {
if (messages.length() != 0) {
messages.append('\n');
}
messages.append(issue.getMessage());
}
}
if (messages.length() != 0) {
result = createErrorStatus(messages.toString(), null);
}
final IStatus toBeUpdated = result;
getShell().getDisplay().asyncExec(() -> updateStatus(toBeUpdated));
});
final EmbeddedEditor handle = editorBuilder.withParent(parent);
partialModelEditor = handle.createPartialEditor(getPrefix(), data.getTemplate().getPattern(), "", true);
return handle.getViewer();
}
示例2
protected SourceViewer createViewer(Composite parent) {
Builder editorBuilder = configuration.getEmbeddedEditorFactory().newEditor(resourceProvider);
editorBuilder.processIssuesBy(new IValidationIssueProcessor() {
@Override
public void processIssues(List<Issue> issues, IProgressMonitor monitor) {
IStatus result = Status.OK_STATUS;
StringBuilder messages = new StringBuilder();
for(Issue issue: issues) {
if (issue.getSeverity() == Severity.ERROR) {
if (messages.length() != 0)
messages.append('\n');
messages.append(issue.getMessage());
}
}
if (messages.length() != 0) {
result = createErrorStatus(messages.toString(), null);
}
final IStatus toBeUpdated = result;
getShell().getDisplay().asyncExec(new Runnable() {
@Override
public void run() {
updateStatus(toBeUpdated);
}
});
}
});
EmbeddedEditor handle = editorBuilder.withParent(parent);
partialModelEditor = handle.createPartialEditor(getPrefix(), fTemplate.getPattern(), "", true);
return handle.getViewer();
}
示例3
public XtendFormatterPreview forEmbeddedEditor(EmbeddedEditor editorHandle) {
if (this.editorHandle != null) {
throw new IllegalStateException("This formatter preview is already binded to an embedet editor");
}
this.editorHandle = editorHandle;
this.modelAccess = editorHandle.createPartialEditor();
this.marginPainter = new MarginPainter(editorHandle.getViewer());
final RGB rgb = PreferenceConverter.getColor(preferenceStoreAccess.getPreferenceStore(),
AbstractDecoratedTextEditorPreferenceConstants.EDITOR_PRINT_MARGIN_COLOR);
marginPainter.setMarginRulerColor(EditorUtils.colorFromRGB(rgb));
editorHandle.getViewer().addPainter(marginPainter);
return this;
}
示例4
public XtendFormatterPreview createNewPreview(Composite composite, String previewContent) {
XtendFormatterPreview formatterPreview = new XtendFormatterPreview();
memberInjector.injectMembers(formatterPreview);
EmbeddedEditor embeddedEditor = editorFactory.newEditor(resourceProvider)
.withResourceValidator(IResourceValidator.NULL).readOnly().withParent(composite);
return formatterPreview.forEmbeddedEditor(embeddedEditor).withPreviewContent(previewContent);
}
示例5
protected EmbeddedEditor createSpecificationEditor() {
ContextScopeHandler.defineContext(EMBEDDED_TEXT_EDITOR_SCOPE, TEXT_EDITOR_SCOPE);
EmbeddedEditor embeddedEditor = createEmbeddedEditor();
embeddedEditor.createPartialEditor();
GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(embeddedEditor.getViewer().getControl());
StyledText text = embeddedEditor.getViewer().getTextWidget();
text.setAlwaysShowScrollBars(false);
text.setSelection(0);
text.setKeyBinding(SWT.MOD1 | SWT.KEY_MASK & 'a', ST.SELECT_ALL);
initXtextSelectionProvider(text);
initContextMenu(text);
text.addModifyListener((event) -> editorPart.firePropertyChange(IEditorPart.PROP_DIRTY));
text.setEnabled(editorPart.isEditable());
return embeddedEditor;
}
示例6
private void createEditor() {
EmbeddedEditor editor = editorFactory.newEditor(this::createTempResource).withParent(this);
editor.getViewer().getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
// Initialize the document
editor.createPartialEditor(true);
editorDocument = editor.getDocument();
sourceViewer = editor.getViewer();
configureSourceViewer(sourceViewer);
// Clear content
editorDocument.set("");
}
示例7
@Override
protected SourceViewer createViewer(Composite parent) {
EmbeddedEditor handle = configuration.getEmbeddedEditorFactory().newEditor(resourceProvider).readOnly().withParent(parent);
partialEditor = handle.createPartialEditor(true);
return handle.getViewer();
}
示例8
protected EmbeddedEditor createEmbeddedEditor() {
Injector embeddedEditorInjector = getEmbeddedStatechartSpecificationInjector();
EmbeddedEditorFactory instance = embeddedEditorInjector.getInstance(EmbeddedEditorFactory.class);
IEditedResourceProvider provider = getXtextResourceProvider(embeddedEditorInjector);
return instance.newEditor(provider).showErrorAndWarningAnnotations().withParent(this);
}