Browse Source

Remove pesky +/-1 offsets in Prism.java needed for choice settings in PrismSettings.

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@7126 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Dave Parker 13 years ago
parent
commit
52203a9697
  1. 42
      prism/src/prism/Prism.java
  2. 22
      prism/src/prism/PrismSettings.java

42
prism/src/prism/Prism.java

@ -347,7 +347,7 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public void setEngine(int e) throws PrismException
{
settings.set(PrismSettings.PRISM_ENGINE, e - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_ENGINE, e);
}
public void setVerbose(boolean b) throws PrismException
@ -392,7 +392,7 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public void setLinEqMethod(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_LIN_EQ_METHOD, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_LIN_EQ_METHOD, i);
}
public void setLinEqMethodParam(double d) throws PrismException
@ -402,17 +402,17 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public void setMDPSolnMethod(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_MDP_SOLN_METHOD, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_MDP_SOLN_METHOD, i);
}
public void setMDPMultiSolnMethod(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_MDP_MULTI_SOLN_METHOD, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_MDP_MULTI_SOLN_METHOD, i);
}
public void setTermCrit(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_TERM_CRIT, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_TERM_CRIT, i);
}
public void setTermCritParam(double d) throws PrismException
@ -472,12 +472,12 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public void setSCCMethod(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_SCC_METHOD, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_SCC_METHOD, i);
}
public void setExportAdv(int i) throws PrismException
{
settings.set(PrismSettings.PRISM_EXPORT_ADV, i - 1); // note index offset correction
settings.setChoice(PrismSettings.PRISM_EXPORT_ADV, i);
}
public void setExportAdvFilename(String s) throws PrismException
@ -648,8 +648,8 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public int getEngine()
{
return settings.getInteger(PrismSettings.PRISM_ENGINE) + 1;
} //note the correction
return settings.getInteger(PrismSettings.PRISM_ENGINE);
}
/**
* Is the current engine "Explicit"?
@ -671,8 +671,8 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public int getLinEqMethod()
{
return settings.getInteger(PrismSettings.PRISM_LIN_EQ_METHOD) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_LIN_EQ_METHOD);
}
public double getLinEqMethodParam()
{
@ -681,18 +681,18 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public int getMDPSolnMethod()
{
return settings.getInteger(PrismSettings.PRISM_MDP_SOLN_METHOD) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_MDP_SOLN_METHOD);
}
public int getMDPMultiSolnMethod()
{
return settings.getInteger(PrismSettings.PRISM_MDP_MULTI_SOLN_METHOD) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_MDP_MULTI_SOLN_METHOD);
}
public int getTermCrit()
{
return settings.getInteger(PrismSettings.PRISM_TERM_CRIT) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_TERM_CRIT);
}
public double getTermCritParam()
{
@ -781,13 +781,13 @@ public class Prism extends PrismComponent implements PrismSettingsListener
public int getSCCMethod()
{
return settings.getInteger(PrismSettings.PRISM_SCC_METHOD) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_SCC_METHOD);
}
public int getExportAdv()
{
return settings.getInteger(PrismSettings.PRISM_EXPORT_ADV) + 1;
} //NOTE THE CORRECTION for the ChoiceSetting index
return settings.getChoice(PrismSettings.PRISM_EXPORT_ADV);
}
public String getExportAdvFilename()
{

22
prism/src/prism/PrismSettings.java

@ -1495,6 +1495,17 @@ public class PrismSettings implements Observer
}
}
/**
* Set the value for an option of type CHOICE_TYPE,
* with the option key given as a String, and the value as an integer index.
* This method exists to allow setting directly using 1-indexed values.
*/
public synchronized void setChoice(String key, int value) throws PrismException
{
// Adjust by 1
set(key, value - 1);
}
public synchronized void setFileSelector(String key, FileSelector select)
{
Setting set = settingFromHash(key);
@ -1556,6 +1567,17 @@ public class PrismSettings implements Observer
else return DEFAULT_BOOLEAN;
}
public synchronized int getChoice(String key)
{
Setting set = settingFromHash(key);
if(set instanceof ChoiceSetting)
{
// Adjust by 1
return ((ChoiceSetting)set).getCurrentIndex() + 1;
}
else return DEFAULT_INT;
}
public synchronized Color getColor(String key)
{
Setting set = settingFromHash(key);

Loading…
Cancel
Save