On Apr 6, 2006, at 9:27 PM, Mike Little wrote:
> I will send this directly to you in consideration of those on the
> mailing list (if others are interested just let me know). BTW, do you
> have a summary of notable changes in ver.11?
Here are the big five. #2 is the only one that will likely require
changes in your code.
0. Schedule no longer needs to be constructed with a specified number
of orderings. You can schedule any item with any ordering you like
-- all the items at a given time will be extracted and sorted
according to their ordering (positive or negative even) and then
evaluated in that order. Ties broken randomly.
1. To kill the simulation programmatically, you can call SimState.kill()
2. GUIState.getName() and GUIState.getInfo() have been changed. You
have to write them this way now:
public static String getName()
public static Object getInfo() // returns a URL or String
Note the 'static'. If you don't implement getInfo(), MASON will
search for a file called "index.html", preferring the one in the
directory where your GUIState subclass is located, but if there's not
one there, it'll look elsewhere, often crazy places -- a Java
stupidity. Check out how we do it in our examples: we implement
getName() but don't implement getInfo(), and instead provide an
index.html file for each example. This change enables the pretty
window that pops up now when choosing a new simulation.
3. This is probably the one most everyone has noticed: the
"magnifying glass" icon leading to charting etc. This is dynamically
loaded per-property inspectors. We provide two built-in ones:
StreamingPropertyInspector (tracks out to stdout, to a file, to a
window, etc.) and ChartingPropertyInspector (charts to a time-series
graph). You can add additional property inspectors loaded at runtime
by modifying the sim/portrayal/inspector/propertyinspector.classes
file. I like this feature particularly -- you can add property
inspectors which track or chart ANY property in the system
4. SimplePortrayal2D now always returns false on hit-testing as it's
supposed to be invisible. And OrientedPortrayal2D tests for hits on
its oriented directional indicators.
There's a ton of bug fixes and efficiency changes etc. The complete
collection is in the CHANGES file. Also we've spent some time on the
documentation -- and there are a lot of new items in the 'howto.html'