blob: f72c95825f758af61b06b4ff40b1c124af40f95d [file] [log] [blame]
/**
*
* Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation
*
*/
package org.eclipse.osbp.xtext.strategy.ui;
import org.eclipse.osbp.xtext.oxtype.imports.IUnresolvedEObjectResolver;
import org.eclipse.osbp.xtext.oxtype.ui.contentassist.OXTypeReplacingAppendable;
import org.eclipse.osbp.xtext.oxtype.ui.contentassist.OXtypeProposalProvider;
import org.eclipse.osbp.xtext.oxtype.ui.imports.InteractiveUnresolvedEClassResolver;
import org.eclipse.osbp.xtext.oxtype.ui.quickfix.CustomJavaTypeQuickfixes;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.xtext.xbase.ui.contentassist.ReplacingAppendable;
import org.eclipse.xtext.xbase.ui.quickfix.JavaTypeQuickfixes;
import org.eclipse.osbp.xtext.basic.ui.BasicDSLUiModuleHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.xtext.ui.editor.contentassist.AbstractJavaBasedContentProposalProvider;
import org.eclipse.xtext.ui.editor.hover.IEObjectHover;
import org.eclipse.xtext.ui.editor.hover.IEObjectHoverProvider;
import org.eclipse.xtext.ui.editor.hover.html.IEObjectHoverDocumentationProvider;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Use this class to register components to be used within the IDE.
*/
public class StrategyDSLUiModule extends
org.eclipse.osbp.xtext.strategy.ui.AbstractStrategyDSLUiModule {
/** The logger. */
private static Logger LOGGER = LoggerFactory
.getLogger(StrategyDSLUiModule.class);
/**
* Instantiates a new strategy DSL ui module.
*
* @param plugin
* the plugin
*/
public StrategyDSLUiModule(AbstractUIPlugin plugin) {
super(plugin);
BasicDSLUiModuleHelper.unitTestTemplates(plugin, LOGGER);
}
@Override
public Class<? extends AbstractJavaBasedContentProposalProvider.ReferenceProposalCreator> bindAbstractJavaBasedContentProposalProvider$ReferenceProposalCreator() {
return OXtypeProposalProvider.CustomReferenceProposalCreator.class;
}
@Override
public Class<? extends IEObjectHover> bindIEObjectHover() {
return StrategyDSLEObjectHover.class;
}
@Override
public Class<? extends IEObjectHoverProvider> bindIEObjectHoverProvider() {
return StrategyDSLEObjectHoverProvider.class;
}
@Override
public Class<? extends IEObjectHoverDocumentationProvider> bindIEObjectHoverDocumentationProvider() {
return StrategyDSLEObjectHoverDocumentationProvider.class;
}
@SuppressWarnings("restriction")
public Class<? extends ReplacingAppendable.Factory> bindReplacingAppendable$Factory() {
return OXTypeReplacingAppendable.Factory.class;
}
public Class<? extends IUnresolvedEObjectResolver> bindIUnresolvedEObjectResolver() {
return InteractiveUnresolvedEClassResolver.class;
}
public Class<? extends JavaTypeQuickfixes> bindJavaTypeQuickfixes() {
return CustomJavaTypeQuickfixes.class;
}
}