diff --git a/de.prob.core/src/de/prob/core/command/LoadEventBModelCommand.java b/de.prob.core/src/de/prob/core/command/LoadEventBModelCommand.java index 7a95e7d77046bee597733d5543142987e62ea4a3..0c3c055d6b67c03c6580e99b9f87e318b49e397e 100644 --- a/de.prob.core/src/de/prob/core/command/LoadEventBModelCommand.java +++ b/de.prob.core/src/de/prob/core/command/LoadEventBModelCommand.java @@ -6,15 +6,24 @@ package de.prob.core.command; -import java.util.*; - -import org.eventb.core.*; -import org.osgi.service.prefs.*; +import java.util.Collection; +import java.util.HashSet; +import java.util.Set; + +import org.eventb.core.IContextRoot; +import org.eventb.core.IEventBRoot; +import org.eventb.core.IMachineRoot; +import org.osgi.service.prefs.BackingStoreException; +import org.osgi.service.prefs.Preferences; import org.rodinp.core.RodinDBException; -import de.prob.core.*; +import de.prob.core.Animator; +import de.prob.core.LanguageDependendAnimationPart; import de.prob.core.command.internal.InternalLoadCommand; -import de.prob.core.domainobjects.*; +import de.prob.core.domainobjects.MachineDescription; +import de.prob.core.domainobjects.Operation; +import de.prob.core.domainobjects.ProBPreference; +import de.prob.core.domainobjects.State; import de.prob.core.langdep.EventBAnimatorPart; import de.prob.exceptions.ProBException; import de.prob.logging.Logger; @@ -88,7 +97,19 @@ public final class LoadEventBModelCommand { Operation.NULL_OPERATION); if (commandResult.isTimeoutOccured() && context) { - final String message = "A timeout occured when finding constants. Typically this means, that your axioms are too complicated for automatical solving. You might create an animation refinement using the context menu to help ProB finding a solution."; + final String message; + int solsFound = explore.getState().getEnabledOperations().size(); + if (solsFound > 0) { + message = "A timeout occured when finding constants after finding " + + solsFound + + " solution(s)." + + " Typically this means, that your axioms are too complicated for automatical solving. " + + "You might create an animation refinement using the context menu to help ProB finding all solutions."; + } else { + message = "A timeout occured when finding constants." + + " Typically this means, that your axioms are too complicated for automatical solving. " + + "You might create an animation refinement using the context menu to help ProB finding a solution."; + } Logger.notifyUserWithoutBugreport(message); }