[532817] Use a single per-language marker
diff --git a/plugins/org.eclipse.qvtd.umlx.ui/plugin.properties b/plugins/org.eclipse.qvtd.umlx.ui/plugin.properties
index b27c9c5..b919ef0 100644
--- a/plugins/org.eclipse.qvtd.umlx.ui/plugin.properties
+++ b/plugins/org.eclipse.qvtd.umlx.ui/plugin.properties
@@ -12,6 +12,8 @@
pluginName = QVT Declarative UMLX User Interface (Incubation)
providerName = Eclipse QVTd
+MF_Problem = UMLX Problem
+
MF_Save_UMLX = Graphical (UMLX) Syntax
MF_Save_UMLX_Command = Save UMLX Syntax
MF_Save_UMLX_Description = Save the UMLX Syntax representation to an XMI file
diff --git a/plugins/org.eclipse.qvtd.umlx.ui/plugin.xml b/plugins/org.eclipse.qvtd.umlx.ui/plugin.xml
index 1534efe..e994057 100644
--- a/plugins/org.eclipse.qvtd.umlx.ui/plugin.xml
+++ b/plugins/org.eclipse.qvtd.umlx.ui/plugin.xml
@@ -2,6 +2,12 @@
<?eclipse version="3.0"?>
<plugin>
+ <extension point="org.eclipse.core.resources.markers"
+ id="Marker" name="%MF_Problem">
+ <super type="org.eclipse.xtext.ui.check.fast"/>
+ <persistent value="true"/>
+ </extension>
+
<extension point="org.eclipse.ui.commands">
<command id="org.eclipse.qvtd.umlx.ui.SaveUMLXCommand"
name="%MF_Save_UMLX_Command" description="%MF_Save_UMLX_Description"/>
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtbase.ui/src/org/eclipse/qvtd/xtext/qvtbase/ui/builder/QVTdBuilder.java b/plugins/org.eclipse.qvtd.xtext.qvtbase.ui/src/org/eclipse/qvtd/xtext/qvtbase/ui/builder/QVTdBuilder.java
index db710d6..ab0e164 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtbase.ui/src/org/eclipse/qvtd/xtext/qvtbase/ui/builder/QVTdBuilder.java
+++ b/plugins/org.eclipse.qvtd.xtext.qvtbase.ui/src/org/eclipse/qvtd/xtext/qvtbase/ui/builder/QVTdBuilder.java
@@ -13,6 +13,7 @@
import java.util.Map;
import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -42,6 +43,24 @@
protected @NonNull String getBuilderName() {
return "QVTd";
}
+
+ @Override
+ protected @NonNull String getMarkerId(@NonNull IFile iFile) {
+ String fileExtension = iFile.getFileExtension();
+ if ("qvtc".equals(fileExtension)) {
+ return "org.eclipse.qvtd.xtext.qvtcore.ui.Marker"; //QVTcoreUiModule.MARKER_ID;
+ }
+ else if ("qvti".equals(fileExtension)) {
+ return "org.eclipse.qvtd.xtext.qvtimperative.ui.Marker"; //QVTimperativeUiModule.MARKER_ID;
+ }
+ else if ("qvtr".equals(fileExtension)) {
+ return "org.eclipse.qvtd.xtext.qvtrelation.ui.Marker"; //QVTrelationUiModule.MARKER_ID;
+ }
+ else if ("umlx".equals(fileExtension)) {
+ return "org.eclipse.qvtd.umlx.ui.Marker"; //...UMLX....MARKER_ID;
+ }
+ return super.getMarkerId(iFile);
+ }
}
private static final Logger log = Logger.getLogger(QVTdBuilder.class);
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/plugin.xml b/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/plugin.xml
index e407afd..81dad1c 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/plugin.xml
+++ b/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/plugin.xml
@@ -150,27 +150,11 @@
<!-- marker definitions for org.eclipse.qvtd.xtext.qvtcore.QVTcore -->
- <extension
- id="qvtcore.check.fast"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
+ <extension point="org.eclipse.core.resources.markers"
+ id="Marker" name="%MF_Problem">
<super type="org.eclipse.xtext.ui.check.fast"/>
<persistent value="true"/>
</extension>
- <extension
- id="qvtcore.check.normal"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.normal"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="qvtcore.check.expensive"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.expensive"/>
- <persistent value="true"/>
- </extension>
<!-- Quick Outline -->
<extension
@@ -210,28 +194,12 @@
point="org.eclipse.ui.ide.markerResolution">
<markerResolutionGenerator
class="org.eclipse.qvtd.xtext.qvtcore.ui.QVTcoreExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtcore.ui.qvtcore.check.fast">
+ markerType="org.eclipse.qvtd.xtext.qvtcore.ui.Marker">
<attribute
name="FIXABLE_KEY"
value="true">
</attribute>
</markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtcore.ui.QVTcoreExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtcore.ui.qvtcore.check.normal">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtcore.ui.QVTcoreExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtcore.ui.qvtcore.check.expensive">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
</extension>
<extension point="org.eclipse.ui.menus">
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/src/org/eclipse/qvtd/xtext/qvtcore/ui/QVTcoreUiModule.java b/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/src/org/eclipse/qvtd/xtext/qvtcore/ui/QVTcoreUiModule.java
index 11c22ed..21ffb0c 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/src/org/eclipse/qvtd/xtext/qvtcore/ui/QVTcoreUiModule.java
+++ b/plugins/org.eclipse.qvtd.xtext.qvtcore.ui/src/org/eclipse/qvtd/xtext/qvtcore/ui/QVTcoreUiModule.java
@@ -26,6 +26,7 @@
{
public static final String PLUGIN_ID = "org.eclipse.qvtd.xtext.qvtcore.ui";
public static final String EDITOR_ID = QVTcoreActivator.ORG_ECLIPSE_QVTD_XTEXT_QVTCORE_QVTCORE;
+ public static final String MARKER_ID = "org.eclipse.qvtd.xtext.qvtcore.ui.Marker";
public QVTcoreUiModule(AbstractUIPlugin plugin) {
super(plugin);
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/plugin.xml b/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/plugin.xml
index 16934c5..d3ea5af 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/plugin.xml
+++ b/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/plugin.xml
@@ -150,27 +150,11 @@
<!-- marker definitions for org.eclipse.qvtd.xtext.qvtimperative.QVTimperative -->
- <extension
- id="qvtimperative.check.fast"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
+ <extension point="org.eclipse.core.resources.markers"
+ id="Marker" name="%MF_Problem">
<super type="org.eclipse.xtext.ui.check.fast"/>
<persistent value="true"/>
</extension>
- <extension
- id="qvtimperative.check.normal"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.normal"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="qvtimperative.check.expensive"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.expensive"/>
- <persistent value="true"/>
- </extension>
<!-- Quick Outline -->
<extension
@@ -210,28 +194,12 @@
point="org.eclipse.ui.ide.markerResolution">
<markerResolutionGenerator
class="org.eclipse.qvtd.xtext.qvtimperative.ui.QVTimperativeExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtimperative.ui.qvtimperative.check.fast">
+ markerType="org.eclipse.qvtd.xtext.qvtimperative.ui.Marker">
<attribute
name="FIXABLE_KEY"
value="true">
</attribute>
</markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtimperative.ui.QVTimperativeExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtimperative.ui.qvtimperative.check.normal">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtimperative.ui.QVTimperativeExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtimperative.ui.qvtimperative.check.expensive">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
</extension>
<extension point="org.eclipse.ui.menus">
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/src/org/eclipse/qvtd/xtext/qvtimperative/ui/QVTimperativeUiModule.java b/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/src/org/eclipse/qvtd/xtext/qvtimperative/ui/QVTimperativeUiModule.java
index 4e5ddde..f2126dd 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/src/org/eclipse/qvtd/xtext/qvtimperative/ui/QVTimperativeUiModule.java
+++ b/plugins/org.eclipse.qvtd.xtext.qvtimperative.ui/src/org/eclipse/qvtd/xtext/qvtimperative/ui/QVTimperativeUiModule.java
@@ -26,6 +26,7 @@
{
public static final String PLUGIN_ID = "org.eclipse.qvtd.xtext.qvtimperative.ui";
public static final String EDITOR_ID = QVTimperativeActivator.ORG_ECLIPSE_QVTD_XTEXT_QVTIMPERATIVE_QVTIMPERATIVE;
+ public static final String MARKER_ID = "org.eclipse.qvtd.xtext.qvtimperative.ui.Marker";
public QVTimperativeUiModule(AbstractUIPlugin plugin) {
super(plugin);
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/plugin.xml b/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/plugin.xml
index efcaa45..29cafc9 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/plugin.xml
+++ b/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/plugin.xml
@@ -153,27 +153,12 @@
<!-- marker definitions for org.eclipse.qvtd.xtext.qvtrelation.QVTrelation -->
- <extension
- id="qvtrelation.check.fast"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
+ <extension point="org.eclipse.core.resources.markers"
+ id="Marker" name="%MF_Problem">
<super type="org.eclipse.xtext.ui.check.fast"/>
<persistent value="true"/>
</extension>
- <extension
- id="qvtrelation.check.normal"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.normal"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="qvtrelation.check.expensive"
- name="%MF_Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.expensive"/>
- <persistent value="true"/>
- </extension>
+
<!-- Quick Outline -->
<extension
@@ -213,23 +198,7 @@
point="org.eclipse.ui.ide.markerResolution">
<markerResolutionGenerator
class="org.eclipse.qvtd.xtext.qvtrelation.ui.QVTrelationExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtrelation.ui.qvtrelation.check.fast">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtrelation.ui.QVTrelationExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtrelation.ui.qvtrelation.check.normal">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.qvtd.xtext.qvtrelation.ui.QVTrelationExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.qvtd.xtext.qvtrelation.ui.qvtrelation.check.expensive">
+ markerType="org.eclipse.qvtd.xtext.qvtrelation.ui.Marker">
<attribute
name="FIXABLE_KEY"
value="true">
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/src/org/eclipse/qvtd/xtext/qvtrelation/ui/QVTrelationUiModule.java b/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/src/org/eclipse/qvtd/xtext/qvtrelation/ui/QVTrelationUiModule.java
index 4160910..788055a 100644
--- a/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/src/org/eclipse/qvtd/xtext/qvtrelation/ui/QVTrelationUiModule.java
+++ b/plugins/org.eclipse.qvtd.xtext.qvtrelation.ui/src/org/eclipse/qvtd/xtext/qvtrelation/ui/QVTrelationUiModule.java
@@ -26,6 +26,7 @@
{
public static final String PLUGIN_ID = "org.eclipse.qvtd.xtext.qvtrelation.ui";
public static final String EDITOR_ID = QVTrelationActivator.ORG_ECLIPSE_QVTD_XTEXT_QVTRELATION_QVTRELATION;
+ public static final String MARKER_ID = "org.eclipse.qvtd.xtext.qvtrelation.ui.Marker";
public QVTrelationUiModule(AbstractUIPlugin plugin) {
super(plugin);