From 5c4471e3a4cd273bf68eb2ccc1d91f99b5c8c7bc Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Wed, 6 Mar 2019 17:26:43 -0500 Subject: Implement Enum handling and study hierarchy handling --- .../ui/AbstractVampireLanguageUiModule.java | 23 +++++--- .../VampireLanguageExecutableExtensionFactory.java | 10 ++-- .../AbstractVampireLanguageProposalProvider.java | 8 +-- ...VampireLanguageValidatorConfigurationBlock.java | 65 ++++++++++++++++++++++ .../language/ui/internal/LanguageActivator.java | 19 ++++--- 5 files changed, 100 insertions(+), 25 deletions(-) create mode 100644 Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/validation/VampireLanguageValidatorConfigurationBlock.java (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner') diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/AbstractVampireLanguageUiModule.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/AbstractVampireLanguageUiModule.java index 5ef7b226..726c20f5 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/AbstractVampireLanguageUiModule.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/AbstractVampireLanguageUiModule.java @@ -1,5 +1,5 @@ /* - * generated by Xtext 2.12.0 + * generated by Xtext 2.14.0 */ package ca.mcgill.ecse.dslreasoner.ui; @@ -11,6 +11,7 @@ import ca.mcgill.ecse.dslreasoner.ui.labeling.VampireLanguageDescriptionLabelPro import ca.mcgill.ecse.dslreasoner.ui.labeling.VampireLanguageLabelProvider; import ca.mcgill.ecse.dslreasoner.ui.outline.VampireLanguageOutlineTreeProvider; import ca.mcgill.ecse.dslreasoner.ui.quickfix.VampireLanguageQuickfixProvider; +import ca.mcgill.ecse.dslreasoner.validation.VampireLanguageValidatorConfigurationBlock; import com.google.inject.Binder; import com.google.inject.Provider; import com.google.inject.name.Names; @@ -78,6 +79,7 @@ import org.eclipse.xtext.ui.refactoring.ui.IRenameSupport; import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences; import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider; import org.eclipse.xtext.ui.shared.Access; +import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock; /** * Manual modifications go to {@link VampireLanguageUiModule}. @@ -135,6 +137,11 @@ public abstract class AbstractVampireLanguageUiModule extends DefaultUiModule { binder.bind(InternalVampireLanguageLexer.class).toProvider(LexerProvider.create(InternalVampireLanguageLexer.class)); } + // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2 + public Class bindAbstractValidatorConfigurationBlock() { + return VampireLanguageValidatorConfigurationBlock.class; + } + // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 public Class bindPrefixMatcher() { return FQNPrefixMatcher.class; @@ -222,6 +229,13 @@ public abstract class AbstractVampireLanguageUiModule extends DefaultUiModule { return VampireLanguageProposalProvider.class; } + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public void configureIPreferenceStoreInitializer(Binder binder) { + binder.bind(IPreferenceStoreInitializer.class) + .annotatedWith(Names.named("RefactoringPreferences")) + .to(RefactoringPreferences.Initializer.class); + } + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 public Class bindIRenameStrategy() { return DefaultRenameStrategy.class; @@ -232,13 +246,6 @@ public abstract class AbstractVampireLanguageUiModule extends DefaultUiModule { return DefaultReferenceUpdater.class; } - // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 - public void configureIPreferenceStoreInitializer(Binder binder) { - binder.bind(IPreferenceStoreInitializer.class) - .annotatedWith(Names.named("RefactoringPreferences")) - .to(RefactoringPreferences.Initializer.class); - } - // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 public Class bindIRenameRefactoringProvider() { return DefaultRenameRefactoringProvider.class; diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/VampireLanguageExecutableExtensionFactory.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/VampireLanguageExecutableExtensionFactory.java index 18440e58..1dc2d4cb 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/VampireLanguageExecutableExtensionFactory.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/VampireLanguageExecutableExtensionFactory.java @@ -1,10 +1,11 @@ /* - * generated by Xtext 2.12.0 + * generated by Xtext 2.14.0 */ package ca.mcgill.ecse.dslreasoner.ui; import ca.mcgill.ecse.dslreasoner.vampire.language.ui.internal.LanguageActivator; import com.google.inject.Injector; +import org.eclipse.core.runtime.Platform; import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory; import org.osgi.framework.Bundle; @@ -16,12 +17,13 @@ public class VampireLanguageExecutableExtensionFactory extends AbstractGuiceAwar @Override protected Bundle getBundle() { - return LanguageActivator.getInstance().getBundle(); + return Platform.getBundle(LanguageActivator.PLUGIN_ID); } @Override protected Injector getInjector() { - return LanguageActivator.getInstance().getInjector(LanguageActivator.CA_MCGILL_ECSE_DSLREASONER_VAMPIRELANGUAGE); + LanguageActivator activator = LanguageActivator.getInstance(); + return activator != null ? activator.getInjector(LanguageActivator.CA_MCGILL_ECSE_DSLREASONER_VAMPIRELANGUAGE) : null; } - + } diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/contentassist/AbstractVampireLanguageProposalProvider.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/contentassist/AbstractVampireLanguageProposalProvider.java index aead1baf..8e11f8c7 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/contentassist/AbstractVampireLanguageProposalProvider.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/ui/contentassist/AbstractVampireLanguageProposalProvider.java @@ -1,5 +1,5 @@ /* - * generated by Xtext 2.12.0 + * generated by Xtext 2.14.0 */ package ca.mcgill.ecse.dslreasoner.ui.contentassist; @@ -131,13 +131,13 @@ public abstract class AbstractVampireLanguageProposalProvider extends TerminalsP public void completeVLSVariable_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeVLSFunctionFof_Functor(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeVLSFunctionAsTerm_Functor(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(0)), context, acceptor); completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(1)), context, acceptor); completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(2)), context, acceptor); completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(3)), context, acceptor); } - public void completeVLSFunctionFof_Terms(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeVLSFunctionAsTerm_Terms(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } public void completeVLSDefinedTerm_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -267,7 +267,7 @@ public abstract class AbstractVampireLanguageProposalProvider extends TerminalsP public void complete_VLSFofTerm(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_VLSFunctionFof(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_VLSFunctionAsTerm(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_VLSDefinedTerm(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/validation/VampireLanguageValidatorConfigurationBlock.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/validation/VampireLanguageValidatorConfigurationBlock.java new file mode 100644 index 00000000..9faf6232 --- /dev/null +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/validation/VampireLanguageValidatorConfigurationBlock.java @@ -0,0 +1,65 @@ +/* + * generated by Xtext 2.14.0 + */ +package ca.mcgill.ecse.dslreasoner.validation; + +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.jobs.Job; +import org.eclipse.jface.dialogs.IDialogSettings; +import org.eclipse.swt.widgets.Combo; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.xtext.ui.preferences.OptionsConfigurationBlock; +import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock; +import org.eclipse.xtext.validation.SeverityConverter; + +@SuppressWarnings("restriction") +public class VampireLanguageValidatorConfigurationBlock extends AbstractValidatorConfigurationBlock { + + @Override + protected void fillSettingsPage(Composite composite, int nColumns, int defaultIndent) { + addComboBox(VampireLanguageConfigurableIssueCodesProvider.DEPRECATED_MODEL_PART, "Deprecated Model Part", composite, defaultIndent); + } + + @Override + protected Job getBuildJob(IProject project) { + Job buildJob = new OptionsConfigurationBlock.BuildJob("Validation Settings Changed", project); + buildJob.setRule(ResourcesPlugin.getWorkspace().getRuleFactory().buildRule()); + buildJob.setUser(true); + return buildJob; + } + + @Override + protected String[] getFullBuildDialogStrings(boolean workspaceSettings) { + return new String[] { "Validation Settings Changed", + "Validation settings have changed. A full rebuild is required for changes to take effect. Do the full build now?" }; + } + + @Override + protected void validateSettings(String changedKey, String oldValue, String newValue) { + } + + protected Combo addComboBox(String prefKey, String label, Composite parent, int indent) { + String[] values = new String[] { SeverityConverter.SEVERITY_ERROR, SeverityConverter.SEVERITY_WARNING, + SeverityConverter.SEVERITY_INFO, SeverityConverter.SEVERITY_IGNORE }; + String[] valueLabels = new String[] { "Error", "Warning", "Info", "Ignore" }; + Combo comboBox = addComboBox(parent, label, prefKey, indent, values, valueLabels); + return comboBox; + } + + @Override + public void dispose() { + storeSectionExpansionStates(getDialogSettings()); + super.dispose(); + } + + @Override + protected IDialogSettings getDialogSettings() { + IDialogSettings dialogSettings = super.getDialogSettings(); + IDialogSettings section = dialogSettings.getSection("VampireLanguage"); + if (section == null) { + return dialogSettings.addNewSection("VampireLanguage"); + } + return section; + } +} diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/vampire/language/ui/internal/LanguageActivator.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/vampire/language/ui/internal/LanguageActivator.java index eca3aa7f..b25ea8a3 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/vampire/language/ui/internal/LanguageActivator.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.language.ui/src-gen/ca/mcgill/ecse/dslreasoner/vampire/language/ui/internal/LanguageActivator.java @@ -1,5 +1,5 @@ /* - * generated by Xtext 2.12.0 + * generated by Xtext 2.14.0 */ package ca.mcgill.ecse.dslreasoner.vampire.language.ui.internal; @@ -8,7 +8,6 @@ import ca.mcgill.ecse.dslreasoner.ui.VampireLanguageUiModule; import com.google.common.collect.Maps; import com.google.inject.Guice; import com.google.inject.Injector; -import com.google.inject.Module; import java.util.Collections; import java.util.Map; import org.apache.log4j.Logger; @@ -23,6 +22,7 @@ import org.osgi.framework.BundleContext; */ public class LanguageActivator extends AbstractUIPlugin { + public static final String PLUGIN_ID = "ca.mcgill.ecse.dslreasoner.vampire.language.ui"; public static final String CA_MCGILL_ECSE_DSLREASONER_VAMPIRELANGUAGE = "ca.mcgill.ecse.dslreasoner.VampireLanguage"; private static final Logger logger = Logger.getLogger(LanguageActivator.class); @@ -60,10 +60,10 @@ public class LanguageActivator extends AbstractUIPlugin { protected Injector createInjector(String language) { try { - Module runtimeModule = getRuntimeModule(language); - Module sharedStateModule = getSharedStateModule(); - Module uiModule = getUiModule(language); - Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule); + com.google.inject.Module runtimeModule = getRuntimeModule(language); + com.google.inject.Module sharedStateModule = getSharedStateModule(); + com.google.inject.Module uiModule = getUiModule(language); + com.google.inject.Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule); return Guice.createInjector(mergedModule); } catch (Exception e) { logger.error("Failed to create injector for " + language); @@ -72,22 +72,23 @@ public class LanguageActivator extends AbstractUIPlugin { } } - protected Module getRuntimeModule(String grammar) { + protected com.google.inject.Module getRuntimeModule(String grammar) { if (CA_MCGILL_ECSE_DSLREASONER_VAMPIRELANGUAGE.equals(grammar)) { return new VampireLanguageRuntimeModule(); } throw new IllegalArgumentException(grammar); } - protected Module getUiModule(String grammar) { + protected com.google.inject.Module getUiModule(String grammar) { if (CA_MCGILL_ECSE_DSLREASONER_VAMPIRELANGUAGE.equals(grammar)) { return new VampireLanguageUiModule(this); } throw new IllegalArgumentException(grammar); } - protected Module getSharedStateModule() { + protected com.google.inject.Module getSharedStateModule() { return new SharedStateModule(); } + } -- cgit v1.2.3-54-g00ecf