/*
* generated by Xtext
*/
package org.eclipse.xtext.example.domainmodel.ui;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.xtext.builder.EclipseOutputConfigurationProvider;
import org.eclipse.xtext.example.domainmodel.ui.autoedit.FantasticEditStrategyProvider;
import org.eclipse.xtext.example.domainmodel.ui.linking.DomainmodelLinkingDiagnosticMessageProvider;
import org.eclipse.xtext.example.domainmodel.ui.navigation.DomainmodelHyperlinkHelper;
import org.eclipse.xtext.example.domainmodel.ui.outline.FilterOperationsContribution;
import org.eclipse.xtext.generator.IContextualOutputConfigurationProvider;
import org.eclipse.xtext.linking.ILinkingDiagnosticMessageProvider;
import org.eclipse.xtext.ui.editor.autoedit.AbstractEditStrategyProvider;
import org.eclipse.xtext.ui.editor.hyperlinking.IHyperlinkHelper;
import org.eclipse.xtext.ui.editor.outline.actions.IOutlineContribution;
import org.eclipse.xtext.xbase.file.AbstractFileSystemSupport;
import org.eclipse.xtext.xbase.ui.file.EclipseFileSystemSupportImpl;
import com.google.inject.Binder;
import com.google.inject.name.Names;
/**
* Use this class to register components to be used within the IDE.
*/
public class DomainmodelUiModule extends AbstractDomainmodelUiModule {
public DomainmodelUiModule(AbstractUIPlugin plugin) {
super(plugin);
}
public Class<? extends ILinkingDiagnosticMessageProvider> bindILinkingDiagnosticMessageProvider() {
return DomainmodelLinkingDiagnosticMessageProvider.class;
}
@Override
public Class<? extends IHyperlinkHelper> bindIHyperlinkHelper() {
return DomainmodelHyperlinkHelper.class;
}
@Override
public Class<? extends AbstractEditStrategyProvider> bindAbstractEditStrategyProvider() {
return FantasticEditStrategyProvider.class;
}
public void configureFilterOperationsOutlineContribution(Binder binder) {
binder.bind(IOutlineContribution.class).annotatedWith(Names.named("FilterOperationsContribution")).to(FilterOperationsContribution.class);
}
public Class<? extends IContextualOutputConfigurationProvider> bindIContextualOutputConfigurationProvider() {
return EclipseOutputConfigurationProvider.class;
}
public Class<? extends AbstractFileSystemSupport> bindAbstractFileSystemSupport() {
return EclipseFileSystemSupportImpl.class;
}
}