Changes Before Version 4.0.5
- Added tests for ExtremaTestTransform, ReadFromFileTransform,
SelectColumnsTransform, and WriteToFileTransform
- Fixed a bug in NullDataElement to prevent exception when forcing real value
on a malformed string
- Added optimization to SelectColumnsTransform to not make a flipped element
when zero columns are picked
- Renamed ProgrammaticDataGenerator to NullProgrammaticDataGenerator and
ProgrammaticDataSource to ProgrammaticDataGenerator with equivalent changes in
implementation
- Made MenuManager give a better error message when its unable to find the
resource for a class
- Split the SBML parser out of the Model Builder
- Added ability to parse SBML from a string and changed VTRunOAA to use
it
- Fixed loading of JCRMIT to get a working run manager when the run file
attribute is set directly
- Revised the input and output descriptions for existing transforms
- Fixed display of input and output descriptions
- Created input and output descriptions for existing objectives
- Made the background for transform and objective input and output
descriptions transparent
- Created helper functions in InterfaceManager for building and displaying
HTML viewers
- Created helper function in InterfaceManager for fitting components into a
dialog
- Added the ability to view the stack trace that caused an error
- Cleaned up inconsistent handling of temporary storage and exceptions during
loading
- Refactored source loading code in views to move most functionality to
BasicPanelTab, eliminate many instance variables, and not expose a run
method
- Made CompareFE trap assertions and uncaught errors to display
- Converted much of the input checking in DefaultTransformEvaluationContext
to assertions
- Removed the ability to have parent contexts and many unused methods from
TransformEvaluationContext and DefaultTransformEvaluationContext
- Converted support for GeneratorEvaluationDebugger from a single listener
callback to multiple listener events and renamed the interface to
ProgrammaticDataGeneratorListener
- Added support for listening to evaluation events from individual generators
as well as from transform evaluation contexts
- Added support for programmatic data generators to report that an error
occured during evaluation
- Simplified handling of debugging state in TransformDebugger and moved some
functionality to the debugger thread
- Eliminated some of the convenience methods for stepping through transforms
in TransformDebugger
- Fixed bug in TransformDebugger when setting the customizer view to
null
- Fixed bug in MEOSummaryView where executed transforms lost their Compare
instance and compatible transforms list
- Added a listener interface for receiving updates about transforms in an
evaluation context
- Converted TransformEvaluationTransform to listen to context events instead
of using a PropertyChangeListener for finding out about new transforms
- Moved storage for the name and displayable comment of a data generator to
attributes
- Moved storage for attributes and transient attributes to data source
options
- Eliminated unused methods in NullDataGenerator and
EditableDataGenerator
- Moved setAttribute, setTransientAttribute from EditableDataGenerator to
NullDataGenerator
- Implemented getState and setState for NullDataGenerator
- Moved all control over attributes from EditableDataGenerator to
NullDataGenerator
- Deprecated setCommand and removed the override of setComment in
InputTransform
- Fixed display bug in InputTransform interface when loaded
- Fixed bug in SelectColumnsTransform where the list of available columns did
not immediately appear
- Fixed bug in JCRMIT when getting the annotation with a run file but no run
number
- Separated the settings for the customizer interface and customizer class
and converted storage from attributes to options
- Made attribute implementation just be thin wrappers over data source
options
- Merged much of the code for handling state information and persistence
between EditableDataGenerator, NullDataGenerator, and NullDataSource
- Changed InterfaceManager to wrap the display of large error messages in a
scroll pane
- Added explicit error reporting for all exceptional conditions in existing
transforms and objective functions
- Added addOption method to DataSource to allow other classes to register an
option
- Moved OptionType from NullDataSource to DataSource so it could be used with
addOption
- Converted all uses of setTransientAttribute to setOption plus either
addOption or setOptionType as appropriate
- Changed setOption to check for equality before assignment in
EditableDataGenerator
- Removed getTransientAttribute and setTransientAttribute
- Converted the transforms held by a container to a data source option
- Changed CustomizableInterface to use similar methods as
CustomizableDataGenerator for customizers
- Added additional cleanup to customizers in NullProgrammaticDataGenerator
and TransformStatement
- Revamped customizer creation in TransformStatement and TransformHelper
- Fixed resetting the border of a transform when its name changes
- Modified FunctionalDataGenerator to use the GUID of a generator rather than
its name
- Eliminated setNameDirect function from ProgrammaticDataGenerator and
EditableDataGenerator
- Moved setName function from EditableDataGenerator to NullDataGenerator
- Switched order of lock acquisition to function before transform in
MEOSummaryView
- Eliminated some unused functions in DataGeneratorEvaluator
- Consolidated many uses of ComponentListener to a HierarchyListener in
BasicTable
- Replaced all uses of COLUMN and COLUMNNAME variables with support for
manging columns in BasicTable
- Eliminated some unused methods in BasicTable
- Cleaned up the getValueAt, setValueAt, editCellAt, and viewCellAt methods
of many of the table models
- Consolidated many uses of table cell renderers in a new
BasicTable.BasicTableRenderer class
- Added helper methods to BasicTableRenderer for managing colors
- Converted all current renderer color users to use helper methods
- Added a viewer to display errors announced by a
ProgrammaticDataGenerator
- Enabled viewing errors in ModelDataSeriesView and MEOSummaryView
- Added ability to clear past errors in the error viewer
- Changed MetricDataGenerator to pass on some options and listeners for
evaluation to its metric
- Added a new resizing algorithm to BasicTable
- Added support for sizing columns by weights to BasicTable
- Created a renderer and editor for using buttons in tables
- Added button to errors in the error viewer to display more information
about the error
- Added property change notifications to options and made data source listen
to their property changes
- Replaced overrides of setOption with property change listeners
- Changed CustomizableInterface to take a parameter indicating the changed
option when updating
- Changed existing interfaces to filter update interface events to prevent
unnecessary work
- Fixed copying the contained transforms of a container to another
container
- Added more documentation for creating a transform
- Added more documentation for using a data element
- Revised documentation on data elements
- Moved the TypeChecker interface from jigcell.compare.impl.type to
jigcell.compare
- Added new options to ProgrammaticDataGenerator for associating a type
checker with the generator input and output
- Made the existing benchmarks for experiment and transform loading
performance more realistic
- Added a benchmark for object loading performance
- Delayed the creation of a menu manager in NullProgrammaticDataGenerator
until a customizer is created
- Delated the creation of a popup menu in NullProgrammaticDataGenerator until
a popup is triggered
- Refactored performance benchmarks to reduce the amount of code needed
- Recorded the times for intermediate steps in performance benchmarks
- Added convenience function to InterfaceManager to automatically set a
prototype element for combo boxes
- Added convenience function to InterfaceManager to automatically set a
default size for text fields
- Converted TransformEditor and ObjectiveEditor to use interface builder
- Replaced the direct use of interface controls with models in TOEditorBase,
TransformEditor, and ObjectiveEditor
- Moved the getType method from StucturedTypeChecker to TypeChecker
- Made UntypedType correctly validate and compare all primitive types
- Changed updating in views to properly refresh entire row when generator is
updated
- Split the configuration in ConfigEditor into readable and writeable
portions
- Changed createConfigDialog to createConfigEditor and made the return type
be a ConfigEditor
- Required ComparatorTab implementations to provide the tab name
- Changed TabInfo to keep a reference to the ComparatorTab it describes
- Made CompareFE record the last selected tab
- Cleaned up find methods in CompareConfig and added findValue with
default
- Added convenience methods to CompareConfig for working with list values and
changed Compare, CompareFE, TOEditorBase, TransformEditor, ObjectiveEditor,
ExperimentDataSeriesView, adn Compare2 to use them
- Added the ability to edit the configuration of a tab
- Fixed bug in BasicTableRenderer where multiple renderers using the same
color class would overwrite each other
- Added configuration editors to ExperimentDataSeriesView,
EditableDataSeriesView, ObjectiveSummaryView, ModelDataSeriesView,
TransformEditor, ObjectiveEditor, TransformDebugger, and Compare2
- Renamed constants for configuration property names from PROPERTY to
CONFIG
- Added a custom editor for colors to ConfigEditor
- Added support for spinners to InterfaceManager
- Added a custom editor for integers to ConfigEditor
- Created ConfigEditor interface to break dependency from compare to
compare.ui package and renamed old ConfigEditor class to
DefaultConfigEditor
- Added better detection of unreachable transforms to
DefaultTransformEvaluationContext which allows all unused transforms to be
collected now
- Changed reaper thread in DefaultTransformEvaluationContext to automatically
stop itself when no longer needed
- Removed some unnecessary synchronization from
DefaultTransformEvaluationContext
- Removed error when duplicate name is registered in a
TransformEvaluationContext (last transform to register a name is the one
identified by it)
- Made the cancel method of DataGeneratorEvaluator work harder to forcefully
cancel the evaluation
- Changed ProgressMonitor to allow external notification of its
cancellation
Changes Before Version 4.0.4
- Overhauled VTRunManager interface to be more consistent with its
consumers
- Rewrote WrappedMRun from scratch and renamed it to VTRunOAA
- Changed VTRunOAA to lazily launch OAA agent at first use, startup time
reduced by 100%
- Added a RunFileReader cache to VTRunOAA to avoid holding duplicate run and
model information, simulation memory use reduced by 40%
- Removed most member variables from VTRunOAA, instance memory use reduced by
90%
- Changed VTRunOAA to consistently initialize OAA agent before use
- Fixed VTRunOAA handling of simulator names
- Eliminated unnecessary string copying in Parameter and SimulatorParameter,
simulation memory use reduced by 10%
- Eliminated unnecessary string copying in BasalParameterSet and
BasalNumericSet, instance memory use reduced by 40%
- Updated RunRow to use VTRunOAA
- Added convenience constructor to RunFileReader for consumers that don't
want to mess with tree nodes
- Converted the model cache in RunFileReader from a Hashtable to a HashMap
with locking
- Eliminated the characters method in RunFileReader, load time reduced by
20%
- Changed RunFileReader to uncompress the model once in startElement instead
of on every access, simulation time reduced by 15%
- Refactored the way parameter, initial condition, and simulator setting sets
are computed to reduce duplicated code
- Changed algorithm used by parameter, initial condition, and simulator
setting tree walker from O(m*n^3) time and O(n^3) space to O(m*n*lg n) time and
O(n) space, simulation time reduced by 20%
- Optimized retrieval of pinned cache elements in CachedDataElement,
simulation time reduced by 10%
- Improved handling of partially entered comparison types and criteria
- Changed default comparison type from <= to Ignore
- Updated example frogegg files to fill in all missing comparison types
- Moved the Comparator icons to a resource directory
- Made an automatic generator for the about dialogs
- Converted the main Comparator about dialog to use the automatic
generator
- Delayed file chooser creation in RawFileDataSource
- Moved unknown comparison result highlight from acceptable column to
objective result column
- Made unacceptable comparisons highlight entire row
- Changed name of Model tab to Transform
- Made BasicTable a standalone class with BasicTableModel a static inner
class
- Made list dialogs and TransformDebugger use BasicTable
- Added convenience methods to FunctionalDataGenerator to make handling the
default function format easier for subclasses
- Removed unused methods from TransformContainer and container
implementations
- Fixed the way transform containers clear and flush
- Replaced customization attributes with transient attributes (they had
always been implemented using transient attributes)
- Made TransformStatement and FunctionalDataGenerator do more of the setup
work for evaluation
- Changed ExtremaTestTransform to error on bad values instead of
clearing
- Changed SelectColumnsTransform to error on bad values
- Expanded interface splitting support from objective functions to all
customizable data generators
- Split user interfaces for ExtremaTestTransform and SelectColumnsTransform
into separate classes in the new transformui package
- Converted nearly all instance variables in SelectColumnsTransform,
FileTransform, and ExtremaTestTransform to attributes
- Cleaned up the way transforms create their interfaces
- Overhauled the use and storage of column names in
SelectColumnsTransform
- Converted most instance variables in InputTransform,
NullTransformContainer, BoxTransformContainer, and TransformEvaluationTransform
to attributes
- Split user interfaces for FileTransform, ReadFromFileTransform,
WriteToFileTransform, and TransformEvaluationTransform into separate
classes
- Converted more instance variables in TransformStatement to attributes
- Eliminated several places where transforms needed to block interface
updates due to a lack of checking before setting attributes
- Cleaned up the way TransformEvaluationTransform maintained the list of
known transforms
- Converted most instance variables in JCRMIT to attribute and split user
interface into a separate class
- Fixed bug in VTRunOAA setting a new run file
- Added convenience method to InterfaceManager for getting the name of a
component without casting to JComponent and converted all callers to use
it
- Changed setAttribute to only update if the attribute value is different
from the old value
- Changed setAttribute to return whether the attribute was updated
- Removed all code around callers of setAttribute checking whether the
attribute was different and removed all code in interfaces designed dto prevent
loops when setting an attribute to its current value
- Rewrote ArrayListComboBoxModel to implement all model functionality
directly instead of using DefaultComboBoxModel and renamed it to
ListComboBoxModel
- Eliminated all unnecessary property updates in ListComboBoxModel and
removed all code in interfaces designed to prevent loops when when replacing
the contents of a combo box
- Made combo box model variables have consistent names by changing all names
like XBoxModel to XModel
Changes Before Version 4.0.3
- Put in another attempt to persist file data sources
- Fixed notification about configuration changes in BasicPanelTab
- Simplified finding the menu item with a specified action command in
MenuManager
- Added convenience methods to MenuManager for finding the parent menu of a
specified action command
- Added option to MenuManager findMenuItem and findParentMenu controlling
whether to search for action commands in menus as well as menu items
- Exposed a recent sources shortcut menu below the open command in views
- Added utility method to Compare for finding calling sites of a function
during runtime
- Added a new method to ComparatorTab for controlling when a view reads from
the configuration
- Converted existing views initialization to be as repeateable as possible
and use prompting for when to read from the configuration
- Changed CompareConsole to use MinimalPanelTab for view services
- Made BasicPanelTab default to creating a MenuManager that supports indexing
and removed the createMenuManager method
- Changed clipboardCut in EditableDataSeriesView to check for errors writing
the selection to the clipboard before removing generators from the view
- Fixed incorrect error message in EditableDataSeriesView clipboardCut
- Collapsed all existing view transferers to a single transferer class in
SimpleDataSeriesView
- Moved clipboard and printing support from EditableDataSeriesView to
SimpleDataSeriesView
- Enabled drag support from SimpleDataSeriesView
- Combined selection support in EditableDataSeriesView and Compare2 to
BasicTableView
- Fixed all broken javadoc tags
- Fixed output description for transforms in TransformDebugger
- Fixed getting the input and output description of data generators using the
context menu
- Fixed all known HTML errors in the documentation
- Changed callers of InterfaceManager.createFileChooser to pass a shared
suffix file filter instead of creating a new filter
- Made SelectColumnsTransform more tolerant of invalid columns
- Reduced the number of classes that permanently hold an
ExceptionRecorder
- Removed VTRunManagerClient support from JCRMIT
- Created a StreamingStringTokenizer that can tokenize without building an
intermediate string
- Added tests for StreamingStringTokenizer
- Converted data element creation to use the StreamingStringTokenizer
- Fixed getting columns by name in SelectColumnsTransform
- Improved progress dialog to support both determinate and indeterminate
modes
- Changed DataGeneratorEvaluator to use Comparator progress dialog instead of
Swing dialog
- Added a performance tester for measuring experiment creation and loading
performance in the Comparator
- Added a performance tester for measuring element creation performance in
the Comparator
- Created convenience functions in InterfaceManager for showing common
dialogs
- Converted all users of JOptionPane to convenience functions in
InterfaceManager
- Refactored some shared code in searching implementations into
BasicTableView
- Fixed some edge cases in searching
- Made searching scroll to the line in addition to selecting it
- Fixed update of progress dialog in DataGeneratorEvaluator
- Added an editor for working with configuration data
- Made an interface for tabs to provide about and configure information
- Converted CompareFE to use tab interface for providing about and configure
information
- Updated references in documentation
- Added a performance tester for measuring transform creation and loading
performance in the Comparator
- Eliminated some duplicated code between the performance testers
Changes Before Version 4.0.2
- Updated plans and documentation
- Changed the Print command in the tabs to use PDFPrinterDataSource instead
of SystemPrinterDataSource
- Created exception handler class to handle asynchronous exceptions
- Replaced current ExceptionListener implementations with exception handler
class
- Remove jigcell.compare.cellcycle.data package
- Created new interface for marking persistable data sources
- Added convenience method to NullDataSource for saving data sources
- Added methods to BasicPanelTab to record recently used data sources in
views
- Added the session marker to instance markers generated by hash code
values
- Added convenience method for getting the configuration of a view
- Fixed potential concurrency problem with DataManager
- Prevented sources from potentially appearing in the prototype list
twice
- Added a map for finding the first defined source of a particular type
- Fixed cloning of data sources
- Converted views to use sources from DataManager instead of directly picking
a type
- Fixed some inconsistencies in remembering the active writeable source
- Fixed private NullEditableDataElement parser use of
PackedTreeDataElement
- Created common superclass for packed and sparse tree elements
- Added a map with primitive keys based on fastutil to the build
- Removed the comparecontrib archive from the build completely
- Made building JavaDoc documentation a separate Makefile target
- Moved most factory element creation methods to NullEditableDataElement
- Moved convenience constructors from SparseTreeDataElement to factory
methods in NullEditableDataElement
- Updated code using SparseTreeDataElement convenience constructors to use
factory methods
- Created packed and sparse tree elements based on maps with primitive
keys
- Created a testing program for benchmarking editable element creation
- Cleaned up the code and comments in all of the editable data element
implementations
- Moved even more of the element implementation to NullEditableDataElement
and TreeDataElement
- Optimized the Long2ObjectAVLTreeMap created by fastutil
- More general documentation cleanup for data elements
- Cleaned up ElementPerformanceTester a little and reused the validation
routines as JUnit tests in the Comparator
- Cleaned up the NullDataElement and NullEditableDataElement
documentation
- Made ObjectiveSummaryView use a ResultSetMap instead of a LinkedHashMap
when saving comparison results
- Fixed bug in NullDataSource.clone that corrupted the option table of cloned
sources
- Converted synchronization of DataManager to use the concurrent package to
avoid unnecessary contention
- Converted synchronization of NullDataSource to use the concurrent package
to avoid unnecessary contention
- Cleaned up synchronization and instance options in ClipboardDataSource
- Separated out the transfer class callback in ClipboardDataSource and
PrinterDataSource into a new base class
- Cleaned up synchronization and simplified SystempPrinterDataSource and
PDFPrinterDataSource
- Added a limited capability for RawFileDataSource to work through the
standard read and write methods
- Cleaned up synchronization in FileDataSource, RawFileDataSource, and
XMLFileDataSource
- Converted error checking for many option settings in sources from unchecked
exceptions to assertions
- Fixed the way users of ExceptionRecorder were accidentally disabling
exception checking
- Improved handling of clone in data sources
- Made a pass to clean up documentation of data sources
- Added the ability for sources to indicate whether their options should be
persisted or copied by informing NullDataSource
- Made existing data sources report whether their options should be persisted
or copied to NullDataSource
- Made NullDataSource.clone considerably smarter about copying options
- Implemented a default getState and toString for NullDataSource
- Fixed some missing synchronization in FileDataSource
Changes Before Version 4.0.1
- Created a data source for writing to PDF files
- Cleaned up configuration options of PrinterDataSource
- Added configure method to printer data sources
- Refactored PrinterDataSource into a generic printer service and a system
printer service
- Added configuration options to PDFPrinterDataSource
- Refactored ListEditorDialog into separate viewer and editor components
- Modified control creation in list dialogs to match ui creation in
views
- Added support for displaying and editing list data to all regular
views
- Fixed some general bugs with list display
- Added popup chooser for selecting objective comparison type
- Changed element and dimension weight parameters to be non-editable
- Updated weight parameter users to take non-editable weights
- Rewrote weight editor dialogs to be simpler and track list editor dialog
changes
- Made weight editors more robust to bad input
- Added more checks to prevent disallowed editing in views
- Created side-by-side viewer for experimental and transform list data
- Cleaned up list of blue sky tasks
- Added transferer to ObjectiveSummaryView
- Exposed file path option in FileDataSource
- Converted ReadFromFileTransform and WriteToFileTransform to use
FileDataSource
- Merged shared code in file read and write transforms
- Fixed copying of JCRMIT
- Added persistance delegate to CompareConfig to allow for correct
saving
- Added listener to Compare to save configuration when updated
- Moved security manager from CompareFE to Compare
- Updated compare.config to use a more concise program
- Made list viewers try harder to display subcontent as lists
- Fixed error when examining into a side-by-side element and transform list
when the transform list is empty
- Refactored the most common data transfer code to SimpleTransferer
- Added a convenience method to Compare for acquiring a Sync
- Removed some unused code from Compare^2
- Changed InterfaceManager to only allocate one GridBagConstraints per
interface instead of per block
- Converted weight editors to use InterfaceManager
- Added background coloring for table cells in list dialogs
- Added documentation for using data generators
- Updated documentation for using data sources
- Added documentation for using data elements
- Added source and design models for Comparator and JigCell to
documentation
- Updated the list of available resources about the Comparator
- Refactored FileDataSource into generic and XML portions
- Added a raw file data source
- Made the PDF writer use the raw file data source
- Fixed saveDirect using wrong source in BasicPanelTab
- Updated files in Biopack distribution
- Added additional callback mechanisms to DataGeneratorEvaluator to
substitute a new generator during preupdate or evaluate
- Converted MEOSummaryView, ModelDataSeriesView, and ObjectiveSummaryView to
evaluate using generator substitution callbacks instead of preprocessing
- Added an additional solvable to OAAConnector that takes partial file
fragments to work around OAA's maximum atom limits
Changes Before Version 4.0.0
- Forced splash screen to exceed a minimum size
- Added optional index of menu commands to MenuManager
- Added ability to disable or enabled menu items by command through
MenuManager
- Changed TransformDebugger to use MenuManager command interface
- Changed TOEditorBase to use MenuManager command interface
- Changed EditableDataSeriesView to use MenuManager command interface
- Changed Compare^2 to use MenuManager command interface
- Added boolean specific lookups to CompareConfig
- Eliminated catching of Throwable in cellcycle package
- Eliminated catching of Throwable in compare package
- Eliminated catching of Throwable in compare2 package
- Made shellHandleException public in Compare and CompareFE
- Added message version of shellHandleException to Compare and CompareFE
- Converted uses of error dialogs to shellHandleException in cellcycle
package
- Converted uses of error dialogs to shellHandleException in compare
package
- Converted uses of error dialogs to shellHandleException in compare2
package
- Fixed incorrect storage of threshold source in Compare^2
- Removed incorrect configure calls in direct storage methods of
Compare^2
- Changed configurable calls in Compare^2 to use direct storage methods
- Eliminated some duplication in the file handler of Compare^2
- Removed incorrect loops in file handlers from Compare2 and
ModelDataSeriesView
- Changed configurable calls in BasicPanelTab, ObjectiveSummaryView, and
TOEditorBase to use direct storage methods
- Removed error dialogs from ReadFromFileTransform and
WriteToFileTransform
- Converted uses of error dialogs to shellHandleException in ui package
- Added message reporting interface to Compare and CompareFE
- Fixed various bugs in error reporting of views
- Converted remaining uses of JOptionPane to message reporting interface
- Eliminated catching of Throwable in impl package
- Eliminated catching of Throwable in ui package
- Added integer specific lookups to CompareConfig
- Eliminated unnecessary position parameter to add function of
TOEditorBase
- Added hooks to duplicate the current object in TOEditorBase
- Added duplicate command to TransformEditor and ObjectiveEditor
- Integrated latest code for Model Builder and Run Manager
- Added biopack and Report Generator code to the build
- Reduced the number of jar files created for the project
- Moved CompareFE from the compare to the ui package
- Moved IconLoader from the impl to the ui package
- Moved TransformEvaluationTransform from the transform to the cellcycle
package
- Moved GeneratorEvaluationDebugger from the impl to the compare package
- Moved NullDataGeneratorAnnotation from the annotation to the impl
package
- Moved ElementWeightEditorDialog and DimensionWeightEditorDialog from ui to
functionui package
- Renamed ComponentDescription to HTMLComponentDescription
- Created interface for ComponentDescription
- Added PlainComponentDescription for a lightweight description
implementation
- Renamed EditableDataSeriesView.PROPERTY_GENERATORS_EDIT to
DataGenerator.PROPERTY_GENERATOR_EDIT
- Renamed TransformEditor.PROPERTY_TRANSFORMS_EDIT to
Transform.PROPERTY_TRANSFORM_EDIT
- Renamed ObjectiveEditor.PROPERTY_OBJECTIVES_EDIT to
Functional.PROPERTY_FUNCTIONAL_EDIT
- Created separate views package for CompareConsole, EditableDataSeriesView,
ObjectiveEditor, ObjectiveSummaryView, TOEditorBase, TransformDebugger, and
TransformEditor
- Moved Compare from compare to impl package
- Moved VALUE_NOVALUE, RESOURCE_EXPERIMENTCOMPARISONS, and
RESOURCE_EXPERIMENTTHRESHOLDS from Compare2 to Compare2Model
- Added convenience methods for configuration setters
- Added explicit remove methods to CompareConfig instead of making people
call setters with a null value
- Updated documentation for using data in the Comparator
- Fixed broken parameter names in documentation
- Revised documentation for adding transforms and objective functions
- Added a new type checking interface for structured types
- Moved ATTRIBUTE_TYPE from ExperimentDataSeriesView to TypeChecker
- Added new attribute ATTRIBUTE_TYPECHECKER to TypeChecker
- Added support to ExperimentDataSeriesView for setting the type checker
- Modified ListEditorDialog to maintain a type checker for the data
- Made some minor cleanup changes to ListEditorDialog
- Converted type checkers to use singleton objects
- Made type checker constructors protected
- Added templates for type checkers and structured type checkers
- Added documentation for creating a type checker
- Added support for setting the prototype element in
ExperimentDataSeriesView
- Updated the building and installation instructions
- Updated the main Comparator page