Search in sources :

Example 1 with IEObjectDocumentationProvider

use of org.eclipse.xtext.documentation.IEObjectDocumentationProvider in project dsl-devkit by dsldevkit.

the class DocumentedImplCustom method getDescription.

/**
 * {@inheritDoc}
 */
@Override
public String getDescription() {
    if (!this.eIsProxy() && this.eResource() != null) {
        IResourceServiceProvider serviceProvider = IResourceServiceProvider.Registry.INSTANCE.getResourceServiceProvider(this.eResource().getURI());
        if (serviceProvider != null) {
            IEObjectDocumentationProvider documentationProvider = serviceProvider.get(IEObjectDocumentationProvider.class);
            String documentation = documentationProvider.getDocumentation(this);
            if (!Strings.isEmpty(documentation)) {
                // NOPMD
                return documentation;
            }
        }
    }
    return null;
}
Also used : IResourceServiceProvider(org.eclipse.xtext.resource.IResourceServiceProvider) IEObjectDocumentationProvider(org.eclipse.xtext.documentation.IEObjectDocumentationProvider)

Example 2 with IEObjectDocumentationProvider

use of org.eclipse.xtext.documentation.IEObjectDocumentationProvider in project xtext-eclipse by eclipse.

the class DefaultEObjectHoverProviderTest method testElementHasNoDocumentation.

@Test
public void testElementHasNoDocumentation() throws Exception {
    with(getTestLanguageSetup(new IEObjectDocumentationProvider() {

        @Override
        public String getDocumentation(EObject o) {
            return null;
        }
    }));
    File f = (File) getModel("stuff test");
    DefaultEObjectHoverProvider cut = get(DefaultEObjectHoverProvider.class);
    assertTrue(getHtml(f.getStuff().get(0), cut).contains("Stuff <b>test</b>"));
}
Also used : EObject(org.eclipse.emf.ecore.EObject) IEObjectDocumentationProvider(org.eclipse.xtext.documentation.IEObjectDocumentationProvider) File(org.eclipse.xtext.ui.tests.foo.File) DefaultEObjectHoverProvider(org.eclipse.xtext.ui.editor.hover.html.DefaultEObjectHoverProvider) Test(org.junit.Test)

Example 3 with IEObjectDocumentationProvider

use of org.eclipse.xtext.documentation.IEObjectDocumentationProvider in project xtext-eclipse by eclipse.

the class DefaultEObjectHoverProviderTest method testElementHasDocumentation.

@Test
public void testElementHasDocumentation() throws Exception {
    with(getTestLanguageSetup(new IEObjectDocumentationProvider() {

        @Override
        public String getDocumentation(EObject o) {
            return "Test";
        }
    }));
    File f = (File) getModel("stuff test");
    DefaultEObjectHoverProvider cut = get(DefaultEObjectHoverProvider.class);
    assertTrue(getHtml(f.getStuff().get(0), cut).contains("Stuff <b>test</b><p>Test</p>"));
}
Also used : EObject(org.eclipse.emf.ecore.EObject) IEObjectDocumentationProvider(org.eclipse.xtext.documentation.IEObjectDocumentationProvider) File(org.eclipse.xtext.ui.tests.foo.File) DefaultEObjectHoverProvider(org.eclipse.xtext.ui.editor.hover.html.DefaultEObjectHoverProvider) Test(org.junit.Test)

Aggregations

IEObjectDocumentationProvider (org.eclipse.xtext.documentation.IEObjectDocumentationProvider)3 EObject (org.eclipse.emf.ecore.EObject)2 DefaultEObjectHoverProvider (org.eclipse.xtext.ui.editor.hover.html.DefaultEObjectHoverProvider)2 File (org.eclipse.xtext.ui.tests.foo.File)2 Test (org.junit.Test)2 IResourceServiceProvider (org.eclipse.xtext.resource.IResourceServiceProvider)1