diff --git a/com.avaloq.tools.ddk.xtext.format.ui/.classpath b/com.avaloq.tools.ddk.xtext.format.ui/.classpath
index b053a34141..1000c917c2 100644
--- a/com.avaloq.tools.ddk.xtext.format.ui/.classpath
+++ b/com.avaloq.tools.ddk.xtext.format.ui/.classpath
@@ -8,7 +8,6 @@
-
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/.project b/com.avaloq.tools.ddk.xtext.format.ui/.project
index 1d05daa331..2534ac78ff 100644
--- a/com.avaloq.tools.ddk.xtext.format.ui/.project
+++ b/com.avaloq.tools.ddk.xtext.format.ui/.project
@@ -20,11 +20,6 @@
-
- org.eclipse.xtext.ui.shared.xtextBuilder
-
-
-
net.sf.eclipsecs.core.CheckstyleBuilder
@@ -44,7 +39,6 @@
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
- org.eclipse.xtext.ui.shared.xtextNature
net.sourceforge.pmd.eclipse.plugin.pmdNature
net.sf.eclipsecs.core.CheckstyleNature
edu.umd.cs.findbugs.plugin.eclipse.findbugsNature
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/META-INF/MANIFEST.MF b/com.avaloq.tools.ddk.xtext.format.ui/META-INF/MANIFEST.MF
index ac9c91bc1f..fdd0b2e7dd 100644
--- a/com.avaloq.tools.ddk.xtext.format.ui/META-INF/MANIFEST.MF
+++ b/com.avaloq.tools.ddk.xtext.format.ui/META-INF/MANIFEST.MF
@@ -24,9 +24,7 @@ Require-Bundle: com.avaloq.tools.ddk.xtext.format;visibility:=reexport,
org.eclipse.xtext,
org.eclipse.xtext.xbase.ui,
org.eclipse.jdt.debug.ui,
- org.eclipse.xtext.xbase.lib,
- org.eclipse.xtext.ui.codetemplates.ui,
- org.eclipse.xtend.lib;resolution:=optional
+ org.eclipse.xtext.ui.codetemplates.ui
Import-Package: org.apache.log4j
Bundle-RequiredExecutionEnvironment: JavaSE-21
Export-Package: com.avaloq.tools.ddk.xtext.format.ui.builder,
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/build.properties b/com.avaloq.tools.ddk.xtext.format.ui/build.properties
index 31255ed05b..e10dcceb6a 100644
--- a/com.avaloq.tools.ddk.xtext.format.ui/build.properties
+++ b/com.avaloq.tools.ddk.xtext.format.ui/build.properties
@@ -1,6 +1,5 @@
source.. = src/,\
- src-gen/,\
- xtend-gen/
+ src-gen/
bin.includes = META-INF/,\
.,\
plugin.xml
\ No newline at end of file
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.java b/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.java
new file mode 100644
index 0000000000..95820e4280
--- /dev/null
+++ b/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Avaloq Group AG and others.
+ * 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:
+ * Avaloq Group AG - initial API and implementation
+ *******************************************************************************/
+package com.avaloq.tools.ddk.xtext.format.ui;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.eclipse.xtext.builder.IXtextBuilderParticipant;
+import org.eclipse.xtext.ui.editor.hyperlinking.IHyperlinkHelper;
+import org.eclipse.xtext.ui.editor.templates.CrossReferenceTemplateVariableResolver;
+import org.eclipse.xtext.xtext.generator.model.project.IXtextProjectConfig;
+import org.eclipse.xtext.xtext.generator.model.project.XtextProjectConfig;
+
+import com.avaloq.tools.ddk.xtext.format.ui.builder.FormatBuilderParticipant;
+import com.avaloq.tools.ddk.xtext.format.ui.hyperlinking.FormatHyperlinkHelper;
+import com.avaloq.tools.ddk.xtext.ui.templates.KeywordAwareCrossReferenceTemplateVariableResolver;
+import com.google.inject.Binder;
+
+/**
+ * Use this class to register components to be used within the Eclipse IDE.
+ */
+public class FormatUiModule extends AbstractFormatUiModule {
+
+ public FormatUiModule(final AbstractUIPlugin plugin) {
+ super(plugin);
+ }
+
+ /**
+ * Binds a {@link CrossReferenceTemplateVariableResolver} which prefixes keywords with escape characters.
+ *
+ * @return {@link KeywordAwareCrossReferenceTemplateVariableResolver}
+ */
+ public Class extends CrossReferenceTemplateVariableResolver> bindCrossReferenceTemplateVariableResolver() {
+ return KeywordAwareCrossReferenceTemplateVariableResolver.class;
+ }
+
+ /**
+ * Bind hyperlink helper to provide hyperlinking from "override" keyword to extended rule.
+ *
+ * @return FormatHyperlinkHelper.class
+ */
+ @Override
+ public Class extends IHyperlinkHelper> bindIHyperlinkHelper() {
+ return FormatHyperlinkHelper.class;
+ }
+
+ @Override
+ public Class extends IXtextBuilderParticipant> bindIXtextBuilderParticipant() {
+ return FormatBuilderParticipant.class;
+ }
+
+ @Override
+ public void configure(final Binder binder) {
+ super.configure(binder);
+ binder.bind(IXtextProjectConfig.class).to(XtextProjectConfig.class);
+ }
+}
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.xtend b/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.xtend
deleted file mode 100644
index a155019e0d..0000000000
--- a/com.avaloq.tools.ddk.xtext.format.ui/src/com/avaloq/tools/ddk/xtext/format/ui/FormatUiModule.xtend
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * generated by Xtext 2.14.0
- */
-package com.avaloq.tools.ddk.xtext.format.ui
-
-import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor
-import org.eclipse.xtext.ui.editor.templates.CrossReferenceTemplateVariableResolver
-import com.avaloq.tools.ddk.xtext.ui.templates.KeywordAwareCrossReferenceTemplateVariableResolver
-import com.avaloq.tools.ddk.xtext.format.ui.hyperlinking.FormatHyperlinkHelper
-import com.avaloq.tools.ddk.xtext.format.ui.builder.FormatBuilderParticipant
-import org.eclipse.xtext.xtext.generator.model.project.IXtextProjectConfig
-import org.eclipse.xtext.xtext.generator.model.project.XtextProjectConfig
-import com.google.inject.Binder
-
-/**
- * Use this class to register components to be used within the Eclipse IDE.
- */
-@FinalFieldsConstructor
-class FormatUiModule extends AbstractFormatUiModule {
-
- /**
- * Binds a {@link CrossReferenceTemplateVariableResolver} which prefixes keywords with escape characters.
- *
- * @return {@link KeywordAwareCrossReferenceTemplateVariableResolver}
- */
- def Class extends CrossReferenceTemplateVariableResolver> bindCrossReferenceTemplateVariableResolver() {
- return KeywordAwareCrossReferenceTemplateVariableResolver
- }
-
- /**
- * Bind hyperlink helper to provide hyperlinking from "override" keyword to extended rule.
- *
- * @return FormatHyperlinkHelper.class
- */
- override bindIHyperlinkHelper() {
- return FormatHyperlinkHelper
- }
-
- override bindIXtextBuilderParticipant() {
- return FormatBuilderParticipant
- }
-
- override configure(Binder binder) {
- super.configure(binder);
- binder.bind(IXtextProjectConfig).to(XtextProjectConfig);
- }
-}
diff --git a/com.avaloq.tools.ddk.xtext.format.ui/xtend-gen/.gitignore b/com.avaloq.tools.ddk.xtext.format.ui/xtend-gen/.gitignore
deleted file mode 100644
index e69de29bb2..0000000000